Коптильный комплекс на базе Arduino. Шаг 6 Память EEPROM
Что такое EEPROM?
- EEPROM (энергонезависимая память): используется для хранения постоянной информации. Не обнуляется при выключении контроллера. Если просто - это как маленькая флешка на 4096 ячеек.
У нас появились долговременные данные которые надо куда-то записать. А точнее - поправки датчиков. Контроллер давал возможность их ввести, учитывал в показаниях но после выключения питания их приходилось вводить заново.
В принципе, сама запись в EEPROM не вызывает трудности. НО! Прежде чем что то писать, надо решить что и куда. Иначе возникнет путаница с адресами. Желательно изначально распределить эту память и создать понятную систему хранения данных.
Проблема большинства проектов на контроллерах в том что память заполняется хаотично, по мере возникновения нужды... В итоге, когда дело к концу там (в EEPROM) просто свалка.
Поехали....
Так как у нас "автоматическая...." значит есть какие-то "зашитые" программы, выбрав одну из которых мы запускаем процесс. Все это понимают, видят в бытовых приборах (стиралки, хлебопечки, духовки). И часто не пользуются.......
Ну не подходят они, или не помним что там они делают.. В итоге, пользователь часто сам устанавливает нужный режим, а все эти заранее красиво написанные программы типа "Мясо по французски" пустая трата ресурсов.
По этому, я как бы разделяю возможности на 2 типа.
- Примитивные программы, интуитивно-понятные. Одна - две настраиваемых переменных... Зашитые в контроллер. Где человек по названию четко представляет суть работы.
- Сложные, много-ходовые, с вложенными циклами программы. Которые полностью соответствуют технологии приготовления.
Со вторым сложнее.. Я не хочу их описывать программно. У каждого свой подход к приготовлению и свой набор оборудования. Я думаю вынести процесс создания текущей программы за пределы контроллера.
Что еще будем распределять?
Попробую сформировать список. Если что забыл поправляйте....
- Поправки датчиков.
- Температура "-00.0" - нужно две ячейки на каждый и четыре вида. Итого 8 ячеек.
- Влажность "-00" - две ячейки на два вида. Итого 4 ячейки.
- Связь
- МАС-адрес, для идентификации устройства "00-00-00-00-00-00". Итого 6 ячеек.
- IP-адрес, для идентификации в сети "000.000.000.000". Итого 4 ячейки.
- Будет дополняться........
Добавлено 30.10.2017
Для нормального взаимодействия контроллера с постоянной памятью имеется экран "Память".
Пользователю доступны:
- Возврат к Заводским Установкам.
- Сохранение текущих установок.
- Очистка памяти.
Помимо работы с памятью, протестирован и подключен тип датчика HTU21D. Добавлена поддержка нового типа температурного датчика - 200 кОм ATC Semitec 204GT-2 thermistor.
Достаточно много термо-щупов имеют такой тип резистора. Например щупы для духовых шкафов
Кстати, это уже модернизированная версия китайских производителей... Видно двойной обжим трубки.
Возможно тут не потребуется заливать герметиком..
- vash, Константин М, KOLBASERRO и 4 другим пользователям это нравится
А скажите, не беспокоит ли Вас эта куча датчиков, проводов, наводки, паразитная генерация и прочие прелести, которые могут привести к слету епрома, глюков и прочих не стабильностей в работе ?