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

Views: 1740


Версия для 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;      // запретить запись
}

 



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


  • Простой сенсорный регулятор светаПростой сенсорный регулятор света
    Views: 2502 Простой сенсорный регулятор. Проект – 2007 года. Регулятор выполнена на микроконтроллере PIC12F683 и имеет минимальное количество элементов. Выполняет стандартные функции, включение выключение света, изменение яркости, запоминание последнего установленного уровня …
  • TDA7294 part 2TDA7294 part 2
    Views: 705 Це друга частина проекту TDA7294, початок дивись тут. Тут ви знайдете повністю проект високоякісного підсилювача на TDA7294, схема, 3D моделі, гербер файли для виготовлення друкованої плати. І звичайно …
  • PIC32MZ – прерывания (заметки)PIC32MZ – прерывания (заметки)
    Views: 531 Виды формирования запоминая контекста при входе в прерывания. Компилятор представляет три варианта AUTO – когда запоминания места возврата из подпрограммы возложено на программу, т.е все создается программно. Этот …
  • Проект с использованием MCC часть 14Проект с использованием MCC часть 14
    Views: 1051 С выводом данных на дисплей мы справились (но могу сразу сказать библиотеку графики к этой статьи пришлось доработать, поэтому в этом проекте она обновлена). У нас на текущем …
  • Интерактивные LedИнтерактивные Led
    Views: 604 Тема проекта   продолжение следует…. Это может быть интересно
  • Универсальный терморегулятор ch-c3000Универсальный терморегулятор ch-c3000
    Views: 3215 Терморегулятор ch-c3000 предназначен для управления системами регулирования температуры в пределах от – (минус) 55 до + 125 С. Регулятор может использоваться как в системах отопления, так и в …
  • LED модуль P10 (1R) V706ALED модуль P10 (1R) V706A
    Views: 7948 Это еще одно чудо от китайского брата. Это монохромные матрицы, называются они P10 (1R) V706A, ну типа  R-красные, но не верьте паяют светики и зеленые и синие, в общем …
  • Altium Designer first projectAltium Designer first project
    Views: 522 Эта статья подразумевает, что у вас установлен и настроен Altium Designer как описано в статье  Altium Designer my setup system and project structure.  Обратите внимание! Библиотека постоянно обновляется, …
  • I2C MODULE – PIC18F25K42 Device ID Revision = A001I2C MODULE – PIC18F25K42 Device ID Revision = A001
    Views: 1204 I2C MODULE Обход ошибок в версии I2C MODULE – PIC18F25K42 Device ID Revision = A001 В Серии K42 применен совершенно новый модуль шины I2C, который позволяет поддерживать все …
  • PIC32MZ – Core Timer (библиотека)PIC32MZ – Core Timer (библиотека)
    Views: 579 Переработанные файлы от Microchip, библиотека для работы с Core Timer.



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