Чтение данных с SD в ардуино
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Чтение данных с SD в ардуино
Выгружаем содержимое заданного файла не в порт, а в переменную (string).
Подробнее в описании.
Тестил на Mega и NANO.
Подробнее в описании.
Тестил на Mega и NANO.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
- Alias
- Лейтенант
- Сообщения: 481
- Зарегистрирован: 27 ноя 2017, 13:15
- Откуда: Rus44
- Имя: Michael
- Контактная информация:
Чтение данных с SD в ардуино
Не удалось проверить на Нано вживую, тк памяти мало. Проверил на пустом проектике, где только две булевых переменных и одна строковая:
[spoiler]Скетч использует 10156 байт (33%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 860 байт (41%) динамической памяти, оставляя 1188 байт для локальных переменных. Максимум: 2048 байт.[/spoiler]
Это библиотеки столько жрут?
[spoiler]Скетч использует 10156 байт (33%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 860 байт (41%) динамической памяти, оставляя 1188 байт для локальных переменных. Максимум: 2048 байт.[/spoiler]
Это библиотеки столько жрут?
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Чтение данных с SD в ардуино
Ага.
Пустой проект со стандартным блоком выгрузки файла с SD
[spoiler]Скетч использует 7738 байт (25%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 835 байт (40%) динамической памяти, оставляя 1213 байт для локальных переменных. Максимум: 2048 байт.[/spoiler]
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Чтение данных с SD в ардуино
Блок безусловно полезный. Я так понимаю он считывает файл пакетом т.е. все строки разом. Сколько бы их там не было, хоть 10 000.
А возможно ли считывать по одной строке. Что бы информацию каждой строки можно было обработать и перейти на следующую.
Например.
P1000
P2000
P3000
и т.д.
Допустим, что 1000, 2000, 3000 это милисекунды. Счетчик отсчитал, читаем следующую строку и т.д.
А возможно ли считывать по одной строке. Что бы информацию каждой строки можно было обработать и перейти на следующую.
Например.
P1000
P2000
P3000
и т.д.
Допустим, что 1000, 2000, 3000 это милисекунды. Счетчик отсчитал, читаем следующую строку и т.д.

-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Чтение данных с SD в ардуино
Ну если только для этого алгоритма, то можно парсить данные написанные в одну строку другим ПБ viewtopic.php?f=85&t=4778, а уже потом их применять.aska писал(а): 11 фев 2019, 21:05Что бы информацию каждой строки можно было обработать и перейти на следующую.
Например.
P1000
P2000
P3000
и т.д.
Допустим, что 1000, 2000, 3000 это милисекунды. Счетчик отсчитал, читаем следующую строку и т.д.
В принципе
возможно. Нужно в блоке добавить условие и читать пока не встретите какой-то признак по которому следует прекратить чтение (например перенос строки). Но я не программист. Вдруг кто то из знающих модифицирует/сделает другой ПБ. Или как появится время попробую прикрутить сам.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Чтение данных с SD в ардуино
Вот и я не программист. Понимаю, что нужно сделать, а как сделать не знаю.
. Тоже подумаю.

Чтение данных с SD в ардуино
Всем привет! У меня вопрос не про чтение, а про запись данных на SD карту. Но поскольку такой темы нет, то поинтересуюсь в этой.
Вот такой у меня вопрос, во встроенном блоке "Запись переменной на SD карту" какой максимальной длины можно записать комментарий по входу "Comment"?
Вот такой у меня вопрос, во встроенном блоке "Запись переменной на SD карту" какой максимальной длины можно записать комментарий по входу "Comment"?
- AlexCrane
- Капитан
- Сообщения: 903
- Зарегистрирован: 20 окт 2017, 13:22
- Откуда: Ульяновск
- Имя: Александр
- Поблагодарили: 12 раз
Чтение данных с SD в ардуино
[ref]mihail66[/ref], по максимуму 65536, на практике ограничены памятью контроллера (уно, нано - 2000 байт)
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Чтение данных с SD в ардуино
У меня по входу "Comment" пишется максимум 13 символов (на картинке это столбец E). А мне нужно записать 15 знакомест. Но вместо этого пишется просто пустота. Определил экспериментально.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Чтение данных с SD в ардуино
Блок чтения построчно с sd карты, можно выбрать нужную строку.
В параметрах блока нужко указать пин подключения к sd карте.
getLine - при подаче единицы, будет искать нужную строку. (используйте через блок rTrig);
needLine - указать нужную строку, начиная с 0;
fileName - имя файла с расширением на sd карте;
Выход lineString - найденная строка;
В параметрах блока нужко указать пин подключения к sd карте.
getLine - при подаче единицы, будет искать нужную строку. (используйте через блок rTrig);
needLine - указать нужную строку, начиная с 0;
fileName - имя файла с расширением на sd карте;
Выход lineString - найденная строка;
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Рядовой
- Сообщения: 16
- Зарегистрирован: 27 дек 2015, 19:25
- Откуда: Москва
- Имя: Владимир
Чтение данных с SD в ардуино
Подскажите, пожалуйста, какое расширение файла допускается? И если есть возможность, то хотелось бы иметь описание данного ФБUser8 писал(а): 03 июл 2020, 17:34 Блок чтения построчно с sd карты, можно выбрать нужную строку.
В параметрах блока нужко указать пин подключения к sd карте.
getLine - при подаче единицы, будет искать нужную строку. (используйте через блок rTrig);
needLine - указать нужную строку, начиная с 0;
fileName - имя файла с расширением на sd карте;
Выход lineString - найденная строка;

-
- Рядовой
- Сообщения: 22
- Зарегистрирован: 12 окт 2020, 16:21
- Откуда: Шизино
- Имя: Сергей
- Благодарил (а): 3 раза
Чтение данных с SD в ардуино
Уважаемый User8,
Могли бы вы немножко расширить функционал данного блока?

Все тоже самое, только вместо вывода битов выводить значения (Integer). Исходный файл аналогичен файлу загрузки для стандартного блока "коммандоаппарат" с расширением ххх.csv
Использование массива коммандоаппарата в процессоре (ограничено объемом памяти) не позволяет использовать большие-большие массивы, ну и крайне неудобно в коммандоаппарате заменять массив, поскольку при замене массива происходит отключение всех выходов и приходится каждый раз при этом муторно переподключать все выходы коммандоаппарата.
заранее благодарен
вроде разобрался. только .csv не читает
Чтение данных с SD в ардуино
Здравствуйте! Вопрос к знатокам в этой теме- стоит задача записи чисел (integer) на SD карту по имени файла , а при чтении выбранного файла вывести в переменную последнее записанное значение. Буду очень благодарен за помощь.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя