Normally we are designing a circuit and
connecting to different other components like motors, LCDs, LEDS, even
more by giving a power supply which is used by that circuit. What the
microcontroller does when it is programmed with that circuit?
The microcontroller families understands
a program which is written in assembly level language or C language
which has to be compiled into a machine level language which is known as
binary language ( i.e. zeros & ones). The file which has been
programmed is stored on a computer hard disk or memory of the
microcontroller. The assembler is used to translate the assembly program
into machine code. To write the program in assembly language the
programmer must have knowledge on the CPU or hardware. The low level
languages are used in cross development. The hexadecimal system was used
as more efficient way to represent binary numbers, while using binary
language the CPU works very fast.
Today, we can use many different
programming languages such as C, JAVA, ORACLE and others. These
languages are called high level languages; to write the program in high
level language the programmer doesn’t need any knowledge on hardware
which is used for high level application development. The compiler plays
a vital role in translating the high-level program to machine level as
the high level languages are used in native development.
Here are some tools which are used in programming of the microcontrollers:
- Keil uVison
- Code Editor
- Assembler
- C compiler
- Burner/Programmer
The Keil Uvison is free software which
solves many of the pain points for embedded developer. This software is
integrated development environment (IDE) which integrated a text editor
to write programs, a compiler and it will convert source code into hex
file.
Guide to Start working with Keil Uvison:1. Click on the Keil Vision Icon on Desktop.
The following steps involve in this process:
2. Click on the Project menu from the title bar
Then Click on New Project
3. Save the Project by typing suitable project name with no extension in your own folder sited in either C:\ or D:\
4. Then Click on save button above.
Select the component for u r project. i.e. Atmel……Click on the + Symbols as for your requirement. Example here selected Atmel.
5. Select AT89C51 as shown below
6. Then Click on “OK”
The Following steps involve in the above process:7. Then Click either YES or NO………mostly “NO”.
Now your project is ready to USE.
Now double click on the Target1, you would get another option “Source group 1” as shown in next page.
8. Click on the file option from menu bar and select “new”
9. The next screen will be as shown in text page
10. Now start writing program in either in “EMBEDDED C” or “ASM”.
11. Now right click on Source group 1 and click on “Add files to Group Source”
12. Now select as per your file extension given while saving the file.
Click only one time on option “ADD”.Now Press function key F7 to compile. Any error will appear if so happen.
If the file contains no error, then press Control+F5 simultaneously.
Code Editor or Text Editor:
The code editor is used to write the
program. The uVision editors include all standard features like color
syntax highlighting and quickly identify the errors. The editor is
available while debugging. The natural debugging environment helps you
quickly in identifying and correcting the errors in your program. After
writing the program in code editor save that file in .asm or .C format
depending on which assembler you have chosen.
Assembler:The assembler is used to convert the source code (low level language) into machine level (binary format).
Compiler:
The compiler is used to convert the source code (high level language) into machine level (binary format).
The assembler converts the instructions into machine code:
Assembly Language to Machine Level Conversion Diagram
➢ The first file is created with an editor such as DOS edit or other.
➢ The assembler will produce an
objective file and a list of file. The extension for the object file is
“.obj” while the extension for the list file is “.lst”.
➢ The assembler requires a third step
is know as linking. The link program takes one or more objects files
and produces an objective file with the extension “.abs”.
➢ The “.abs” file is fed into a
program called OH (objective to hex converter) which creates a file with
extension “hex” that is ready to burn in to microcontroller ROM.
Burner/Programmer:
The Programming or burning a
microcontroller means “to transfer the program from compiler to the
memory of the microcontroller”. The program for the microcontroller is
generally written in C or assembly language, finally the compiler
generates a hex file which contains the machine language instructions
like zeros and ones that understandable by the microcontrollers. It is
the content of the microcontroller which is transferred to the
microcontroller, once a program is transferred to the memory of the
microcontroller it works according to the program.
How to Program a Microcontroller:
Microcontroller is an integrated chip in
which we store the code which is written in an assemble language. So to
dump this coded program into a microcontroller IC we need a device
which is known as burner or programmer. A programmer is a hardware
device with software which reads the content of the hex file which is
stored on a pc or laptops. It’s read the hex file data serial or USB
cable and transfer the data to the memory of the microcontroller.
The programmers and compilers are
different for different microcontroller which is for different companies
like the 8051 microcontroller “flash magic” is used to program the
microcontroller and AT89C51 microcontroller “programmer” used to program
the microcontroller. This is way how we are programming code in a
microcontroller with a burner or programmer.
No comments:
Post a Comment