Страница 1 из 1
EEPROM
Добавлено: 08 фев 2019, 07:46
alges
Пол дня просидел , ну не как , не могу сделать программу счётчика !
Задача заключается в том что- бы сохранять значения счётчика в энергонезависимую память
Есть этикеровочник хочу поставить счётчик на него общего количества этикеток !
Как можно сделать добавление значений к сохранённому значению в энергонезависимой памяти
Я слышал, что нельзя постоянно переписывать энергонезависимую память - значит надо сделать периодическое сохранение значений
EEPROM
Добавлено: 08 фев 2019, 08:27
Ingwar
При включении/рестарте однократно считается значение из еепром и запишется как стартовое в счетчик.
[spoiler]
Безымянный.png
[/spoiler]
EEPROM
Добавлено: 08 фев 2019, 09:38
aidar_i
Нужно записывать в ЕЕПРОМ при изменении значения, через штатный блок. Образец - переключение каналов в ESP RADIO, там сохраняется номер канала. А срок службы Вам хватит, если что перепаять память и все!
EEPROM
Добавлено: 08 фев 2019, 11:24
Sancho
baden писал(а): 08 фев 2019, 08:29И о каком количестве этих этикеток идет речь? Можно ведь использовать внешнюю еепром.
Полностью согласен с обоими предложениями.
Вопрос количества этикеток - количество будет определять концепцию.
С внешней памятью - многими миллионами, а именно:
Создается две переменные с типом uint и long uint.
Первая отвечает за то, в какой ячейке(наборе байт)0,1,2... храним данные от второй, но имеет фикс адрес.
При достижении второй придуманного максимума 1млн, 500тыщ, 2 млн... инкременируем первую, второе с нуля.
При включении - сначала читаем адрес(и он-же множитель), потом из адреса - последнее значение.
Как итог -очень много с записью каждого изменения.
Можно ещё увеличить количество раз, за счёт использования раннее пользованых старших байт, сдвигая побайтно место расположения ячейки, но это явный перебор - только для подсчёта семечек или риса в пакетах

EEPROM
Добавлено: 08 фев 2019, 11:35
alges
Сейчас попробую по первому ответу - в день печатают от 3-5 т этикеток
Отправлено спустя 2 минуты 20 секунд:
На счёт количества записи хочу попробовать поставить таймер если ничего не происходит в течении 5 мин будет происходить запись
EEPROM
Добавлено: 08 фев 2019, 11:57
eugeneb
Добавьте в проект модуль RTC с батарейкой. Там в микросхеме часов есть несколько ячеек оперативной памяти. Вот там и держите текущее значение счётчика.
EEPROM
Добавлено: 08 фев 2019, 19:44
alges
Большое спасибо сделал как посоветовал Ingwar Сделал дополнительный счётчик с пред установкой от стандартной энергонезависимой памяти и каждые 3 минуты после простоя он записывает новое значение в память , вот только пришлось всё усложнить с таймерами - оказалось нужен таймер при включении иначе не устанавливается пред установка в счетчик
Спасибо всем - не хватало только пинка под зад для решения задачи )))))