EEPROM

Вопросы от новичков
Ответить
alges
Рядовой
Сообщения: 37
Зарегистрирован: 11 окт 2015, 00:57

EEPROM

Сообщение alges »

Пол дня просидел , ну не как , не могу сделать программу счётчика !
Задача заключается в том что- бы сохранять значения счётчика в энергонезависимую память
Есть этикеровочник хочу поставить счётчик на него общего количества этикеток !
Как можно сделать добавление значений к сохранённому значению в энергонезависимой памяти
Я слышал, что нельзя постоянно переписывать энергонезависимую память - значит надо сделать периодическое сохранение значений
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

EEPROM

Сообщение Ingwar »

При включении/рестарте однократно считается значение из еепром и запишется как стартовое в счетчик.
[spoiler]
Безымянный.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
aidar_i
Полковник
Сообщения: 3360
Зарегистрирован: 24 дек 2016, 16:55
Откуда: Уфа
Имя: Айдар
Благодарил (а): 14 раз
Поблагодарили: 100 раз
Контактная информация:

EEPROM

Сообщение aidar_i »

Нужно записывать в ЕЕПРОМ при изменении значения, через штатный блок. Образец - переключение каналов в ESP RADIO, там сохраняется номер канала. А срок службы Вам хватит, если что перепаять память и все!
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

EEPROM

Сообщение Sancho »

baden писал(а): 08 фев 2019, 08:29И о каком количестве этих этикеток идет речь? Можно ведь использовать внешнюю еепром.
Полностью согласен с обоими предложениями.
Вопрос количества этикеток - количество будет определять концепцию.
С внешней памятью - многими миллионами, а именно:
Создается две переменные с типом uint и long uint.
Первая отвечает за то, в какой ячейке(наборе байт)0,1,2... храним данные от второй, но имеет фикс адрес.
При достижении второй придуманного максимума 1млн, 500тыщ, 2 млн... инкременируем первую, второе с нуля.
При включении - сначала читаем адрес(и он-же множитель), потом из адреса - последнее значение.
Как итог -очень много с записью каждого изменения.
Можно ещё увеличить количество раз, за счёт использования раннее пользованых старших байт, сдвигая побайтно место расположения ячейки, но это явный перебор - только для подсчёта семечек или риса в пакетах :)
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
alges
Рядовой
Сообщения: 37
Зарегистрирован: 11 окт 2015, 00:57

EEPROM

Сообщение alges »

Сейчас попробую по первому ответу - в день печатают от 3-5 т этикеток

Отправлено спустя 2 минуты 20 секунд:
На счёт количества записи хочу попробовать поставить таймер если ничего не происходит в течении 5 мин будет происходить запись
Аватара пользователя
eugeneb
Лейтенант
Сообщения: 486
Зарегистрирован: 15 авг 2016, 11:20
Откуда: Нижний Новгород
Имя: Евгений
Благодарил (а): 1 раз

EEPROM

Сообщение eugeneb »

Добавьте в проект модуль RTC с батарейкой. Там в микросхеме часов есть несколько ячеек оперативной памяти. Вот там и держите текущее значение счётчика.
С уважением,
Евгений Бобков
alges
Рядовой
Сообщения: 37
Зарегистрирован: 11 окт 2015, 00:57

EEPROM

Сообщение alges »

Большое спасибо сделал как посоветовал Ingwar Сделал дополнительный счётчик с пред установкой от стандартной энергонезависимой памяти и каждые 3 минуты после простоя он записывает новое значение в память , вот только пришлось всё усложнить с таймерами - оказалось нужен таймер при включении иначе не устанавливается пред установка в счетчик
Спасибо всем - не хватало только пинка под зад для решения задачи )))))
Ответить

Вернуться в «Начинающим»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость