Packages For Embedded Development

= Packages for Embedded Development =

Fedora is used for all Embedded Development activities/workflows (cross-tools, alternate libc, RT, romfs, root flash, small footprint targets, etc.) that target the full spectrum of system platform-OS-application combinations:
 * Can target systems able to run Linux (including rpm-managed systems),
 * Can target systems that run other kernels, microkernels, RT kernels, hypervisors, or
 * Can target systems that run only non-kernel core code.

Embedded targets that run (at least some portion of) Fedora include x86, x86_64, Blackfin, ARM and others.

Fedora includes support for developing non-Linux embedded applications targeted at the Microchip PIC, a common embedded microcontroller, and the Atmel AVR. There is also limited support for other parts.

Microchip PIC
Fedora includes gputils, a complete suite of assembly language tools for Microchip's 12, 14 and 16 bit cores (PIC10, PIC12, PIC16 and PIC18). In addition, the gpsim package provides for simulation on these PICs. piklab provides an IDE supporting this toolchain, as well as supporting most of the popular proprietary PIC toolchains, including the C30 toolchain for the 16-bit dsPIC30 and 33 and PIC24H and 24F series. piklab also provides support for a wide range of programmers and debugging support for Microchip's ICD2 in-circuit debugger. pikdev provides a similar capability and is preferred by some. ktechlab provides an IDE for MicroBASIC, as well as the ability to simulate not only the PIC but also the circuit. pikloops relieves the drudgery of calculating delay loops.

Resources

 * gputils - http://gputils.sourceforge.net/


 * gpsim - http://www.dattalo.com/gnupic/gpsim.html


 * piklab - http://piklab.sourceforge.net/


 * pikdev - http://pikdev.free.fr/


 * ktechlab - http://sourceforge.net/projects/ktechlab/


 * pikloops - http://pikloops.sourceforge.net/


 * sdcc - http://sdcc.sourceforge.net/

Atmel AVR
Many developers prefer Atmel's AVR series because those parts enjoy the support of the complete suite of gcc based tools, including avr-gcc, avr-gcc-c++, avr-libc, avr-binutils, and avr-gdb. In addition, the avarice package provides an interface to Atmel's in-circuit emulator and the parts may be programmed using dfu-programmer, uisp or avrdude.

Resources

 * avr-gcc, avr-gcc-c++ - http://gcc.gnu.org/


 * avr-binutils - http://www.gnu.org/software/binutils/


 * avr-gdb - http://sources.redhat.com/gdb/


 * avr-libc - http://www.nongnu.org/avr-libc/


 * avarice - http://sourceforge.net/projects/avarice


 * avrdude - http://www.nongnu.org/avrdude/


 * dfu-programmer - http://dfu-programmer.sourceforge.net/


 * uisp - http://www.nongnu.org/uisp/

Intel 8051
The venerable 8051 is supported by dfu-programmer and uisp for programming, as well as the Small Device C Compiler (sdcc).

Resources

 * dfu-programmer - http://dfu-programmer.sourceforge.net/


 * uisp - http://www.nongnu.org/uisp/


 * sdcc - http://sdcc.sourceforge.net/

Zilog Z80
Fedora includes sjasm, a Z80 assembler, as well as the z88dk cross compiler. simcoupe is a simulator for the SAM Coupe, a Z80 based home computer from the 80's.

Resources

 * sjasm - http://www.xl2s.tk/


 * z88dk - http://www.z88dk.org/forum/


 * simcoupe - http://www.simcoupe.org/

Small Device C Compiler
The Small Device C Compiler (sdcc) is a multi target compiler under rapid development. It offers support for the PIC16 and PIC18 parts from Microchip, as well as the Intel 8051, Maxim 80DS390, Zilog Z80 and the Motorola 68HC08. There is also limited support for a number of other processors.

Detailed information about sdcc can be found at http://sdcc.sourceforge.net.

Macro Assembler AS
AS is a portable macro cross assembler for a variety of microprocessors and -controllers. Though it is mainly targeted at embedded processors and single-board computers, you also find CPU families in the target list that are used in workstations and PCs.

AS is provided by the asl package.

Detailed info about AS can be found at http://john.ccac.rwth-aachen.de:8000/as/