Unit V
Unit V
2. Compiler
• A compiler is used when editing part is done and made a source code.
• The function of compiler is to convert the source code in to object code.
• Object code is understandable by computer as it in low level programming
language.
• Compiler is used to convert a high level language code in to low level
programming language.
Contd..
3. Assembler
• The third and an important one among Embedded Systems Software
Development Tools is an assembler.
• Assembler converts a code written in assembly language into
machine language.
• All the mnemonics and data is converted in to op codes and bits by an
assembler.
Contd..
4.Linker
• The linker is a program that combines the number of codes for
execution.
• Used for linking the codes that are saved in different files into one
single final program.
• It also takes care of allocation of memory so different modules saved
into a single program do not overlap.
Contd..
5.Debugger
• Debugger to debug your code.
• Debugger goes through the whole code and tests it for errors and
bugs.
• Tests your code for different types of errors like a run time error or a
syntax error and notifies you wherever it occurs.
• The line number or location of error is shown by debugger.
Contd..
Debugging Tools
Simulators
• Among all embedded software tools, simulating software is also
needed.
• Simulator helps to see how your code will work in real time.
• You can see how sensors are interacting, you can change the input
values from sensors, also how the components are working and how
changing certain values can change parameters.
Ex.Proteus simulation software
Contd..
Emulator
• An emulator is an alternative to the real system but a simulator is
used to optimize, understand and estimate the real system
List file(.lst)
• Contains cross compiler details, source code, assembly code
generated from source file.
• Actually useful only if multiple C programming files to be compiled.
For single files the listing file just acts as directive for linkers.
Map file(.map)
• .map is the mapping file. It has the real address location mapping for
the program to be deployed via hex. The map file is only used during
compilation
Contd..
Object file(.obj)
• Contains all the individual parts of the program packaged into
pluggable units for the deployment environment i.e the
microcontroller.
• Also contains symbolic information, object code, debugging
information
• obj file is given to the Linker Program with the other object files to be
linked.
Contd..
Hex file (.hex)
• file is the actually hexadecimal code that will be read by your
programmer and feeded into the microcontroller.
• It’s the machine code and varies from machine to machine.
• Only file that is burnt into the microprocessor is the .hex file.