You should now be able to use any of these chips in your code.
93c46 - a 128 byte eeprom
93c66 - a 512 byte eeprom
93c86 - a 2048 byte eeprom
In order to make the use a bit easier for programmers I suggest to add this to the config file:
SYMBOLS {
_lynx_eeread: type = export, value = _lynx_eeread_93c86;
_lynx_eewrite: type = export, value = _lynx_eewrite_93c86;
}
In the file lynx.h I have already declared the routines like:
unsigned _fastcall_ lynx_eeread(unsigned addr); void _fastcall_ lynx_eewrite(unsigned addr, unsigned val);
You can also use the right routine directly like:
lynx_eewrite_93c86(1023, 0xffff);
But if you add the symbol in the config file you can write:
lynx_eewrite(1023, 0xffff);
and then just link in the right driver by changing the data in the config file.
The old eeprom used to be similar to the 93c46. That is a 128 byte eeprom. But in the old days you also needed a separate erase-command to set the 0-bits back to 1-bits. This is now history. But for old eeprom designs there is still the old eeprom driver also. It has commands like lynx_eeprom_read, lynx_eeprom_write, lynx_eeprom_erase.
--
Regards,
Karri













