цифровая электроника
вычислительная техника
встраиваемые системы

 



Модификация загрузчика Arduino для записи пользовательских данных в flash-память

Автор: Mike(admin) от 5-07-2015, 18:15

Для хранения каких-либо пользовательских данных в Arduino и вообще в микроконтроллерах AVR используют память EEPROM (Electrically Erasable Programmable Read-Only Memory или по-русски электрически стираемое перепрограммируемое постоянное запоминающее устройство). Но, к сожалению, она имеет малый объем и небольшое количество циклов чтения записи в отличие от flash-памяти. Например, в Arduino Uno на основе микроконтроллера ATmega328 у пользователя имеется в роспоряжении всего лишь 1024 байта для записи и последующего хранения данных. У версий Arduino с чипом ATmega168 этого пространства вообще в два раза меньше - всего 512 КБ.


Модификация загрузчика Arduino для записи пользовательских данных в flash-память

Но во флэш-память нельзя в процессе работы записывать данные, поскольку в нормальном режиме это память программ, и только загрузчик в процессе программирования может записывать туда информацию. К счастью, решение найдено! Загрузчик (bootloader) для Arduino под названием Optiboot был успешно модифицирован.