## Armaide

ARM Oberon-07 Development System for Windows

Version 1.0
Copyright © 2006-2008 CFB Software
Last Updated 2 Jan 2009

E-Mail: |  | info@cfbsoftware.com
Website: |  | www.armaide.com

## Contents

1. Introduction
2. System Requirements
3. Installation
4. List of Files
5. Oberon-07 Examples
6. Technical Support
7. Licence Agreement
8. Ordering Information
9. Acknowledgements

## 1. Introduction

Armaide is a fast and responsive integrated development environment for Windows. It is designed to be used to write software to run on the powerful NXP / Philips LPC2000 family of ARM-based microcontrollers. The programming language supported by Armaide is Oberon-07.

### The Oberon-07 Language

Oberon is a general-purpose, procedural programming language. Its type-safety and module consistency-checking features facilitate the development of secure and reliable software. Oberon is a refinement of Modula-2 which, in turn, was an improved version of Pascal. Programmers with experience of either of these languages should adapt to Oberon with minimal effort. In additional to the regular range of programming language facilities Oberon-07 features include:

- Type-extension capabilities
- Assertions
- Automatic array index checking
- Type-checking across modules
- Read-only access to external variables
- Optional read-only access to parameters
- Nested procedures
- Nested comments

The implementation of Oberon-07 which targets the ARM-based microcontrollers includes additional features particularly designed for efficient code-generation, low-level programming and access to all capabilities of the devices:

- Generation of regular ARM native code
- Direct access to memory-mapped peripheral devices
- Interrupt procedures
- Direct access to the program counter, frame pointer, link register and other special ARM registers
- Leaf procedures store parameters and local variables in registers when execution speed is a priority

The library modules and linker included with Armaide support the LPC210x, LPC214x and LPC2214 family of microcontrollers from NXP (Philips).

### Armaide Features

Armaide has the following features:

##### Editing

- Standard Windows, programmer-oriented, text-editing features
- Fast and responsive interactive operation
- Tabbed multi-document interface for editing multiple source files
- Split-screen editing
- Regular expression support in Find / Replace
- Bookmarks
- Line modification indicators
- Optional line numbers, printing features etc. etc.

##### Language Syntax-oriented Editing

- Automatic syntax colouring of Oberon language elements as you type
- Auto-indexing of procedures and imports of each source file for code navigation
- Auto-capitalisation of Oberon keywords when typing source code

##### Development

- Control Editing, Compiling, and Linking generation cycle from the menu
- Capture compilation errors in a separate window
- Click on an error line to take you to the actual line in the source
- Automatic linking without the need for complicated make files, command line parameters etc. etc.
- Generates standard HEX files ready to upload to the target ARM microcrontroller

Back to Contents

## 2. System Requirements

- MS Windows XP or Vista
- Microsoft .NET Framework version 2.0 (or later)
- Adobe Acrobat Reader

If you do not already have the .NET Framework installed it can be downloaded from Microsoft's website:

http://msdn2.microsoft.com/en-us/netframework/aa731542.aspx

Back to Contents

## 3. Installation

Armaide is distributed as a self-installing file whose name depends on which edition you have

- ArmaideEvalSetup.exe (Evaluation Edition)
- ArmaideStdSetup.exe (Standard Edition)
- ArmaideProfSetup.exe (Professional Edition)

Install Armaide as follows:

1. Login using an Administrator Account on your system.
2. Make sure that the prerequisite software (see System Requirements above) is installed on your system.
3. Press the Windows Start button and select Run from the Start Menu.
4. Type the full name of the file (for example, C:\temp\ArmaideEvalSetup.exe)
5. Press the Enter key, and follow the prompts.
6. When the installation program has completed, run Armaide by selecting it from the Windows Start menu.

Back to Contents

## 4. List of Files

After running the Armaide setup installation setup program the following files are created in the folder that you specified:

Armaide.exe |  | Main program
Armaide.chm |  | Help file
ReadMe.htm |  | This file
Oberon07.Report.pdf |  | Oberon-07 Language Report
Oberon.LPC2000.pdf |  | Oberon for LPC2000 Microcontrollers
UnistallArmaide.exe |  | Uninstall program
UnistallArmaide.log |  | Uninstall support file

Subfolders called Armaide/Examples and Armaide/Lib are created in your Windows Documents folder. These contain

- example Oberon-07 source files
- Armaide library interface definition files (*.def) and symbol files (*.smb) used by the compiler
- Armaide library object files (*.arm) used by the linker.

##### Professional Edition only:

A subfolder called Armaide/Startup is also created in your Windows Documents folder. This contains

