阅读:2418回复:2
【求助】串口过滤器驱动的奇怪问题
小弟刚解除驱动编程一个月,现在遇到一个难题,希望大大们不吝指教。
驱动的目的是将串口一的输入信息截获发给串口二,串口二接另一模块,该模块处理后返回数据,目前是原样返回。小弟用的龚建伟的串口调试助手2.2来往串口一写数据。 在虚拟机中测试时,直接往串口一写数据,接口模块返回的是255之类的数据,数据内容和大小都不对。但如果在串口调试助手中切换到串口二再切换回串口一,再往串口一写数据时接口模块返回就正确了。 在真正机器上测试时,往串口一写数据,接口模块返回的数据内容大小都不对,但返回数据都是0啊240啊之类的。 因为无论虚拟机中还是真正机器中,直接往串口二写数据都能原样返回,所以可以排除接口模块。 那么问题到底出在哪里啊,小弟很郁闷 |
|
沙发#
发布于:2008-07-15 15:48
问题已解决,原来是串口波特率设置的问题。驱动中用的SERIAL_BAUD_9600宏,但其实际值是2048,调试助手默认设置为9600。这样在切换串口前串口一的波特率是9600而串口二是2048,两个不同自然是无意义数据流
|
|
板凳#
发布于:2008-12-17 10:26
楼上这位大哥,现在我遇到一个问题,需要截获串口向设备发的数据,截获后解析里面的内容,然后添加上自己的数据,再发送给设备,不知道楼上大哥可否利用你现有的代码完成这项功能?谢谢,不吝赐教!
|
|