захват необработанных данных в COM-порт

У меня есть передающее Bluetooth устройство, и мой компьютер (Windows 7) подключен к нему и настроен так, как если бы он был подключен через последовательный порт RS232 (COM4). Как я могу захватить необработанные данные, переданные устройством Bluetooth, или, что равнозначно, необработанные данные, полученные в COM4?

10 голосов | спросил user11395 20 PM00000060000004731 2012, 18:47:47

6 ответов


9

Вы можете использовать стандартную программу терминала для сбора данных в разных форматах. Я предлагаю использовать Терминал Брея , это очень просто и имеет множество возможностей!

Или вы хотите захватывать и интерпретировать данные в каком-то собственном приложении?

ответил Evert 20 PM00000070000002931 2012, 19:05:29
2

Лучшее решение, которое я нашел, хотя и немного грубовато, это Tera Term http: //ttssh2 .sourceforge.jp /index.html.en .

Брей не играет хорошо с Windows 8. Хотя невозможно сказать, что именно он делает без источника, похоже, что он делает некоторые предположения о расположении реестра.

portmon также не работал для меня в Windows 8.

ответил jkschneider 14 AM00000080000001431 2013, 08:06:14
2

Мой личный любимый эмулятор терминала для отладки RealTerm , который имеет приятный диапазон параметров отображения для встроенных систем , И RS-232, и TCP /IP работают нормально под Windows 7 x64 и ниже (я не пробовал под Win 8, но у меня нет причин думать, что это не сработает). Некоторые особенности, которые я считаю особенно полезными, следующие:

  • ASCII /HEX вид данных
  • Файлы захвата могут включать отметки времени
  • Существует простой способ отправки двоичных последовательностей данных
  • Штыри управления оборудованием могут легко отслеживаться /меняться

Существует также несколько других вариантов для I2C, SPI, Dallas 1-wire и GPIB. Я лично не использовал эти функции, но на странице SourceForge приведено хорошее резюме. Вот экранный снимок экрана основного экрана:

введите описание изображения здесь>> </p></body></html>

ответил PeterJ 14 PM00000080000000531 2013, 20:05:05
1

Я бы порекомендовал также bray, если вы не уверены в скорости передачи в бодах, откройте диспетчер оборудования, перейдите на COM-порты и выберите свойства, они перечислены там, хотя и не всегда точны.

ответил s3c 20 PM000000100000004231 2012, 22:29:42
1

portmon : инструмент sysinternals, который действует как datascope для COM-порты.

ответил Axeman 21 AM000000100000003731 2012, 10:33:37
1

В зависимости от ваших точных требований может оказаться полезным использовать микроконтроллер, который может захватывать и время штампа данных, а затем пересылать его на ПК. UART, исторически найденные на типичных ПК, имели возможность записывать точную информацию о времени или захватывать 9-битные данные, когда процессор захватывает каждый байт по мере его поступления без буферизации; более поздние операционные системы и драйверы, как правило, не оборудованы для этого, а чипы UART-USB безвыходны в этом отношении. Если ваш компьютер может получать данные с удвоенной скоростью передачи данных, вы можете получить микроконтроллер с байтами данных и для каждого байта отправить два байта. Первый байт должен иметь набор MSB, сообщать MSB (или два MSB, если 9 бит) входящих данных в следующий бит (ы), и использовать нижние 5 (или 4) бита для сообщения количества времени (0 -30 или 0-14) с середины стопового бита предыдущего байта (измеряется в единицах, например, один бит времени). Второй байт должен был очистить MSB и содержать оставшиеся 7 бит данных. Когда данные не передаются, символы стимуляции FF будут отправляться каждые 30 (или 14) бит раз. Таким образом, программное обеспечение, получающее эти отчеты, сможет очень точно (в течение одного бита) точно реконструировать точное время поступления данных. Если скорость передачи данных на ПК была в четыре раза выше контролируемой скорости передачи данных, можно было бы использовать эту общую схему для мультиплексирования двух каналов приема в один порт ПК (используйте бит байта заголовка, чтобы определить, содержит ли он данные для первого или второго порт). В то время как синхронизация вещей с точностью до одного битового времени может показаться чрезмерной, иногда это может быть полезно, особенно при мониторинге двух сторон линии связи (например, чтобы определить, сколько времени требуется одному устройству для ответа на данные, отправленные другим).

ответил supercat 14 PM00000070000002931 2013, 19:23:29

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132