ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
29 июля
1366886 Топик полностью
Eddy_Em (30.10.2023 11:05, просмотров: 137) ответил lloyd на Вы по CAN тоже JSON гоняете? То-то. Когда параметров в системе переваливает за тысячу, и они довольно часто обновляются - текстовые протоколы идут лесом или слабенький арм начинает лагать. Для пользовательского взаимодействия - на здоровье (HTTP), для внутрисистемных задач - это дичь, есть более производительные форматы упаковки данных
Откуда вообще взялся JSON? 

Я JSON гоняю исключительно между компами при взаимодействии через сокеты. А на МК - простой текстовый протокол вида "параметр=значение\n" (сеттер, а геттер или команда без аргумента - просто "параметр\n"). И зачем позволять пользователю 100500 параметров менять? Ну не может их быть больше нескольких десятков (ну, может, сотни). Тем более - частое обновление параметров. Параметр - такая штука, которую ты один раз настроил, сохранил в EEPROM или FLASH, и забыл. А команды - да, гоняешь постоянно туда-сюда.

И повторю: бинарные протоколы нужны крайне редко. Лишь там, где нужно уж очень часто (скажем, 10 тысяч раз в секунду) гонять данные, либо где очень большие объемы данных (скажем, изображение в 16Мпикс; да и то, в этом случае всякие команды типа задания экспозиции и т.п. идут как текст).

eddy-em.livejournal.com github.com/eddyem