ctownsend
Advanced Member level 2
at89s programmer
I built a standalone ISP programmer for the AT89S51/52 devices using another 89S51 and a 24LC256 eeprom to store the hex file to be programmed.
The hex file and schematic is included. The hex file should work in most 8051 devices provided you follow the pinout in the schematic. The code is under 2K so it will even work in 89C2051/89S2051. (it wouldn't hurt to use two pullup 4.7K resistors on p1.0 and p1.1 if you use an 89C2051 for the programmer)
You just load the file to the eeprom with a terminal program, set the configuration, and then you can program the at89S device using the stored code in the eeprom without a PC. Remember there is no flow control when loading a hex file, therefore you must slow the data down to minimum 100mS delay per line so the data won't be lost. Most terminal programs will do this. I use terminal from windows 3.1, I find it is the best one with no bugs (better than hyperterminal)
I have only tested the programmer on the 89S51 and 89S52. I have not tested on the newer 89S2051 devices, but I expect it will work just the same.
Please read the instructions carefully. I tested this programmer and it does work good.
Just looking for some feedback or ways to improve. Any advice would be appreciated.
Good Luck
Edit Dec 2, 2007: I made some changes and I uploaded the source code.
In this version the incoming hex file is checked for valid line checksum.
The incoming file size is also checked (no more than 8K file).
I hope someone can "select helped me" if they use this code.
Screenshots are also included in this file.
Good Luck
I built a standalone ISP programmer for the AT89S51/52 devices using another 89S51 and a 24LC256 eeprom to store the hex file to be programmed.
The hex file and schematic is included. The hex file should work in most 8051 devices provided you follow the pinout in the schematic. The code is under 2K so it will even work in 89C2051/89S2051. (it wouldn't hurt to use two pullup 4.7K resistors on p1.0 and p1.1 if you use an 89C2051 for the programmer)
You just load the file to the eeprom with a terminal program, set the configuration, and then you can program the at89S device using the stored code in the eeprom without a PC. Remember there is no flow control when loading a hex file, therefore you must slow the data down to minimum 100mS delay per line so the data won't be lost. Most terminal programs will do this. I use terminal from windows 3.1, I find it is the best one with no bugs (better than hyperterminal)
I have only tested the programmer on the 89S51 and 89S52. I have not tested on the newer 89S2051 devices, but I expect it will work just the same.
Please read the instructions carefully. I tested this programmer and it does work good.
Just looking for some feedback or ways to improve. Any advice would be appreciated.
Good Luck
Edit Dec 2, 2007: I made some changes and I uploaded the source code.
In this version the incoming hex file is checked for valid line checksum.
The incoming file size is also checked (no more than 8K file).
I hope someone can "select helped me" if they use this code.
Screenshots are also included in this file.
Good Luck