ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
3 декабря
1419681 Топик полностью
Eddy_Em (27.03.2024 09:18, просмотров: 228) ответил Make_Pic на Подскажите как "красиво" загружать и хранить в памяти в микроконтроллера различные конфигурации (константы, значения переменных, условий переходов и т.д.)? Желательно с примерами кода.
А в чем: EEPROM или Flash? 

Я пользуюсь STM32, поэтому во флеше делаю эмуляцию EEPROM. Просто создаю структуру с данными, которая при включении загружается и определяет дальнейшее конфигурирование периферии. Если пользователь поменял настройки, они все равно хранятся в ОЗУ. А вот если хочет сохранить - то записываются следующим свободным блоком (либо, если флеш уже заполнена, вся стирается и заново первым блоком пишутся данные).

Вот так это выглядит

. Для ускорения загрузки я использую бинарный поиск (а то встречал любителей, которые последовательный поиск используют: да если у него запись в самом хвосте, а свободного флеша под 200кБ, то это ж целую секунду МК может тупить на старте; а, в отличие от инициализации медленной периферии типа экранчиков, считывание настроек в КА не засунешь - они нужны до инициализации периферии).

eddy-em.livejournal.com github.com/eddyem