Views: 1749
Версия для 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: 3237 Изучаем изготовление емкостных сенсоров на PIC-микроконтроллере. Конструкция емкостных сенсоров имеет вид: Емкостные сенсоры строятся по схеме высокочастотного генератора, сам принцип основан на измерение частоты этого генератора. Частота зависит …
Audio-bluetooth modules F-6188 (BK8000L)Views: 2492Следующий модуль на чипе BK8000L. Заводское обозначение F-6188 также основным производителем не выпускается и отдан на тиражирование. с нижней стороны имеет маркировку В этом варианте мне попалась вроде полноценная …
Temperature measurement with NTC thermistor.Views: 714 Проекты в которых присутствовало измерение температуры начинал с цифровых датчиков, т.к. в них все просто и не надо ничего преобразовывать и вычислять. При использовании цифровых датчиков ты получаешь …
Регулятор влажности ch-3800Views: 1563 И еще один проект на плате ch-c3xxx – универсальный регулятор влажности ch-3800. Регулятор позволяет работать как в режиме индикатора влажности, так и в режиме регулятора. Рабочий диапазон …
Мониторинг температурыViews: 1488 Настоящий проект создан как обучающий с применением библиотек ds18b20 и LCDHD44780 и компилятора Microchip MPLAB XC8 C Compiler V1.12. Если необходимо иметь информацию по состоянию температуры в помещении или в здании, с количеством до 6 точек (16), то …
Moving average – скользящее среднееViews: 2456 Скользящая средняя, скользящее среднее (англ. moving average, MA) — общее название для семейства функций, значения которых в каждой точке определения равны среднему значению исходной функции за предыдущий период. Скользящие средние обычно используются с данными временных рядов для сглаживания …
Униполярный шаговый двигатель – часть 2Views: 1026 В этой части только итог и версия 2.0 универсальной, которая позволяет управлять шаговым двигателем во всех трех режимах и 3.0 специальной библиотеки только для одного полушагового режима. В …
CAN – Controller Area NetworkViews: 1264 Controller Area Network (CAN) первоначально был создан немецким поставщиком автомобильных систем Робертом Бош в середины 1980-х для автомобильной промышленности как метод для обеспечения возможности надежной последовательной связи. Целью было сделать автомобили более надежными, …
PIC32MZ – прерывания (заметки)Views: 536 Виды формирования запоминая контекста при входе в прерывания. Компилятор представляет три варианта AUTO – когда запоминания места возврата из подпрограммы возложено на программу, т.е все создается программно. Этот …
Четырех канальный терморегулятор ch-4000Views: 3430 Четыре независимых канала регулирования температуры, одновременно можно подключить 16 датчиков температуры DS18B20 с удалением до трехсот метров. Можно для регулировки выбрать любой датчик, подключенный к устройству. Каждый канал может работать …