In: Computer Science
What are the applications of 8051 microcontrollers that can be done on EdSim51? List down at least 5.
Features of EDSIM 51
The EdSim51 Simulator is a free simulator for the popular 8051 microcontroller. In EDSIM51, a virtual 8051 is interfaced with virtual peripherals such as a keypad, motor, display, UART, etc. The student can write 8051 assembly code, step through the code and observe the effects each line has on the internal memory and the external peripherals. The following is a list of virtual peripherals in EDSIM51:
• Analogue-to-Digital Converter (ADC)
• Comparator
• UART
• 4 Multiplexed 7-segment Displays
• 4 X 3 Keypad
• 8 LEDs
• DC Motor
• 8 Switches
• Digital-to-Analogue Converter (DAC) - displayed on oscilloscope
• Supports only assembly language
• IDE is completely written in java supports all the OS
• Completely free and with user guide, examples..etc
There are numerous uses of simulation, starting from simulation of simple electric circuits to complex tasks such as electromagnetic fields, heat transfer through materials, networking, computer circuits, game programming, electron flow in semiconductors, or beam loading with the ultimate objective of providing illustrations of concepts that are not easily visualized and difficult to understand. Simulators are also used as an adjunct to and, in some cases such as distance learning courses, as a substitute for actual laboratory experiments. In many instances, students are required to verify their theoretical design through simulation before building and testing the circuit in the laboratory. Studies show that students who used simulation prior to conducting actual experiments performed better than the students who conducted the laboratory experiments without conducting simulation first. Also, simulation is used to model large and complex systems. There is no doubt that simulation cannot replace the physical hands-on experience, but simulation can enhance the teaching and learning experience.
Things that can be done in EdSim51 are:-
A screenshot of the microcontroller panel. This gives the user access to all the 8051's registers and data memory. |
Boxes that are white can be edited directly. Those that are grey cannot. For example, the port latch bits can be edited directly by the user, but the port pins are controlled by the external peripherals and the port latches and cannot be edited. Also, the program counter is not editable. |
In the above image, the individual bits for the accumulator are shown (ACC). The user can enter any address or SFR name in the blue box (replacing ACC) and the bits for that given address will then be displayed. Also, if you let the mouse pointer hover over one of the bits momentarily, the bit's description is displayed, as shown below:
By default, data memory is displayed. Any address in RAM (00H to 7FH) can be altered by entering the address in the blue box (labelled addr) and then entering the desired value in the box to the right (labelled value). |
Code memory can also be examined and edited, as shown in the image above. To switch between data memory and code memory the user clicks on the button that is labelled Data Memory when data memory is displayed and Code Memory when code memory is displayed. |
The first 127 bytes of code memory are displayed. To view another area of code memory, enter the start address in the blue box. The 127 bytes from the start address onwards will then be displayed. Again, like data memory, the address specified in the blue addr box can be altered by entering a value in the value box. However, it should be noted that this will result in the machine code and the assembly program being different. |
In the image above, the assembly code that generated the machine code (as displayed in code memory) can be seen on the right. |
The user can choose to either step through a program (executing a single instruction per step) or run the program continuously. When running a program, the rate at which the screen updates is determined by the setting in the Update Freq. menu. | |
|
When the background of the assembly code text area is white is it editable. The programmer can write code directly here, or can load a program from file using the Load button (dealt with in the next section). |
When the program is ready for testing, the user can either click on the Step button to execute instructions one at a time, or on the Run button to run the program continuously. Either way, the program will first be assembled. If an error in the code is discovered, a message is displayed in the message box above the assembly code (with a red background) and the line with the error is highlighted within the code in red. |
If the code assembles without errors the text area's background changes to light grey. The code cannot be edited at this point. |
If you want to go back to editing your code, simply click on the Reset button. |
The user can write code directly into the text box when it is in edit mode, or an existing program can be loaded from a file using the Load button. Similarly, code in the text box can be saved to file using the Save button. |
There are two file types handled. The first is plain-text. Assembly programs are saved as regular plain-text files (often called text-only) and usually with .a or .asm file extension. By default, this is the format used when saving your source code in the EdSim51 Simulator. |