??? 02/25/09 09:24 Read: times |
#162813 - you use uint8_t in your read_seq () Responding to: ???'s previous message |
from your code that you posted:
unsigned char byte_write ( unsigned int addr, unsigned char val ); unsigned char byte_read ( unsigned int addr ); unsigned char current_read (); unsigned int seq_read ( unsigned int size, __idata unsigned char *buf, unsigned char addr); The seq_read() calls byte_read() with a uint8_t addr to set the eeprom address registers. So you can read a uint16_t size # of bytes from your eeprom, providing they start at before address 256. This is possibly your intention. I used: unsigned int seq_read ( unsigned int size, __idata unsigned char *buf, unsigned int addr); David. |
Topic | Author | Date |
AT24C512 Sequential Read failed!! | 01/01/70 00:00 | |
the IIC engine is identical ... | 01/01/70 00:00 | |
Sample code | 01/01/70 00:00 | |
what are the symptoms? | 01/01/70 00:00 | |
symptoms | 01/01/70 00:00 | |
A common mistake... | 01/01/70 00:00 | |
Your code looks fine | 01/01/70 00:00 | |
It took me ages ! | 01/01/70 00:00 | |
uint8_t range | 01/01/70 00:00 | |
confusion | 01/01/70 00:00 | |
you use uint8_t in your read_seq () | 01/01/70 00:00 | |
Do you want the full corrected source code ? | 01/01/70 00:00 | |
my own code | 01/01/70 00:00 | |
An explanation | 01/01/70 00:00 | |
code update | 01/01/70 00:00 | |
diff is your friend | 01/01/70 00:00 | |
size -1 | 01/01/70 00:00 | |
write program, rather than code... | 01/01/70 00:00 | |
It's Working![]() | 01/01/70 00:00 |