Feature Matrix
Dev Boards
Mailing List
About Us

Astrobe for LPC2000 Feature Matrix

This table summarises the features of the Professional Edition of Astrobe for LPC2000.

Further details of the features can be found in the documented titled Oberon for LPC2000 Microcontrollers.

Multi-file Editing
  • Standard Windows, programmer-oriented, text-editing features
  • Fast and responsive interactive operation
  • Tabbed multi-document interface for editing multiple source files (modules)
  • Split-screen editing
  • Regular expression support in Find / Replace
  • Bookmarks
  • Line modification indicators
  • Optional line numbers, printing features etc. etc.
  • The module in the current window is the target of the compiler / linker /builder
Oberon Language-oriented Editing
  • Automatic syntax colouring of language elements as you type 
  • Auto-capitalisation of keywords as you type 
Code Navigation
  • Alphabetical auto-indexed  list of procedures. Click on the name to go to find the procedure in the source code.
  • Auto-indexed list of imported modules. Click on the module name to open the file. 
Language Features
  • Conforms to the 2014 Standard Oberon Language, including 32-bit IEEE REAL data type and operations
  • Leaf procedures use registers for parameters and local variables for optimum performance
  • Interrupt procedures
  • Local dynamic array language extensions for safe memory allocation / deallocation
  • Low-level SYSTEM functions GET, PUT, ADR and BIT for accessing the MCU control, status and peripheral registers 
Fast Native-code Compilation
  • Fast single-pass modular compilation
  • One-click to compile the module in the current window
  • Only the current module needs to be compiled if the interfaces of imported modules are unchanged
  • Pre-compiled symbol files are used for fast access to imported modules  
  • Compilation continues to the end to find as many errors as possible
  • Compilation errors are displayed in a separate window
  • Click on an error line to take you to the actual line in the source
Linking / Building
  • Automated Build feature identifies and recompiles all outdated modules before linking
  • The names and locations of imported modules are already known at link time. There is no need to maintain separate 'make' files
  • Interfaces of imported modules are validated at link time to ensure consistency and eliminate obscure runtime errors 
  • The only user data required is the crystal frequency and type of LPC2xxx target
Debugging and Error trapping
  • Language support for validation of procedure parameters, pre- and post-conditions using assertions
  • Automatic array index bounds checking
  • Runtime library Out can be used to send trace output to a PC terminal emulator via UART0
  • Trapped runtime errors and failed assertions are identified by module name and source line number
Uploading and Running
  • Compact and fast 32-bit native-code applications are created
  • Integrated flash memory programmer using the bootloader of the target device via a COM / USB serial port
  • No special hardware programming tool is required  
  • Integrated terminal emulation facility to communicate with a running program on the target device 
  • Standard hex-format files are also created if you prefer to program the target device using FlashMagic
Runtime and General Library Modules
  • Initialisation code required by an LPC2000-family application
  • Definitions of register addresses common to all LPC2100 / LPC2200-family processors. Allows explicit software control of GPIO, UART0, Timer, MAM, PLL, VIC, I2C0, SPI0, RTC, Watchdog timer etc. features.
  • Formatted ASCII text output of chars, strings, integers and reals
  • Serial input and output communication via UART0
  • Timer0 Microsecond and millisecond time measurement and delays
  • Conversion of integer and real numbers to and from strings
  • Memory allocation / deallocation for pointer variables
  • Access to linker options 
  • Support for 32-bit IEEE floating point add, subtract, multiply and divide 
Additional Library Modules
  • LPC2103 / LPC2106 / LPC2129 / LPC2138 / LPC2148 / LPC2214 / LPC2378 - Definitions of register addresses for these families of processors. Allows explicit software control of UART1, SPI1, SSP, I2C1, PWM, ADC, DAC, USB, CAN etc. features
  • ADC - Analog to Digital conversion functions
  • Clock - access the time components of the Real Time Clock
  • Graphics - device-independent drawing of lines, circles and ellipses
  • I2C - IC bus master read / write functions   
  • In-Application Programming (IAP) - On-chip Flash read and write
  • Math - Mathematical and trigonometrical functions
  • Random - Random number generation
  • ResData - Resource data handling (constant data, images, fonts etc.)
  • SPI - Serial Peripheral Interface bus master read / write functions
  • Strings - General text string processing
Source Code Examples
Low-level SYSTEM Language Extensions
  • Direct access to the special registers Program Counter (PC), Link Register (LNK), Stack Pointer (SP) and Frame pointer (FP)
  • Byte-level addressing of all built-in and user-defined data types and structures
  • Type casting
Max Program Size (LPC2000 Target-dependent)
  • Maximum total code size that can be uploaded to Flash memory is 512 KB
Source Code of Library Modules
  • Complete source code of all runtime and additional library modules (except the compiler-dependent MAU and FPU)
Customisable Startup Code
  • Complete source code of the startup modules
Commercial Applications
  • Develop and deploy commercial applications with no additional runtime fees 
  • Display the ARM assembler instructions generated for a module
Command-line Compiler and Linker
  • Compile and link applications using batch files, 3rd-party IDEs and build tools

Copyright 2018 CFB Software. All rights reserved. Privacy Policy
ABN 20 939 391 060