Which Tools are Used in Program the Microcontroller? 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 Keil Uvison: 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. Keil uVsion Software Guide to Start working with Keil Uvison: 1. Click on the Keil Vision Icon on Desktop. The following steps involve in this process: Figure 1 2. Click on the Project menu from the title bar Then Click on New Project Figure 2 3. Save the Project by typing suitable project name with no extension in your own folder sited in either C:\ or D:\ Figure 3 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. Figure 4 5. Select AT89C51 as shown below Figure 5 6. Then Click on “OK” The Following steps involve in the above process: Figure 6 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. Figure 7 8. Click on the file option from menu bar and select “new” Figure 8 9. The next screen will be as shown in text page Figure 9 10. Now start writing program in either in “EMBEDDED C” or “ASM”. For a program to be written in Assembly language, we must save it with an extension “. Asm” and for “EMBEDDED C” based program we have to save it with extension “.C” Figure 10 11. Now right click on Source group 1 and click on “Add files to Group Source” Figure 11 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. Keil Uvison Editor 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. Programmer/Burner 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. Share This Post: Facebook Twitter Google+ LinkedIn Pinterest Post navigation ‹ Previous What is a WiFi Technology & How Does It Work?Next › Obstacle Avoidance Robotic Vehicle Using Ultrasonic Sensor Related Content ATmega16 – Next Generation Microcontroller ATmega328 Arduino Uno Board Working and Its Applications Industrial Fault Monitoring System How to Interface an LED With 8051 Microcontroller Comments are closed.