Запись и чтение из eeprom массивов символов

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

При старте скопируется из флеша в озу

Только progmem не использует озу

maks.dav
Offline
Зарегистрирован: 13.12.2015

Komandir пишет:

При старте скопируется из флеша в озу

Только progmem не использует озу

я понял

Дополнил предыдущее сообщение - посмотрите, пожалуйста

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Физически ничего не стирается - "куча" помечает блок свободным

maks.dav
Offline
Зарегистрирован: 13.12.2015

Komandir пишет:

Физически ничего не стирается - "куча" помечает блок свободным

ясно, я понял.

А ещё вопрос тогда про наших баранов: 

Как правильно тогда записать динамический массив и считать в динамический массив из ЕЕПРОМ?

Или никак и лучше всего это делать только с явно инициализированными при объявлении массивами?

т.к. пробую записывать и считывать в динамический массив - выдаёт ерунду на выходе

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Надо побайтно писать/читать через EEPROM write/red

Динамический массив и 2 кб (ещё на стек вычесть) памяти плохо совместимы.

maks.dav
Offline
Зарегистрирован: 13.12.2015

просто, по логике, из динамического массива в eeprom записывается тот же указатель, а не реальные значения, записывать тогда в цикле с пометкой *(str1+i)?? или как-то есть проще решения?

sadman41
Offline
Зарегистрирован: 19.10.2016

Ремарка: малость "экономней" не write() , а update().

И, да, бежать от 0 до sizeof(array) и писать в ячейки eeprom - достаточно простое решение.

b707
Offline
Зарегистрирован: 26.05.2017

maks.dav пишет:

 записывать тогда в цикле с пометкой *(str1+i)?? или как-то есть проще решения?

куда уж проще-то?