SC51: 8051 Compiler

Complete 8051 development tool - includes C Compiler, Assembler, Linker, IDE, Simulator and more...

(1 day training on ‘C’ programming for 8051 included)


SC51 is a complete set of development tools for 8051, it includes number of components:

·         C Compiler

·         Assembler

·         Linker

·         Function libraries

·         Integrated Development Environment (IDE)

·         Simulator (supports source and binary level debugging)

·         Flash ISP programming tool

·         [Optional] Additional libraries for:

With SC51, you can:

·         Create and edit an 8051 application - the IDE includes program editor with syntax highlighting. You can create and edit C and/or Assembler programs.

·         Use the Visual Code Generator (VCG) to automatically generate initialization code for on-chip peripherals (such as serial port, timers).

·         Create a "project" which may include number of C, Assembler, and Object files.

·         "Make" the application - all C programs will be compiled, Assembler programs will be assembled and finally all Object files will be linked together with appropriate Libraries; and Intel HEX file and/or ROM image file (.BIN) will be produced.

·         Use the simulator to (offline) debug your application - simulation of on-chip peripherals (such as serial port) is fully supported. Simulation of some external peripherals (such as LCD) is also supported. Much of functional testing is possible with this simulator.

·         Use the flash ISP programming utility to download the HEX file into target processor (if it supports ISP). Our Evaluation Boards (Mini51) and Single Board Computers (SBC51) support ISP. Currently these processors are supported: P89C51Rx+,  P89C51Rx2,  P89C66x, P89C669 (MX family, 96K code memory), DS89C420.

·         Use the terminal emulation program (SPJTerminal) to watch the serial port output, and to perform "real time" testing.

All the above is possible with just one product - SC51 - and for a very competitive price (and free upgrades for unlimited period!).

New!!! Buy SC51 C Compiler and get 1 day training on “’C’ programming for 8051” FREE.

Technical support is available by email.

Click here to visit FAQ page for SC51.

System Requirements :
This software runs on a PC with 386 or higher processor with minimum 16 MB of memory running Windows9x / WindowsNT / Windows2000 / WindowsME / WindowsXP operating system.

C Compiler :

·         Creates ROMable code / Intel HEX format file.

·         Produces debug output file compatible with most In-Circuit-Emulators. (If you are an ICE manufacturer and your ICE does not support our debug files, please write to us.)

·         Several optimisations result in compact code.

·         Allows full use of special features of 8051 micro-controller family (for example, bit variables).

