Programming cycle #2 with ... hopefully $FF on the data bus? Therefore not actually a problem?
So a bus conflict? Maybe it explains the
strange writing behavior that I had when I used only 5v (not 6.5v) for writing.
* Use /ASTROBE to increment the '4040
Awesome idea thanks
So what do you think about this design by using
4053 :
Init state :
write (Pin1) : high ==> A + B : 4053 {5V ==> EPROM VCC , GND ==> /GVPP}
D_Strobe (Pin14) : high ==> C + /CE : 4053 { GND ==> Wait (Pin11) } : EPROM is disabled
Reset (Pin16) : high ==> 4040 Reset
A_Strobe (Pin17) : high ==> 4040 Clock
Setup 4040 :
Reset goes low : 4040 is ready to count
Read operation :
Read from EPP data register
Write is high : 5v ==> EPROM VCC, GND ==> /GVPP
D_Strobe goes low
EPROM /CE goes low : EPROM becomes enabled
Wait goes high : EPP Reading handshake starts
Data is read from Parallel Port Pins
D_Strobe goes high
EPROM /CE goes high : EPROM becomes disabled
Wait goes low : EPP Reading handshake ends
Manually force A_Strobe low then high to generate a clock for 4040
Repeat from beginning to deal with the next byte
Write operation :
Write to EPP data register
Halt the program for 50us
Write goes low : 6.5v ==> EPROM VCC, 13v ==> /GVPP
D_Strobe goes low
EPROM /CE goes low : EPROM becomes enabled
Wait goes high : EPP Writing handshake starts
Data is written to EPROM
D_Strobe goes high
EPROM /CE goes high : EPROM becomes disabled
Wait goes low : EPP Writing handshake ends
Write goes high : 5v ==> EPROM VCC, GND ==> /GVPP
{
To verify a loop of Reading handshake can be started here.
If verify doesn't pass start reprogramming the same byte again
If verify pass continue
}
Manually force A_Strobe low then high to generate a clock for 4040
Repeat from beginning to deal with the next byte