The following components are included in the CA51 8051 C-compiler & Assembler Kit:

C51 C Compiler

The Keil C51 C Compiler for the 8051 microcontroller is the most popular 8051 C compiler in the world. It provides more features than any other 8051 C compiler available today.

The C51 Compiler allows you to write 8051 microcontroller applications in C that have the efficiency and speed of assembly language. Language extensions in the C51 Compiler give you full access to all resources of the 8051.

C51 translates C source files into a relocatable object module. When the DEBUG control is used, the object file contains full symbolic information for debugging with the ÁVision3 Debugger or an in-circuit emulator. In addition to the object file, the C51 Compiler generates a listing file which optionally may include symbol table and cross-reference information.

Support for the Philips 8xC750, 8xC751, and 8xC752 limited instruction sets

Support for the Infineon 80C517 arithmetic unit

A51 Macro Assembler

The A51 Assembler is a macro assembler for the 8051 family of microcontrollers. It supports all 8051 derivatives. It translates symbolic assembly language mnemonics into relocatable object code where the utmost speed, small code size, and hardware control are critical. The macro facility speeds development and conserves maintenance time since common sequences need only be developed once. The A51 assembler supports symbolic access to all features of the 8051 architecture.

The A51 assembler translates assembler source files into a relocatable object modules. The DEBUG control adds full symbolic information to the object module and supports debugging with the ÁVision3 Debugger or an in-circuit emulator. In addition to object files, the A51 assembler generates list files which optionally may include symbol table and cross reference information.

ÁVision3 IDE

The ÁVision3 IDE from Keil Software combines project management, make facilities, source code editing, program debugging, and complete simulation in one powerful environment. ÁVision3 helps you get programs working faster than ever while providing an easy-to-use development platform. The editor and debugger are integrated into a single application and provide a seamless embedded project development environment.

ÁVision3 features include:

The Device Database which automatically sets the assembler, compiler, and linker options for the chip you select. This prevents you from wasting your time configuring the tools and helps you get started writing code faster.

A robust Project Manager which lets you create several different configurations of your target from a single project file. The Keil ÁVision3 IDE allows you to create an output file for simulating, an output file for debugging with an emulator, and an output file for programming an EPROM -- all from the same Project file.

An integrated Make facility with automatic dependency generation. You don't have to figure out which header files and include files are used by which source files. The Keil compilers and assemblers do that automatically.

Interactive Error Correction. As your project compiles, errors and warnings appear in an output window. You may make corrections to the files in your project while ÁVision3 continues to compile in the background. Line numbers associated with each error or warning are automatically resynchronized when you make changes to the source.

The BL51 Linker processes object files created by the Keil C51 Compiler and A51 Assembler and the Intel PL/M-51 Compiler and ASM-51 Assembler. These object modules must adhere to the OMF51 object module specification. BL51 outputs an absolute OMF51 object module that may be loaded into practically any emulator, the Keil ÁVision3 Debugger, or the OH51 Object-HEX converter (to create an Intel HEX file).

OH51 Object-HEX Converter

Intel HEX files are ASCII files that contain a hexadecimal representation of your program. They easily may be loaded into a device programmer for writing EPROMs or other memory devices.

OC51 Banked Object Converter

The OC51 banked object file converter is a utility that creates an absolute object module for each code bank in a banked object module. You should not use this utility unless you have created a code banking program using the BL51 code banking linker.

When you create a code banking application, all symbolic and source-level information is maintained in the banked object module and is transferred by OC51 to each individual absolute object module for each code bank.

Once you have used OC51 to create the absolute object modules, you may use OH51 to create an Intel HEX file for each code bank.