Monday, 30 April 2018

How to load hex file into AT89S52

In this post, we will learn how to upload hex file into AT89S52. It's a bit difficult to upload hex file into AT89S52 unlike atmega controllers which use AVRdudes for uploading hex file.

AT89S52 ia 40-pin IC and it has 40 GPIO pins and there are 4 ports viz, PORT 0, 1, 2 and 3. Each port has 8 pins. Total GPIO pins are: 8(pins in each port) * 4 (total number of ports) = 32 gpio pins
PORT0 is pull-up rest of the ports have internal pull-up resistor.

In order to eliminate tri-state condition in 8051 we can use network resistor of 10k (A103J)
It have peripherals like: Timer/ Counters, UART, GPIO programming, interrupt programming, etc. It don't have built-in ADC, SPI, I2C and there is no option of  internal RC oscillator.

It's Machine Cycle (MC) is calculated by: 12/ 11.0592 MHz = 1.085 us

Hardware required:
  • USBasp Programmer
  • AT89S52 development board (either on strip board or bread board)
Software required:
  • Progisp (for dumping hex file)
  • Keil uVision (8051 IDE for programming)