AT89Cx051 Programmer not working correctly - Increase waiting time?

Status
Not open for further replies.

mik3ca

Member
I have attempted to make an easy AT89C2051 programmer using the schematic I made below:


I have manually tested all possible configurations with software, and the circuit functions correctly to the software but I tried one atmel chip with it and it does not program correctly. It seems to be stuck in an erased state.

As for waiting period, I rely on the busy signal to change to correct state each time and that is a success.

I tried erasing the chip then tried downloading a 300 byte file to the chip and on my Pentium 4 it took about 1/10th a second to complete everything.

Could it be that the waiting period provided by atmel documentation is incorrect or are all AT89cx051 chips from ebay that terrible? or should I just manually increase the waiting period and ignore what Atmel has to say?

Here are the values I used:

All pull-up resistors: 10K
Resistor marked 0: 0 ohm (so eagle could route the damn thing)
Resistor from busy to circuit: 0 ohm
Resistor from IC VCC to +ve: 0 ohm
Decoupling capacitor for ICs: 47nF
Decoupling capacitor for power (C1): 100uF
All transistors: 2N3904
Resistor connecting to 12V: 100K (to be within the 250uA current limit for programming)
555 timer resistors: 10K
Capacitor between ground and timer pin 2: 1nF
Capacitor between timer pin 2 and transistor: 1uF (to enable 10mS timing for programming)
Other resistors: 2K
X1M = Large Grounding pins for parallel port = Ground

So what could I be doing wrong?

This is the information I relied on when creating my programmer:

https://ww1.microchip.com/downloads/en/DeviceDoc/doc0368.pdf
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…