Чтение и запись данных в EEPROM

Views: 1751


Версия для 8 битных микроконтроллеров 18 серии где EEPROM более 256 байт например, PIC18F26K80.

Чтение данных из EEPROM

//чтение данных из EEPROM
unsigned char read_eeprom (unsigned int adres)
{
    EEADRH = adres>>8;      // загрузка адреса
    EEADR  = adres;         //
    EECON1bits.EEPGD=0;     // выбор чтения из еепром
    EECON1bits.CFGS=0;      //
    EECON1bits.RD=1;        // чтение байта данных
    NOP ();
    return EEDATA;          // возврат значения
}

 

Запись данных в EEPROM

//запись данных в EEPROM
void write_eeprom (unsigned int adres, unsigned char data)
{
    EEADRH = adres>>8;      // загрузка адреса
    EEADR  = adres;

    EEDATA = data;          // загрузка данных

    EECON1bits.EEPGD=0;     // выбор записи в еепром
    EECON1bits.CFGS=0;
    EECON1bits.WREN=1;      // разрешить запись в еепром
    INTCONbits.GIE=0;       // запретить прерывания
    EECON2 = 0x55;          // код разрешения записи
    EECON2 = 0xAA;          //

    EECON1bits.WR = 1;      //начать запись
    while(EECON1bits.WR);   // дождаться окончания
    INTCONbits.GIE=1;       // разрешить прерывания

    EECON1bits.WREN=0;      // запретить запись
}

 



Это может быть интересно


  • Проект с использованием MCC часть 15Проект с использованием MCC часть 15
    Views: 1787 EUSART – Универсальный асинхронный приёмопередатчик (УАПП, англ. Universal Asynchronous Receiver-Transmitter, UART) — узел вычислительных устройств, предназначенный для организации связи с другими цифровыми устройствами. … читать на вики. Внесем изменения в нашу схему, …
  • Применение typedef, struct и unionПрименение typedef, struct и union
    Views: 8922 Полезные описания переменных Часто необходимо в памяти расположить последовательно разные виды данных, что бы потом можно было их использовать. Полезные ссылки Взято и переработано с сайта http://www.butovo.com/~zss/cpp/struct.htm http://cppstudio.com/post/9172/ …
  • LED модуль P10C4V12LED модуль P10C4V12
    Views: 3325 LED панели на обычных регистрах типа 74HC595. Они выпускаются как монохромные так двух и полно цветные, особенность, что они предназначены для текстовой информации и имеют один уровень яркости. Общую яркость …
  • Часы + Календарь + Термометр + …Часы + Календарь + Термометр + …
    Views: 2835 Часы + Календарь + Термометр + Индикатор влажности + Секундомер + Дистанционное управление на ИК лучах (пульты на RC-5 протоколе) + Автоматическая регулировка яркости + Возможность вывода данных через USB, …
  • Проект с использованием MCC часть 11Проект с использованием MCC часть 11
    Views: 1034 Можно несколько облагородить программу вынести наши процедуры обработки нажатия кнопок в отдельные функции. Но вы должны понимать, что это хоть и не значительно, но будет тормозить общую скорость …
  • Гаджеты для домашней автоматики – Датчик движенияГаджеты для домашней автоматики – Датчик движения
    Views: 1510 Управление светодиодным освещением – Датчик движения. Данный гаджет предназначен для управления освещением рабочих столов (кухонных столов), освещение прихожих, освещение зеркал в прихожих, автоматическое включение света в коридорах. Датчик позволяет …
  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Views: 3087 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • Простой сенсорный регулятор светаПростой сенсорный регулятор света
    Views: 2518 Простой сенсорный регулятор. Проект – 2007 года. Регулятор выполнена на микроконтроллере PIC12F683 и имеет минимальное количество элементов. Выполняет стандартные функции, включение выключение света, изменение яркости, запоминание последнего установленного уровня …
  • Простой цифровой милливольтметр постоянного токаПростой цифровой милливольтметр постоянного тока
    Views: 4231 Простой цифровой вольтметр постоянного тока. Три диапазона измерений с автоматическим переключением 1 – 0,001 – 0,999 V, 2 – 0,01-9,99 V, 3 – 0,1-99,9. Четыре управляемых выхода с возможностью задания функции контроля …
  • MCC – K42 – настройка модуля DMAMCC – K42 – настройка модуля DMA
    Views: 1035 MCC – в версии v.3.95.0 и начиная ядра 4.85.0 конфигуратор предоставляет графический интерфейс для настройки модуля DMA. Для начала: Посмотреть какая версия МСС можно в закладке версии, если …



Поделись этим!