正在测试串行端口应用程序



我有一个将数据发送到串行端口的代码。我只想确保它正确发送数据。我检查了函数的返回值和写入的字节数,结果是成功的。有没有其他方法可以真正看到我正在写的数据?

if(WriteFile(m_hSerialComm, pszBuf, dwSize, &dwNumberOfBytesWritten, NULL) != 0)

我尝试使用"高级终端端口软件"

但数据并没有进入那个窗口。

有几种方法可以测试您的软件。如果你有两个串行端口,那么用电缆将它们连接起来,然后用你提到的终端应用程序在另一个端口上监听。否则,您可以通过将引脚2和3连接在一起,在同一端口上进行环路连接。一个无硬件的选择是使用com0com等工具提供的虚拟串行端口。

假设您的代码是在Microsoft Windows操作系统上开发的,我建议使用Portmon for Windows"官方"串行端口监控实用程序。我过去曾使用过它,发现它足够简单,而且特别适用于它的多个过滤/搜索选项(因为有时串行端口上传递的数据量很大)。

如果你想要的只是写入自己端口的数据的日志,为什么不将WriteFile(可能还有ReadFile)函数封装在一些"实用程序"函数中,这些函数可以在串行端口和日志文件中读取/写入?你甚至可以添加时间戳,并直接从你自己的代码中过滤"你想要的任何东西"。

我发现最后一个选项在与客户远程调试应用程序时非常有用。您在应用程序中添加了一个切换登录和关闭的按钮,然后您只需要求客户点击"日志"按钮并将结果发送给您。

最新更新