Указатель на адрес следующей записи я храню в ЕЕПРОМе.
У него данные пишутся каждые 10 мин, ресурс EEPROM закончится через 2 года... Я бы вместо AT24C32 поставил дешевую FRAM, типа FM24CL64B, тогда можно индекс последней записи хранить в ней же по фиксированному адресу и ничего каждый раз не искать.
У него данные пишутся каждые 10 мин, ресурс EEPROM закончится через 2 года...
Это всего 100 000 записей. Современные EEPROM за миллион уходят. И запись то последовательно по кругу идёт - ещё на два порядка размазывается по всему чипу.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Это всего 100 000 записей. Современные EEPROM за миллион уходят.
В коде от MOHCTEP используется встроенная в AVR EPPROM, а у нее ресурс 100К.
Цитата:
И запись то последовательно по кругу идёт - ещё на два порядка размазывается по всему чипу.
Размазать адрес то можно, но он пишется чтобы можно было просто(и быстро) определить последнюю запись логируемых данных, которые тоже размазываются и уже это у Serzh2000 вызывает затруднения. А так придется еще как-то определять последний записанный адрес...
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Здоровья всем! Возможно ли как-то узнать длину (количество элементов) массива, записанного в флеш память? Если со строками все просто, там рулит признак eol, то как разобраться с числовыми массивами?
MOHCTEP, нет, нельзя. Когда передают указатель на данные (не важно где - в RAM или FLASH), передают другим аргументом и их длину, если она не фиксирована как-то заранее. Пусть тот, кто пишет у вас данные во флэш, пишет еще и их размер сначала.
Всем привет! Подскажите, пжлст, что обозначают вот эти строки:
(void) USART->SR; (void) USART->DR;
собственно SR и DR я понимаю, что это регистры модуля ЮАРТ. объединённые в структуру. Меня интересует именно смысл этой конструкции с void-ом вначале, и что она делает.
Перед этими строками идет включение тактирования ЮАРТа, после них -- обнуление регистров. Тут вопросов нет.
Hand-Maker, прочитает их во временный регистр (не сохраняя дальше никуда). Смысл в том, чтобы обратиться к этому регистру. С некоторыми регистрами аппаратно что-то происходит от того, что их читают, и иногда это надо делать. Чтение DR/SR там вроде сбрасывает что-то... точно не помню, смотреть лениво.
Если почитать RM, то там будет написано, что последовательное чтение регистров SR и DR очищает статусы порта. Когда есть сомнения, что делает код, то хорошо подсматривать в листинг.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения