Free C/C++ Compilers & Cross-Compilers for MicroControllers
Compilers for Microcontrollers, PDA, HP Calculators, PIC, etc
Free C/C++ Compilers and Cross-Compilers for Microcontrollers, PDA, Calculators, Embedded Systems and Other Devices
This page lists free C and C++ compilers, interpreters and cross-compilers for microcontrollers, embedded systems, PDA (handheld systems), specialized calculators (like the HP calculators), and other such devices.
If you are looking for free C/C++ compilers for a computer like a PC, a Mac or some such desktop or server computers, please see the Free C/C++ Compilers and Interpreters for Computers page instead.
Free C/C++ Compilers for Handheld Devices, Micro-controllers, Embedded Systems and Calculators
WinAVR is a set of development tools for the Atmel AVR series of RISC microprocessors. It includes avr-gcc (the GNU gcc compiler for the AVR), avr-gdb (the GNU debugger), simulator, IDE, a tool to download/upload the ROM and EEPROM contents of AVR microcontrollers, a tool for editing EPROM load files, etc. The host platform for the tools is Windows.
Micro controller IDE is a free C cross-compiler and IDE that works with AVR micro-controllers from ATMEL. The IDE makes it easy for you to write, compile, build and load your code to the microcontroller. The compiler has support for writing floating point data types, using the FPU, inline assembler, a built-in AVR chip programmer compatible with STK 200/300, inline code access to FPU opcodes, long integer support, the ability for user-defined functions to be stored in Flash memory, nth order polynomials, etc.
- OnBoard Suite
The OnBoard Suite creates executables (or, if you wish, a Hackmaster hack) for the Palm PDA. It includes a C compiler, assembler, programmer's editor and a Palm-to-host porting tool. The Suite runs directly on PalmOS, on the Palm handheld.
HP-GCC comprises the GNU C compiler targeted at the ARM processor of ARM-based HP calculators (like the HP49g+), HP specific libraries, a tool (ELF2HP) that converts the gcc produced binary to the appropriate format for the HP calculator, and an emulator (ARM Toolbox/ARM Launcher) that lets you execute ARM programs on your computer. At present, Windows and Linux versions are available.
- z88dk - The z88 Development Kit
z88dk is a z80 C cross compiler based on the Small C compiler, supporting many features of ANSI C. It comes with an assembler and linker as well as a standard C library. Supported host systems include Amiga, BeOS, HP-UX 9, Linux, BSD systems, MacOS X, Solaris, Win32, Win16 and MSDOS. The compiler generates code for the following target systems: Cambridge Computers z88, Sinclair ZX Spectrum, Sinclair ZX81, CP/M based machines, Amstrad NC100, VZ200/300, Sharp MZ series, TI calculators (TI82, TI83, TI83+, TI85, TI86), ABC80, Jupiter Ace, Xircom REX 6000, Sam Coupe, MSX1,Spectravideo, Mattel Aquarius, Peters Sprinter, and C128 (in z80 mode).
- Reads51 Small C Cross-Compiler
Version 2.0 of Reads51 comes with an assembler that runs under Windows 3.1 to generate 8051 code. It comes with an IDE, editor, debugger, and monitor. Version 4.10 includes a Small C compatible 8051 compiler, a relative assembler, a linking locator (loader), an editor, a chip simulator, an assembly language debugger and a monitor. This version runs under Windows 95, 98 and NT. With these tools, you can write, compile, assemble, debug, download and run application software (including embedded control software) in the MCS-51 language. It comes with an online help system. If you do not buy their board, you may only use the software for non-commercial home and educational purposes.
- ANYC C Compiler
AnyC is a retargetable C compiler released under the GNU GPL. It is intended for use with 8 bit microprocessors, particularly 8 bit RISC microcontrollers. The original target is the Microchip PIC 16C5X family of 8 bit RISC microcontrollers.
- CC65 C Cross-Compiler
A cross-compiler for the 6502 that is a derivative of the Small C compiler. It runs on Win32, DOS, Linux and OS/2. It generates binaries for the Commodore C64, C128, C16, C116, Plus/4, and the 600/700 family of compilers. You can also use an emulator (linked from their web page) to emulate many different CBM machines from Linux.
Can't Find What You're Looking For?
Search the site using Google.
How to Link to This Page
It will appear on your page as: