JSON в программе FLProg.

Тема для людей, кто уже имеет представление о json

Аватара пользователя
rw6cm
Полковник
Сообщения: 2144
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 285
Имя: Владимир

JSON в программе FLProg.

#1

Сообщение rw6cm » 23.02.2021{, 01:13}

==== "JSON" ====

JSON с помощью FLProg.
Блок для создания документа формата json.
Строка "JSON" блоком без библиотек.
Распарсить "JSON".
БиблиотекиПоказать
Библиотека ArduinoJson ver 6.x.x используется из дистрибутива FLProg
Находится в директории: диск:\FLProg_x.x.x\ideVx\portable\sketchbook\libraries\ArduinoJson
Блоки проверены в работе с ArduinoJson ver 6.17.3
В теме рассматриваются аспекты связанные с программой FLProg.
Win10-64, FLProg (portable)

DrScorpion86
Рядовой
Сообщения: 59
Зарегистрирован: 28.04.2021{, 14:45}
Репутация: 30
Имя: Евгений

JSON в программе FLProg.

#21

Сообщение DrScorpion86 » 18.01.2022{, 08:33}

на выходе из блока "массив FLProg" получается строка такого вида {"массив слов":["один","два","три","четыре","пять"]}
Для вывода этой строки на веб нужно экранировать кавычки(\") т.е. ({\"массив слов\":[\"один\",\"два\",\"три\",\"четыре\",\"пять\"]}

Решение где-то в этих строчках:)
Безымянный.jpg

Аватара пользователя
rw6cm
Полковник
Сообщения: 2144
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 285
Имя: Владимир

JSON в программе FLProg.

#22

Сообщение rw6cm » 18.01.2022{, 18:50}

