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

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

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

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
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

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

#22

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

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

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

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

#23

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

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

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

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

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

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
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

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

#26

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

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

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

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

#27

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

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

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

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
Рядовой
Сообщения: 24
Зарегистрирован: 26.11.2021{, 09:04}
Репутация: 0
Имя: макс

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

#29

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

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

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

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
Рядовой
Сообщения: 24
Зарегистрирован: 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
Полковник
Сообщения: 2283
Зарегистрирован: 06.09.2015{, 20:25}
Репутация: 334
Имя: Владимир

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

#32

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

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

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

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

#33

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

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

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

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

#34

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

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

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

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

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

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

#35

Сообщение Rovki » 06.04.2023{, 23:36}

Не подскажите ,а есть примеры как по HTTP отправлять JSON для есп8266 :smile427: .Спасибо
Электронщик до мозга костей и не только

waswas
Рядовой
Сообщения: 44
Зарегистрирован: 04.04.2023{, 18:39}
Репутация: 2
Имя: Вася

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

#36

Сообщение waswas » 06.04.2023{, 23:56}

Rovki писал(а):
06.04.2023{, 23:36}
Не подскажите ,а есть примеры как по HTTP отправлять JSON для есп8266
раздел спец адреса штатного веб интерфейса

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

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

#37

Сообщение Rovki » 07.04.2023{, 09:21}

waswas писал(а):
06.04.2023{, 23:56}
Rovki писал(а):
06.04.2023{, 23:36}
Не подскажите ,а есть примеры как по HTTP отправлять JSON для есп8266
раздел спец адреса штатного веб интерфейса
Не увидел спец адресов :smile427: только адреса страницы

Отправлено спустя 5 часов 13 минут 38 секунд:
Мне нужно что бы на запрос из браузера (клиента) http://IP/state.json сервер бы выдал ответ {'value':var} (json) , где -var переменная
Электронщик до мозга костей и не только

waswas
Рядовой
Сообщения: 44
Зарегистрирован: 04.04.2023{, 18:39}
Репутация: 2
Имя: Вася

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

#38

Сообщение waswas » 07.04.2023{, 14:59}

Rovki писал(а):
07.04.2023{, 14:35}
http://IP/state.json сервер бы выдал ответ {'value':var
вот блок:
ответ_на_GET_запрос.flp
(426.39 КБ) 53 скачивания

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

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

#39

Сообщение Rovki » 07.04.2023{, 21:36}

waswas писал(а):
07.04.2023{, 14:59}
Rovki писал(а):
07.04.2023{, 14:35}
http://IP/state.json сервер бы выдал ответ {'value':var
вот блок:

ответ_на_GET_запрос.flp
Спасибо, но включать штатный веб интерфейс не получится, там много чего вставляется в ответ лишнего ...

Отправлено спустя 10 минут 55 секунд:

Отправлено спустя 33 минуты 11 секунд:
waswas,
Спасибо большое , немного изменил схему и все пошло . С меня лицензия на hmi-kascada :yes:
Электронщик до мозга костей и не только

Ответить

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