Back to PCAM+ page.
LED Interface with 89S52
Beginning of Learning Embedded SystemsTo use this tutorial, you will need the PCAM+ hardware kit.
Let's get started!
On the PCAM+ hardware board, locate the row of LEDs.
Locate the 89S52 on the PCAM+ board. This is a microcontroller of the 8051 family into which your application will be programmed.
Use the included prototyping wires to connect the 8 pins between Port1 and the LEDs. Notice the male pins near the LEDs and near the 89S52.
Our first application will switch ON every other LED and keep the other four LEDs in OFF condition. At this time, we won't use any blinking effect.
To type the code, use the 8051IDE software. The 8051IDE is assembler software which will allow you to write assembly language instructions and will create the HEX file via the Assemble command menu. If you have not yet installed the 8051IDE software, do so now.
Once installed, start 8051IDE and write the following source code:
When you have finished writing, save the assembly file in a suitable folder.
The MOV P1,#55H code will copy (or move) hex value 55 to PORT1. The # sign indicates that 55 is a value; the H at the end indicates it is hexadecimal. The LOOP: section creates a never-ending loop as the program will jump to LOOP again and again using SJMP LOOP statement. Thus the program will never end, keeping the LEDs (which we connected to PORT1) lighted in a 10101010 pattern. Why 10101010? Because hexidecimal 55 equals 10101010 in binary.
Now it's time to "Assemble" the file. To do this, use the Assemble menu in the 8051IDE software.
This action will create a HEX file in the same folder where you saved your assembly file earlier.
Next, download the HEX file to the microcontroller using the HandyProg-USB Programmer. If you don't know how, go ahead and read the next chapter. It will explain how to use the HandyProg and its software.
When you've completed the download, you should see every other LED turn on, provided you have powered the kit.
Congratulations! You have written your first microcontroller program! Try changing the value of 55H to 33H, save the file, assemble, program, and note the difference in the LED pattern. You can set up any pattern of on/off by changing that hex value. Each digit of the hex value represents four binary numbers, i.e. four LEDs. See the following table:
Thus entering #8DH instead of #55H would make the LEDs appear like 10001101.
Proceed to Chapter 2
Back to PCAM+ page.