How to Safely remove NVRAM from programmer and put it into a circuit?

Thread Starter

keiichicom

Joined Apr 26, 2022
76
Hi,

I am using this circuit and software to write to the NVRAM: GitHub - crmaykish/AT28C-EEPROM-Programmer-Arduino: Programming the AT28C64B or AT28C256 EEPROM chip with an Arduino Mega

In order to avoid the hassle of disabling Software Data Protection for writes to the 28c256 EEPROM, I decided to use DS1230Y NVRAM instead but it seems to come with its own set of problems. I can write to and read from it ok and I tested data retention by removing the Vcc power connection between the NVRAM and the Arduino and then removing the chip from the programmer and re-inserting it ok, connecting the power again, and re-reading it and it is fine, but when I place it into the circuit where I use it, my program initially works, but eventually some bytes, but not all of them get nuked after a while either with random bytes or 00h. I definitely have a 4.7k pullup resistor on the write enable pin to VCC and I don't have any op codes for writing to the chip in my code on the NVRAM. Does anyone have any experience with these chips? I am beginning to think that they are "flaky".

p.s. I have .1uf capacitors across Vcc and GND, near all ICs in my circuit and in the programmer.

Pic:

nvram.png

Thanks, Kei.
 

dl324

Joined Mar 30, 2015
16,988
  1. Does the data get corrupted while power is on continuously?
  2. s it the same bytes that get corrupted?
  3. How old is the NVRAM?
  4. Have you tried simulating the NVRAM being exercised in your programming circuit?
  5. Does the program take advantage of the write protect of the EEPROM?
  6. Where did you obtain the NVRAM?
 

Thread Starter

keiichicom

Joined Apr 26, 2022
76
Hi Dennis,

Thanks for the reply. Here are the answers to your questions in order of your questions, hopefully it gives you some clues.

Yes (I press the hw reset switch a few times to re-run my program, its an 8085Ah based computer)
No
Brand New
No
No (write protect is automatic according to the datasheet)
www.digikey.ca

Kei
 
Last edited:

Thread Starter

keiichicom

Joined Apr 26, 2022
76
Thanks, Dennis

I first isolated the write enable pin from the rest of the circuit prior to connecting it to VCC. I unplug the VCC power always first prior to removing the NVRAM and my circuit connections use jumper wires to soldered on male header pins connected to ZIF sockets.

Anyways, thanks to you, I was able to identify and fix 2 loose connections. I got it to the point, where 99% of the time I can move the NVRAM between the 8085 computer and the programmer without corruption, otherwise 1 or two bytes get corrupted, but I have to figure out why. I think that the NVRAM is sensitive to power spikes. I also verified that my program is being executed. On the programmer side I also tied the write enable pin to HIGH, just in case (until i have to write to it again).

Kei
 

dl324

Joined Mar 30, 2015
16,988
I got it to the point, where 99% of the time I can move the NVRAM between the 8085 computer and the programmer without corruption, otherwise 1 or two bytes get corrupted, but I have to figure out why. I think that the NVRAM is sensitive to power spikes.
Have you tried to determine when the data is being corrupted? Does power go down cleanly on the programmer? Is it the same bytes?

I think that the NVRAM is sensitive to power spikes
Most logic families are sensitive to power spikes.
 

Thread Starter

keiichicom

Joined Apr 26, 2022
76
Thanks.

I found that the following steps work consistently.

Programmer

1 Program the nvram
2 Tie WE to VCC
3 Remove VCC power from the zif socket
4 remove the nvram from the zif socket

Circuit

1 Remove VCC power from the zif socket
but power remains connected to the rest of the circuit
2 Insert the nvram into the zif socket
3 Connect VCC power to the zif socket

Kei
 
Top