I am using either Nano and Uno with AMTEL 24C256 with 4.7K pull up on SDA and SCL pins.
The I2C scanner did detected shows 0X50 as very good.
A0, A1, A2, A3, and WP connected to all GND.
Written into EEPROM...
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
Reading Data from EEPROM...
⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮
Seem write and read not working... Did I missed something?
You are only sending one byte for the EEPROM address you want to read and write to. You need to send two bytes, that is a 16 bit number that contains the address you want to read or write to.
Ummm Okay, can you give me code for example? I tried many way from the online no luck.
also I did replace chip 3 times still the same.
I tried this code and no luck:
Hi,
Thanks for the image.
Although the A0, A1 and A2 are internally pulled to gnd, the data sheet suggests in most applications you hard wire HIGH or LOW.
Also can I suggest a 0.1uF cap across the Vcc and VSS pins.
Okay, how can I do fix this? I tried many ways from online... but I do not understand the online with you tube have same of mine, they are working fine but not me.. I copied code from their.
The first parameter of this function, which is the address of the EEPROM you want to write from is defined as a byte. So what ever you pass into this function will be converted into a byte. So you pass an int into this function and it is converted into a byte!
This is bad because you only ever send a byte as the address. The EEPROM chip needs the following data as defined in the data sheet I told you to read and didn't.
The first word address has a * on the most significant bit, which means that the first word address is the most significant byte of the two byte address you must send.
So the first thing you must do is change the function definition of both read and write functions to a