DrScorpion86 писал(а):
18.01.2022{, 08:33}
Для вывода этой строки на веб нужно экранировать кавычки(\") т.е. ({\"массив слов\":[\"один\",\"два\",\"три\",\"четыре\",\"пять\"]}
Строка именно так и сформирована. По другому ее не передать. Но при передаче в переменную или терминал экраны не отображаются.
Win10-64, FLProg (portable)

valdemar71
Рядовой
Сообщения: 11
Зарегистрирован: 25.04.2022{, 15:45}
Репутация: 0
Имя: Владимир

JSON в программе FLProg.

#23

Сообщение valdemar71 » 13.07.2022{, 17:52}

rw6cm, Добрый день, спасибо большое за создание блока для формирования JSON! :smile9:
Учусь обращаться с данным блоком, столкнулся с проблемой.
Сделал маленький проект, составил JSON с помощью блока и хочу передать его на панель Nextion, чтобы увидеть результат работы блока.
К сожалению, после компиляции скетча в Ардуинку и подключении панели - строка на панели не отображается.
Железо - контроллер Arduino Uno, панель Nextion NX4827T043_011.
Пробовал передать на панель обычную строку, без блока - всё впорядке.
Подскажите пожалуйста, что делаю некорректно?
11111.png

Аватара пользователя
Dryundel
Полковник
Сообщения: 2091
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 646
Откуда: Ярославль
Имя: Андрей
Контактная информация:

JSON в программе FLProg.

#24

Сообщение Dryundel » 13.07.2022{, 17:57}

valdemar71 писал(а):
13.07.2022{, 17:52}
Подскажите пожалуйста, что делаю некорректно?
Вероятно используете штатный блок Nextion. А он если и работает, то через раз. Ищите ответ у ecoins.

Отправлено спустя 2 минуты 5 секунд:
viewtopic.php?f=72&t=6943
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

valdemar71
Рядовой
Сообщения: 11
Зарегистрирован: 25.04.2022{, 15:45}
Репутация: 0
Имя: Владимир

JSON в программе FLProg.

#25

Сообщение valdemar71 » 13.07.2022{, 18:02}

Dryundel писал(а):
13.07.2022{, 17:57}
valdemar71 писал(а):
13.07.2022{, 17:52}
Подскажите пожалуйста, что делаю некорректно?
Вероятно используете штатный блок Nextion. А он если и работает, то через раз. Ищите ответ у ecoins.
Если контролировать собранный JSON через панель Nextion не представляется возможным, то как корректней проверять сборку строк JSON?

Аватара пользователя
Dryundel
Полковник
Сообщения: 2091
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 646
Откуда: Ярославль
Имя: Андрей
Контактная информация:

JSON в программе FLProg.

#26

Сообщение Dryundel » 13.07.2022{, 18:05}

valdemar71 писал(а):
13.07.2022{, 18:02}
то как корректней проверять сборку строк JSON?
Выведите результат в UART и посмотрите что получилось после сборки.
Пользовательские блоки на сайте FLPROG - BLOCK
Выразить благодарность

valdemar71
Рядовой
Сообщения: 11
Зарегистрирован: 25.04.2022{, 15:45}
Репутация: 0
Имя: Владимир

JSON в программе FLProg.

#27

Сообщение valdemar71 » 13.07.2022{, 18:08}

Dryundel писал(а):
13.07.2022{, 18:05}
valdemar71 писал(а):
13.07.2022{, 18:02}
то как корректней проверять сборку строк JSON?
Выведите результат в UART и посмотрите что получилось после сборки.
Спасибо Вам большое! Буду пробовать!

valdemar71
Рядовой
Сообщения: 11
Зарегистрирован: 25.04.2022{, 15:45}
Репутация: 0
Имя: Владимир

JSON в программе FLProg.

#28

Сообщение valdemar71 » 14.07.2022{, 10:57}

Dryundel писал(а):
13.07.2022{, 18:05}
valdemar71 писал(а):
13.07.2022{, 18:02}
то как корректней проверять сборку строк JSON?
Выведите результат в UART и посмотрите что получилось после сборки.
Спасибо за совет, в UART отображается всё корректно. Блок работает отлично!
123321.png

leomaks
Рядовой
Сообщения: 23
Зарегистрирован: 26.11.2021{, 09:04}
Репутация: 0
Имя: макс

JSON в программе FLProg.

#29

Сообщение leomaks » 17.01.2023{, 14:56}

Можно ли попросить поправить блок "Извлечь данные JSON"?!
Хотелось бы чтоб параметры блока были входами,т.к. для импорта массива данных (a1, a2, ..., a200) надо плодить очень много блоков и в каждом менять Путь к данным ["a1"] ["a2"] ["a200"]

Аватара пользователя
rw6cm
Полковник
Сообщения: 2144
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 285
Имя: Владимир

JSON в программе FLProg.

#30

Сообщение rw6cm » 18.01.2023{, 07:49}

leomaks писал(а):
17.01.2023{, 14:56}
т.к. для импорта массива данных (a1, a2, ..., a200) надо плодить очень много блоков
Нужно из сроки json выбранный массив перекинуть в массив FLprog?
Или что то другое?
Win10-64, FLProg (portable)

leomaks
Рядовой
Сообщения: 23
Зарегистрирован: 26.11.2021{, 09:04}
Репутация: 0
Имя: макс

JSON в программе FLProg.

#31

Сообщение leomaks » 18.01.2023{, 19:49}

верно
И еще вопрос:
Снимок экрана 2023-01-20 211856.png
Симметричный мультивибратор 5 сек.
Если урл нерабочий - диод горит 5 сек, не горит 5 сек.
Если URL доступен - диод загорается постоянно
А в обоих случаях должна быть вспышка.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2144
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 285
Имя: Владимир

JSON в программе FLProg.

#32

Сообщение rw6cm » 21.01.2023{, 15:51}

leomaks писал(а):
18.01.2023{, 19:49}
И еще вопрос:
Что за контроллер? какой диод (встроен или внешка)?
Если это есп32 devkit v1 встроенный нельзя инвертировать, он завязан с флешь, ( по деф должен быть низкий)
По массиву вечером гляну.
Win10-64, FLProg (portable)

leomaks
Рядовой
Сообщения: 23
Зарегистрирован: 26.11.2021{, 09:04}
Репутация: 0
Имя: макс

JSON в программе FLProg.

#33

Сообщение leomaks » 21.01.2023{, 17:04}

Да, пытался использовать встроенный D2(LED), но он наверно не пропаян на плате и я припаял внешний к D2.
Сейчас перепаялся к D15 - вспышка есть, как и надо, спасибо.

Аватара пользователя
rw6cm
Полковник
Сообщения: 2144
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 285
Имя: Владимир

JSON в программе FLProg.

#34

Сообщение rw6cm » 21.01.2023{, 22:28}

Добавил к блоку "Извлечь данные JSON" возможность,
выбранный по имени из строки Json массив, перенести в массив FLProg.

Пример показывает возможность передачи данных в виде массива Json c одной есп на другую.
Обе есп подключены клиентами к WiFi роутеру. Между собой одна есп 8266 является сервером,
другая есп32 является клиентом. Описание вкратце есть в проекте.
Распарсить массив JSON.zip
(133.28 КБ) 3 скачивания
flp7.3.8 IDE 1.8.15 Json 6.18

П\с Не забываем, если в проекте использовались блоки "Извлечь данные JSON"
то заменять в проекте надо все блоки предыдущей версии на эту.
Win10-64, FLProg (portable)

Ответить

Вернуться в «Обучающие примеры работы в FLProg»