Как узнать с какой скоростью (baud rate) устройство передаёт данные через com порт?
Всем привет.
Есть gps модуль, который, по документации, должен передавать NMEA сообщения на скорости 9600. Однако, есть подозрение, что это не так. Хотя бы потому, что на 9600 в терминале наблюдаю мусор из символов. Обычно это как раз и свидетельствует о неправильно выбранном baud rate. Проблема в том, что когда я меняю его и прочие параметры в терминале (parity, stop bits и т. д.) суть не меняется - всё равно приходит какая-то чушь.
Если абстрагироваться от того факта, что устройство может быть банально неисправно, как всё-таки проверить скорость? В принципе, мне неважно что посылает устройство, мне бы хотелось понять с какой скоростью оно это делает.
На windows не нашёл нормальной программы (есть Portmon, но он не работает на х64). Поднял vm с Ubuntu, там попробовал setserial 'portname' - a и stty < port. Они показали разные результаты...
Что можно ещё попробовать?
Заранее спасибо.
P.S
Я не имел ранее с подобным дела, так что даже не знаю как к этому подступиться. Основная задача именно скорость узнать и если она не 9600, перепрошить модуль.
Попробовать стандартные начиная с 300 бод - не вариант?
PS: при неправильно угаданной скорости вообще-то должно не мусор сыпать, а тупо ничего не писать ( нужно неслабое совпадение, чтобы пакет на неправильной скорости удалось декодировать )
PS: чем putty не устраивает? можно выбирать режимы портов по скорости и настройкам
Putty и пребрать скорости, начиная со 115200-8-N-1 xon/xoff
Эмуляция терминала - VT100, ANSI