Компания Microchip выпускает широкий спектр недорогой энергонезависимой памяти с последовательным
интерфейсом I2C. Емкость этих EEPROM начинается со 128 бит и может достигать 256 и более кбит, что позволяет применять ее
в различных областях электроники. И хотя сейчас многие микроконтроллеры имеют EEPROM данных на своем кристалле,
ее может оказаться недостаточно. Поэтому в некоторых случаях применение внешней памяти будет вполне оправданно (примеры применения данных микросхем
имеются и на этом сайте).
Полное описание технических характеристик EEPROM можно найти на
сайте производителя, а на этой странице приведены лишь тексты подпрограмм для работы с данными микросхемами.
Подпрограммы написаны для PIC-контроллеров и позволяют производить запись или чтение одного байта по заданному адресу EEPROM.
Эти подпрограммы применимы для работы с микросхемами емкостью до 16 кбит. Для больших емкостей
необходимо приведенные ниже подпрограммы модифицировать таким образом, что бы адрес ячейки памяти передавался двумя байтами. Так же, если за один цикл
необходимо считать/записать более одного байта, то нижеприведенные подпрограммы так же необходимо модифицировать.
В том случае, если в микроконтроллере имеется аппаратная поддержка I2C, то можно воспользоваться подпрограммами, приведенными
здесь.
Текст программы:
LIST p=16c505, r=hex
include P16C505.INC
cblock 0x08 ;Регистры
AddrLo ;Младший байт адреса в EEPROM
AddrHi ;Старший байт адреса в EEPROM
Cnt ;Счетчик
Temp ;Регистры для хранения переменных разного назначения
TempTr ;