-
- Значит, ещё что-то есть. А как должен выглядеть полный пакет? - evgeniy1294(15.02.2023 14:50)
- "$RSST,3,0*05\r\n" с интервалом примерно 0,8 сек. - mr-x(15.02.2023 15:02)
- Между пакетами данных приличная пауза, возможно поэтому такой
результат. Если так, то проблема решается введением понятия Делиметры - признаки начала/конца пакета. На первый взгляд их внедрение
может показаться простым, но на самом деле возможных вариантов
использования много, а нужно учесть все. evgeniy1294(115 знак., 15.02.2023 14:54)
- По какому событию строка отправляется на экран? По времени? Нельзя
ли это событие откладывать до тех пор, пока в потоке принимаемых
данных не случится пауза длительностью в N байт на данной скорости?
P.S. Bluetooth на пути, возможно, может подкинуть сюрпризов с
паузами, но заменив N на M наверно можно это скомпенсировать. - mr-x(15.02.2023 15:11 - 15:24)
- Сейчас все работает по отсечке порта, нужно вводить систему
делиметров, без неё никак. Делиметром может быть время, размер
пакета или какие-то последовательности байт. - evgeniy1294(15.02.2023 15:22)
- Достаточно по времени и/или концу строки. В SerIO выбирается 10,
50, 100, 200, 500мс, но увы, нет бесконечности и при \r получается
лишняя пустая строка, причем \r\n == \r. Зато там имени порта есть
производитель, удобно. Если не сложно, просьба добавить. - Andreas(15.02.2023 18:25)
- Описание для com-портов уже добавлено в версии 1.0.1 . Ссылка в
шапке темы обновлена evgeniy1294(1 знак., 15.02.2023 19:27, картинка)
- Там только название порта без изготовителя. См скрин Andreas(1 знак., 15.02.2023 19:31, картинка)
- Описание для com-портов уже добавлено в версии 1.0.1 . Ссылка в
шапке темы обновлена evgeniy1294(1 знак., 15.02.2023 19:27, картинка)
- Ок. Отсечка по коду перевода строки всё бы исправила. - mr-x(15.02.2023 15:33)
- А это и есть делиметр. Признак - конец строки - evgeniy1294(15.02.2023 15:38)
- Понятно. Вот вам ещё, не чтобы придраться, а в качестве обратной связи. Это GPS-Bluetooth модуль. Раз в секунду выдаёт несколько строк. mr-x(35 знак., 15.02.2023 16:14, картинка, картинка)
- А это и есть делиметр. Признак - конец строки - evgeniy1294(15.02.2023 15:38)
- Достаточно по времени и/или концу строки. В SerIO выбирается 10,
50, 100, 200, 500мс, но увы, нет бесконечности и при \r получается
лишняя пустая строка, причем \r\n == \r. Зато там имени порта есть
производитель, удобно. Если не сложно, просьба добавить. - Andreas(15.02.2023 18:25)
- Сейчас все работает по отсечке порта, нужно вводить систему
делиметров, без неё никак. Делиметром может быть время, размер
пакета или какие-то последовательности байт. - evgeniy1294(15.02.2023 15:22)
- По какому событию строка отправляется на экран? По времени? Нельзя
ли это событие откладывать до тех пор, пока в потоке принимаемых
данных не случится пауза длительностью в N байт на данной скорости?
P.S. Bluetooth на пути, возможно, может подкинуть сюрпризов с
паузами, но заменив N на M наверно можно это скомпенсировать. - mr-x(15.02.2023 15:11 - 15:24)
- Значит, ещё что-то есть. А как должен выглядеть полный пакет? - evgeniy1294(15.02.2023 14:50)