Запись/чтение строк в/из EEPROM

Пользовательские блоки дающие дополнительные возможности при работе с EEPROM и SD картами
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Ответить
Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Запись/чтение строк в/из EEPROM

#1

Сообщение AlexCrane » 17.09.2020{, 19:31}

Набор блоков для записи/чтения строк в/из EEPROM

Т.к. просят многие, а вменяемых блоков на форуме не встречал, выкладываю свои блоки

Блок StrToEEPROM_Ex_main - основной блок с функциями, не имеет параметров, ставится в любом месте

Блок StrToEEPROM_Ex - для записи строки в EEPROM

Входы:
Save - По переднему фронту сохраняем строку в EEPROM, использовать через RTrig
InString - Входная строка для записи
eeAddressBegin - Адрес для записи строки

Выходы:
eeAddressNext - Адрес для записи следующих данных

Блок StrFromEEPROM_Ex - для чтения строки из EEPROM

Входы:
Load - По переднему фронту читаем строку из EEPROM, использовать через RTrig
eeAddressBegin - Начальный адрес для чтения строки

Выходы:
eeAddressNext - Следующий адрес для чтения данных
OutString - Выходная строка для чтения

Сами блоки:
StrToFromEEPROM.ubl
(58.47 КБ) 223 скачивания
Пример работы с блоками:
StringToEEPROM.flp
(215.67 КБ) 256 скачиваний
Последний раз редактировалось AlexCrane 18.09.2020{, 08:20}, всего редактировалось 1 раз.
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Аватара пользователя
ykamerton
Сержант
Сообщения: 292
Зарегистрирован: 03.09.2017{, 00:31}
Репутация: 3
Откуда: Воронеж ykamerton@yandex.ru

Запись/чтение строк в/из EEPROM

#2

Сообщение ykamerton » 17.09.2020{, 23:20}

Прекрасно! даже работает на внешней. Какраз к стати, буду пробовать на бегущей строке.
Еще бы как кирилицу добавить.
СпойлерПоказать
Безымянный.jpg
Отправлено спустя 1 час 16 минут 49 секунд:
ХА, А в IDE норма, почему так..
СпойлерПоказать
Безымянный.jpg

fsergei70
Капитан
Сообщения: 786
Зарегистрирован: 17.11.2015{, 20:36}
Репутация: 54
Имя: Сергей

Запись/чтение строк в/из EEPROM

#3

Сообщение fsergei70 » 18.09.2020{, 06:00}

ykamerton писал(а):
18.09.2020{, 00:36}
Прекрасно! даже работает на внешней. Какраз к стати, буду пробовать на бегущей строке.
Еще бы как кирилицу добавить.
Спойлер
Показать
Отправлено спустя 1 час 16 минут 49 секунд:
ХА, А в IDE норма, почему так..
Похоже дело в кодировке русских символов, один и тот же скетч может вести себя по разному в зависимости от того сохраняли проект в ардуино IDE перед прошивкой или нет. Вот поподробней. https://wiki.iarduino.ru/page/encoding-arduino/

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Запись/чтение строк в/из EEPROM

#4

Сообщение Sancho » 18.09.2020{, 08:43}

AlexCrane писал(а):
17.09.2020{, 19:31}
а вменяемых блоков на форуме не встречал
Спорное утверждение. Вредный я сегодня.
Ваши блоки при изменении длинны первой переменной(строки) перепишут весь оставшийся массив, занимаемый всеми значениями. Хотя ресурса памяти хватит, если не будет ошибок в логике.
Честно, реальное применение - не вижу, т.к. чтобы прочитать, например, хоть что-то, нужное в данный момент, придётся как-то вычислять, где оно находиться...
Просьба сравнить критически с этим.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Запись/чтение строк в/из EEPROM

#5

Сообщение AlexCrane » 18.09.2020{, 19:33}

Sancho писал(а):
18.09.2020{, 08:43}
Честно, реальное применение - не вижу, т.к. чтобы прочитать, например, хоть что-то, нужное в данный момент, придётся как-то вычислять, где оно находиться...
Я дал людям инструмент, как его применить они сами придумают. Ничто не мешает писать по адресам кратно 20-ти к примеру и читать так-же (с контролем длины строк конечно).
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Аватара пользователя
Nano
Рядовой
Сообщения: 48
Зарегистрирован: 31.05.2018{, 09:39}
Репутация: 2
Имя: Сергей

Запись/чтение строк в/из EEPROM

#6

Сообщение Nano » 21.10.2020{, 12:17}

Добрый день!
А для esp 8266 можете сделать такие же блоки?) Плиз)

Аватара пользователя
Phazz
Полковник
Сообщения: 2552
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 367
Откуда: Сургут
Имя: Анатолий

Запись/чтение строк в/из EEPROM

#7

Сообщение Phazz » 21.10.2020{, 13:47}

Для есп есть пользовательские параметры в левой части где настройки вайфай

Аватара пользователя
Nano
Рядовой
Сообщения: 48
Зарегистрирован: 31.05.2018{, 09:39}
Репутация: 2
Имя: Сергей

Запись/чтение строк в/из EEPROM

#8

Сообщение Nano » 22.10.2020{, 21:21}

Phazz писал(а):
21.10.2020{, 13:47}
Для есп есть пользовательские параметры в левой части где настройки вайфай
Спасибо! Не знал) Вопрос снят.

Утвш
Сержант
Сообщения: 129
Зарегистрирован: 02.12.2016{, 07:31}
Репутация: 1

Запись/чтение строк в/из EEPROM

#9

Сообщение Утвш » 24.12.2021{, 16:46}

Phazz писал(а):
21.10.2020{, 13:47}
Для есп есть пользовательские параметры
Разве через пользовательские параметры можно сохранить массив в EEPROM?

Аватара пользователя
Phazz
Полковник
Сообщения: 2552
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 367
Откуда: Сургут
Имя: Анатолий

Запись/чтение строк в/из EEPROM

#10

Сообщение Phazz » 24.12.2021{, 17:46}

Утвш, а массив тут при чем?

Утвш
Сержант
Сообщения: 129
Зарегистрирован: 02.12.2016{, 07:31}
Репутация: 1

Запись/чтение строк в/из EEPROM

#11

Сообщение Утвш » 24.12.2021{, 19:13}

Phazz писал(а):
24.12.2021{, 17:46}
массив тут при чем?
Извини. перепутал темы.

Аватара пользователя
Di123
Капитан
Сообщения: 828
Зарегистрирован: 03.11.2018{, 19:38}
Репутация: 29
Имя: Дмитрий

Запись/чтение строк в/из EEPROM

#12

Сообщение Di123 » 29.01.2022{, 12:33}

а как выбрать свободный адрес ?
к примеру уже что то записано в епром штатным блоком
а я хочу записать строку и как не наткнуться на занятый адрес

и как ещё определить количество адресов всего имеющихся в распоряжении допустим на атмеге 328 ?

Отправлено спустя 12 минут 7 секунд:
непонимаю почиму у меня некомпилируется проект
2022-01-29_164600.png
8266.flp
(918.71 КБ) 27 скачиваний

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Запись/чтение строк в/из EEPROM

#13

Сообщение AlexCrane » 29.01.2022{, 16:16}

Di123, Эти блоки для AVR, универсальные блоки возьми здесь viewtopic.php?f=86&t=7656
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Ответить

Вернуться в «EEPROM и SD карты»