ARMbasic is a 32-bit BASIC compiler for ARM processors. It was started to create a portable, alternative to hardware debuggers, but has quickly grown into a powerful programmable controller tool, already including support for asynchronous serial, I2C, SPI, PWM, timer and counter operations.  It is run on ARM CPUs from NXP ranging from the 50 MHz  32KB BASICchip to the 100 MHz 256KB SuperPRO.

    ARMbasic is simple to use, with a USB connection to the PC for programming. The target applications include control functions, so performance and a powerful set of hardware routines have been included.  The language has a minimum of overhead when compared to larger general purpose languages.

    Aside from having a syntax the most compatible possible with MS-VisualBASIC, ARMbasic introduces several new features such as hardware specific routines, string support, limited pointers and many others.

    ARMbasic is written in ANSI-C compiled with GCC.