·         C++ style comments (//) supported.

·         Supports mixed language (‘C’ + Assembly) programming and in-line assembly also.

·         Two memory models - Large and Small.

·         Supports new keywords (data, idata, bdata, xdata, pdata, code) to place variables in specific memory area (regardless of the memory model used).

·         Supports memory specific pointers (1 or 2 bytes) as well as generic pointers (3 bytes). Generic pointers can point to any memory area.

·         Works well for nearly all members of 8051 family. Basically, the compiler works for all those 8051 derivatives which are code caompatible with the original 8051. "Extra" SFRs can be declared with SFR keyword. If you are not sure, whether your processor is supported, please ask us.

·         Full math support with single precision Floating Point Arithmetic. Math functions such as sin, cos, log etc. are included in the form of source code. Float numbers stored in IEEE 4 byte standard format.

·         Supported data types : bit, char, unsigned char, int, unsigned int, long int, unsigned long int, float, arrays (upto 2 dimensions), pointer (upto 1 level).

·         Supports struct / union with minor restrictions.

·         Interrupt Service Routines can be written in ‘C’ - supports using directive to switch register bank in the Interrupt function.

·         Software upgrades are free for unlimited period.

Simulator:

·         With this simulator, program testing and debugging can be done without target hardware or In-Circuit Emulator.

·         Simulates the 8051 micro-controller - including on-chip peripherals such as serial port and timers.

·         Run / single step through your source program.

·         View / edit contents of Registers / Memory / SFRs / C variables.

·         Simulates some commonly used peripherals like LCD.

·         Separate window to view serial port output and to simulate input to serial port.

·         Set multiple break-points.

·         Traps logical run-time errors like stack overflow, or reading un-initialized memory location.

·         Binary level debugging (with dis-assembled program view) is also supported.


Visual Code Generator (VCG) :
The VCG allows you to visually program various on-chip peripherals like the serial port, timers etc. The VCG includes 3 different wizards to generate initialization code for Timers, Serial Port and Interrupt Enable / Priority registers. The Serial port wizard looks like this:

You only need to specify the desired serial port mode, desired baud-rate, whether to use T1 or T2 for baud-rate and then click on the "Generate Code" button. The VCG generates C language statements to initialize the serial port as per your requirement. Click on "Copy to Clipboard" button and the generated code will be copied to the clip-board, so you can paste it into your program.

Function Library :
Several functions which are specified by ANSI C (e.g. printf, scanf) are included in the library. However, all ANSI standard functions are not included - e.g. malloc, calloc etc. Apart from these, several other functions (and macros) which are relevant to 8051 micro-controller are also included in the library. Some math functions (such as sin, cos, tan) are included in the form of C language source code, so users can modify these as per their needs of acuracy and speed. For example, sin function uses series expression to compute value of sin(theta). The number of iterations used to compute sin can be increased (to get better acuracy but less speed) or decreased (to get quick results at the cost of some loss of acuracy) by the user as per the requirements of his / her specific application. The following functions are included in the library (some are given in the form of source code). Other than this standard library, additional libraries can be purchased separately. Currently available additional libraries are for:

1.      Graphics LCD interface (clear screen, set/clear pixel, draw line and so on)

2.      Accessing I2C compatible devices like EEPROM, RTC…

More libraries coming soon!

 

abs

enable_t0

labs

set_lo_ex1

acos

enable_t1

ldexp

set_lo_ser

asin

enable_t2

log

set_lo_t0

atof

ex0_edge

log10

set_lo_t1

atoi

ex0_level

long2bcd

set_lo_t2

atol

ex1_edge

lo_nibb

set_t0_mode

bcd2int

ex1_level

ltoa_c31

set_t1_mode

ceil

exp

memset

set_tcnt

clr_double_baud

floor

modf

sin

clr_ri

fmod

movmem

sinh

clr_ti

frexp

outportb

sprintf

cos

getbyte

peekb

sqrt

cosh

getch

pokeb

sscanf

delay

getchar

pow

start_timer0

delay_ms

getchare

powerdown

start_timer1

disable

go_idle

printf

stop_timer0

disable_all

hi_nibb

putchar

stop_timer1

disable_ex0

init_ser

puts

strcat

disable_ex1

inportb

scanf

strcmp

disable_rx

int2bcd

sendbyte

strcpy

disable_ser

isalnum

ser_rdy

strlen

disable_t0

isalpha

set_com_mode

strlwr

disable_t1

isascii

set_double_baud

strncpy

disable_t2

isdigit

set_hi_ex0

strupr

enable

islower

set_hi_ex1

tan

enable_all

isspace

set_hi_ser

tanh

enable_ex0

isupper

set_hi_t0

tolower

enable_ex1

isxdigit

set_hi_t1

toupper

enable_rx

itoa_c31

set_hi_t2

ui2a_c31

enable_ser

kbhit

set_lo_ex0

ui2bcd

Evaluation version of SC51 :
An evaluation or demo version of SC51 can be downloaded free. Click here to download the demo. Although it is evaluation or demo version, it has all the features with only one limitation : It will not produce or simulate code more than (approximately) 2KBytes. If you want us to e-mail the demo version of SC51 to you, please click here.
The user's manual for SC51 can be also downloaded from the download page.

You may also browse through the Frequently Asked Questions about SC51.

Example Programs:
We have written number of example programs for interfacing devices like keyboard, LCD, 7 segment display, I2C EEPROMs and RTC, A/D Converter and so on. These programs have been tested on our general purpose Evaluation Boards / Single Board Computers based on 8051 family micro-controllers. You can download any / all of the example programs and use parts of them in your own application. Click here for the examples download page .

New!!! Buy SC51 C Compiler and get 1 day training on “’C’ programming for 8051” FREE.

Prices and Ordering information

SPJ Systems’ home page

Are you using / planning to use AVR micro-controllers ? Check our C compiler for AVR micro-controllers which includes Visual Code Generator.


80x51 WebRing
This 80x51 WebRing site owned by SPJ Systems .

[ Previous Site | Next | Random | List Sites | Join Ring ]


Note: We reserve the right to change specifications of any product without notice.

HOME | PRODUCTS | SUPPORT | TRAINING | SERVICES | PRICES | DOWNLOAD | FEEDBACK | JOBS