Introduction to Keil Simulator

The µVision IDE is the easiest way for most developers to create embedded applications using the Keil Microcontroller Development Kit (MDK).

Following are the step to create the Project.


Step 1: Open New after Double click the icon of Keil µVision on Computer.


Step 2: Go into the Project Crete New µVision Project.


Step 3: Give file name with “.asm” for assembly language programming or “.C”  for embedded C programming language and then click save.


Step 4: To copy standard 8051 startup code to project folder.


Step 5: Select the device for target Intel-8051AH


Step 6: A window with µvision will appear. Click YES. Sometimes this STARTUP.A51 file is not required or may cause some problem while building the project. If this happens, remove this STARTUP.A51 file and try building the project to check for any Error.


Step 7: Source Group1 Created in the Project Window.


Step 8: Right click on source group –add files to source group


Step 9: Give the same file name which is given at starting.


Step 10: Files will be Added in Source Group1.


Step 11: Main window of Program editor.


Step 12: Write the Program in Program editor.


Step 13: Check the error with Rebuild Option.


Step 14: Go to Debug Option Start/Stop Debug Session to run the program.


Step 15: Run the program.


Step 16: Check the Answers.

  • Check the answers in Registers on left side window of Registers.
  • To check for answers in Ports 0 – 3, Go to Peripherals>I/O Ports>Port Number.
  • To check answers in Internal RAM or ROM or External Memory, Go to View>Memory Window>Memory Window Number.
    • For Internal ROM, enter C:0000h as address.
    • For Internal RAM, enter D:00h as address.
    • For External RAM, enter  X:0000h as address.
    • Note that, in memory window, first value that is indicated is of memory location. Only one memory location is indicated, other consecutive memory locations in the same row are not indicated and needs to be evaluated visually. In the next row, the next memory location is indicated, and then there is no further indication of next values up to the end of line.