- Sample substitute Armaide startup assembler source for initialising the LPC2000 interrupt handlers and stack pointers.
- Oberon-07 source code of module LPC.mod which includes the Phase-Locked Loop (PLL), VPB divider, Memory Mapping Control, and Memory Accelerator Module(MAM) initialisation code.

Back to Contents

## 5. Oberon-07 Examples

The source code of a number of simple example programs is installed in your Documents\Armaide\Examples folder when you install Armaide. Programs which generate text output send it to UART0 which should be connected to a dumb terminal or terminal emulator running at 38,400 Baud.

Filename | Description
Blinker.mod | Blinker A pair of blinking leds moving in opposite directions
Info.mod | System Info Outputs the linker and startup parameters specified for the current application and shows the amount of RAM remaining for use by the program. The evaluation edition of Armaide limits the total accessible RAM to 4kb of data.
ViewMemory.mod | ViewMemory Outputs the contents of 64 words of memory starting from address 04000 0000H. Each line of output contains the address and the contents of the next 4-word block of data displayed in Hexadecimal format.
Extensions.mod Lists.mod | Extensions Shows how Oberon-07's Type Extension feature can be used to create and scan a dynamic list of a variety of objects. Lists contains the generic functions to build and traverse a list of objects. Extensions contains definitions for a number of related objects. The examples used are shapes e.g. circles, rectangles etc. The application first builds a list of different shapes and then scans the list displaying the relevant dimensions and area of each shape.

Back to Contents

## 6. Technical Support

If you have questions related to the use of the Oberon-07 language, or programming NXP LP2000-family devices ask your questions in the Yahoo Armaide Tech Group

If you encounter a reproducible problem which is directly related to Armaide send an email with a description of the problem, and the circumstances when it happens, to:

support@cfbsoftware.com

If the problem is related to compilation or linking then you are required to attach a copy of the source code of the shortest program which demonstrates the error and a copy of any relevant diagnostic and error messages.

If you need ongoing priority support send an email to the above address enquiring about the availability and pricing of a commercial support contract.

Back to Contents

## 7. Licence Agreement

You should carefully read the following terms and conditions before using this software. Your use of this software indicates your acceptance of this licence agreement and disclaimer.

- Evaluation Edition

> There are no restrictions to the number of computers on which the evaluation edition of Armaide may be installed, or the number of people that can use it at any one time.

- Standard and Professional Editions

> A Standard or Professional Edition of Armaide may be installed on one or more computers but may only be used by the single person in whose name it is registered.

DISCLAIMER

Armaide is used entirely at the risk of the user. Although great care has been taken to eliminate defects during the development of Armaide, it is not claimed to be fault-free. No claims are made regarding its correctness, reliability or fitness for any particular purpose. The Author shall not be liable for errors contained herein or for incidental or consequential damages, loss of data or personal injury in connection with furnishing, performance, or use of this material.

Back to Contents

## 8. Ordering Information

8.1 Free Evaluation Edition - No expiry date

The evaluation edition of Armaide is available free of charge and may be used for an unlimited time. It has all of the features of a full version except that applications are limited in size to 16kb of code and 4kb of data.
You are free to distribute the evaluation edition. It may be given away to anyone, included on CD-ROM libraries, uploaded to WWW pages, ftp sites and bulletin boards, etc. as long as it is distributed in its complete original form.

8.2 Standard and Professional Editions

On-line credit card orders for the Standard and Professional Editions are automatically processed in realtime. If the transaction is successful you will receive an email within 24 hours with details of how to download and install the full version of the software.

For details of prices, alternative payment options and to place an order click on Order Armaide on-line or go to the Armaide website at:

> www.armaide.com

and then select Order from the menu. Follow the instructions there.

Note: DO NOT distribute the Standard or Professional Edition of Armaide without the expressed written consent of the author.
8.3 Refund Policy

CFB Software's products are provided as evaluation editions that can be downloaded via the CFB Software website. Use the evaluation edition to ensure that it is compatible with your computer systems and satisfy all of your requirements before purchasing a Standard or Professional edition. All sales are final. Once the access details for a Standard or Professional edition has been issued they cannot be cancelled. Thus we are only able to provide refunds for accidental duplicate orders.
Back to Contents

## 9. Acknowledgements

I would like to thank Niklaus Wirth for providing the original Oberon source code of the compiler, linker, MAU and FPU libraries that formed the basis of the corresponding components of Armaide; for his permission to include the Oberon-07 Language Report in this distribution of Armaide and for his valuable support and encouragement during its development.

Chris Burrows
CFB Software
Adelaide, South Australia, Jan 2009

Back to Contents