During the college days, we were thought how to use the 8051 microcontroller, as a student our biggest problem is how to burn our hex file to our chip. Until these days, this is still the problem of students in my school so I came up with an idea making a simple programer using my Gizduino (Arduino clone in the Philippines) lying around and writing a simple C# application to process the hex file. The 89s52 is the most common available in our place and the good thing is it can be programmed via its SPI port without needing high voltage to enter programming mode.

Programming the chip is not that difficult, we just need to issue series of commands as stated in the datasheet, the c# app will parse the hex file and what the gizduino will do is just to translate it to SPI commands, then voila we have our 8051 programmed in no time. The prototype is done using my general purpose digital trainer.

The Atmega 328/168 in the arduino is overkill for these purpose, I will port this later to a smaller and cheaper microcontroller.

The fun part Testing!

  1. pcbpinoy says:

    nice tutorials, sir! what’s your email add?

  2. Ricardo says:

    Can you share your solution? i interested too in programming 89s52 using an arduio

  3. murotto says:

    hi sir why aren’t you share this project it is become useful for humanity isn’t it?

    • tiktakx says:

      hi, this project is unfinished, no verification yet besides its more simple to build USBASP with 8051 support firmware for our dear old 8051

  4. Kuro says:

    Please, can’t you release it yet? I can’t find any other easy solution to program my 89S52. Thanks.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s