Small Device C Compiler
Encyclopedia
The Small Device C Compiler (SDCC) is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

, partially retargetable
Retargetable compiler
In software engineering, retargeting is an attribute of software development tools that have been specifically designed to generate code for more than one computing platform.-Compilers:...

 C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

 for microcontroller
Microcontroller
A microcontroller is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM...

s. It is distributed under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

. The package also contains a linker, assembler
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...

, simulator and debugger
Debugger
A debugger or debugging tool is a computer program that is used to test and debug other programs . The code to be examined might alternatively be running on an instruction set simulator , a technique that allows great power in its ability to halt when specific conditions are encountered but which...

. As of March 2007, SDCC is the only open source C compiler for Intel 8051
Intel 8051
The Intel MCS-51 is a Harvard architecture, single chip microcontroller series which was developed by Intel in 1980 for use in embedded systems. Intel's original versions were popular in the 1980s and early 1990s. While Intel no longer manufactures the MCS-51, binary compatible derivatives remain...

-compatible microcontrollers.
In 2011 the compiler is downloaded on average more than 200 times per day.

The SDCC compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

 was used by the FreeRTOS
FreeRTOS
FreeRTOS is a real-time operating system for embedded devices, being ported to several microcontrollers. It is distributed under the GPL with an optional exception...

 project to port its real-time operating system to the 8051-based Silabs
Silicon Laboratories
Silicon Laboratories, Inc. is a mixed signal fabless semiconductor company based in Austin, Texas.The company was founded in 1996 by three veterans from the former Crystal Semiconductor – Nav Sooch, Dave Welland and Jeff Scott . The company's CEO is Necip Sayiner. The company went public in...

 (formerly Cygnal) series of microcontrollers.

Supported target architectures

  • Intel 8051
    Intel 8051
    The Intel MCS-51 is a Harvard architecture, single chip microcontroller series which was developed by Intel in 1980 for use in embedded systems. Intel's original versions were popular in the 1980s and early 1990s. While Intel no longer manufactures the MCS-51, binary compatible derivatives remain...

     and its derivatives.
  • Zilog
    Zilog
    Zilog, Inc., previously known as ZiLOG , is a manufacturer of 8-bit and 24-bit microcontrollers, and is most famous for its Intel 8080-compatible Z80 series.-History:...

     Z80 and binary compatible derivatives such as Z180 and eZ80.
  • Freescale (Motorola
    Motorola
    Motorola, Inc. was an American multinational telecommunications company based in Schaumburg, Illinois, which was eventually divided into two independent public companies, Motorola Mobility and Motorola Solutions on January 4, 2011, after losing $4.3 billion from 2007 to 2009...

    ) HC08
    Freescale 68HC08
    The 68HC08 is a broad family of 8-bit microcontrollers from Freescale Semiconductor .HC08's are fully code-compatible with their predecessors, the Motorola 68HC05. Like all Motorola processors that share lineage from the 6800, they use the von Neumann architecture as well as memory-mapped I/O...


Work is in progress on:
  • Microchip
    Integrated circuit
    An integrated circuit or monolithic integrated circuit is an electronic circuit manufactured by the patterned diffusion of trace elements into the surface of a thin substrate of semiconductor material...

     PIC16 and PIC18

See also

  • Retargetable compiler
    Retargetable compiler
    In software engineering, retargeting is an attribute of software development tools that have been specifically designed to generate code for more than one computing platform.-Compilers:...

  • Microcontroller
    Microcontroller
    A microcontroller is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory in the form of NOR flash or OTP ROM is also often included on chip, as well as a typically small amount of RAM...

  • Z88DK
    Z88DK
    Z88DK is a Small-C-derived cross compiler for a long list of Z80 based computers. The name derives from the fact that it was originally developed to target the Cambridge Z88...

  • 8051 compiler
    8051 compiler
    There are various high level language compilers for 8051 or enhanced versions of 8051 from various vendors. The most popular is the C language compiler. As the modern C compilers are efficient, assembly language is seldom used nowadays. It is common to have a complete program written solely in C...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK