Keil Software
Keil Software
Keil Software
Keil Compiler:
Keil is also a cross compiler The process of development of the soft code on
a processor for a particular application and which can be implemented on the
target processor is known as Cross Development.
In our design the main heart of the hardware module is the micro controller
which is the programmable IC .The programming language used for
developing the software to the micro controller is Embedded C /Assembly.
The KEIL cross compiler is used to edit ,compile and debug this program
Micro Flash programmer is used for burning the developed code on Keil in
to the micro controller Chip.
KEIL SOFTWARE
Software Development Cycle
When you use the Keil Software tools, the project development cycle is
roughly the same as it is for any other software development project.
1. Create a project, select the target chip from the device database, and
configure the tool settings.
2. Create source files in C or assembly.
3. Build your application with the project manager.
4. Correct errors in source files.
5. Test the linked application.
KEIL SOFTWARE
µVision2 IDE:
Source files are created by the µVision2 IDE and are passed to the C51
Compiler or A51 assembler. The compiler and assembler process source
files and create relocatable object files.
The Keil C51 Compiler is a full ANSI implementation of the C
programming language that supports all standard features of the C language.
In addition, numerous features for direct support of the 8051 architecture
have been added. The Keil A51 macro assembler supports the complete
instruction set of the 8051 and all derivatives.
µVision2 Debugger
The Keil C51 Cross Compiler is an ANSI C Compiler that was written
specifically to generate fast, compact code for the 8051 microcontroller
family.
The C51 Compiler generates object code that matches the efficiency and
speed of assembly programming.
Using a high-level language like C has many advantages over assembly
language programming:
_ Knowledge of the processor instruction set is not required. Rudimentary
knowledge of the memory structure of the 8051 CPU is desirable (but not
necessary).
_ Details like register allocation and addressing of the various memory types
and data types is managed by the compiler.
_ Programs get a formal structure (which is imposed by the C programming
language) and can be divided into separate functions. This contributes to
source code reusability as well as better overall application structure.
_ The ability to combine variable selection with specific operations
improves program readability.
_ Keywords and operational functions that more nearly resemble the human
thought process may be used.
_ Programming and program test time is drastically reduced.
KEIL SOFTWARE
_ The C run-time library contains many standard routines such as: formatted
output, numeric conversions, and floating-point arithmetic.
_ Existing program parts can be more easily included into new programs
because of modular program construction techniques.
_ The language C is a very portable language (based on the ANSI standard)
that enjoys wide popular support and is easily obtained for most systems.
Existing program investments can be quickly adapted to other processors as
needed.
C51 Language Extensions
Code Optimizations
General Optimizations
8051-Specific Optimizations
Debugging:
The C51 Compiler uses the Intel Object Format (OMF51) for object
files and generates complete symbol information. Additionally, the compiler
can include all the necessary information such as; variable names, function
names, line numbers, and so on to allow detailed and thorough debugging
and analysis with the µVision2 Debugger or any Intel-compatible emulators.
Source-Level Debugging
The A51 Assembler generates complete line number, symbol, and type
information in the object file created. This allows exact display of program
variables in your debugger. Line numbers are used for source-level
debugging of your assembler programs with the µVision2 Debugger or
third-party emulator.
Functional Overview
The A51 Assembler translates an assembler source file into a relocatable
object module. It generates a listing file optionally with symbol table and
cross reference. The A51 Assembler supports two different macro
processors:
_ The Standard Macro Processor is the easier macro processor to use. It
allows you to define and use macros in your 8051 assembly programs. The
standard macro syntax is compatible with that used in many other
assemblers.
_ The Macro Processing Language (MPL) is a string replacement facility
that is fully compatible with the Intel ASM51 macro processor. MPL has
several predefined macro processor functions that perform many useful
operations like string manipulation or number processing. Another powerful
feature of the A51 Assembler macro processors is conditional assembly
depending on command line directives or assembler symbols. Conditional
assembly of sections of code can help you achieve the most compact code
KEIL SOFTWARE
possible. It also allows you to generate different applications from one
assembly source file.
ASSEMBLY VS C: