使用串口转ps2连接线进行电脑与设备之间的连接,使用java往串口上面写数据,也使用了串口调试精灵或AccessPort进行测试,发送数据123456,可到了设备上变成了112233445566了,每个字符到了设备上就写了二次,得到的结果都一样,默认设置的波特率是9600,也尝试换了更高的波特率和奇偶校验位等等参数,但没有没有解决,我使用串口的目的是为了模拟键盘的人工输入,请各位大哥帮忙,问了很多的朋友,都没解决,急呀,需说明的是,通信线和程序在另一设备上的不同机型上面是正常运行的,
单片机和PC的串口通信应该是Uart通信吧。异步通信是使用预先设置好的波特率来同步信号的。所以看看单片机和PC串口的通信波特率是不是对不上。。
是不是在PC上接收到变成112233的?可能是PC端的接收设置错了,好像是选择了重复显示什么的
1;检查程序
2;检查线路
3;用PortMonNt
4;再写个程序接收PC发送的数据·
这个是硬件问题,我遇到过一次,现象和你一样。不过我的环境和你不一样,我用研华的工控机+多个ISA板卡,当其中一个板卡没有插在最后一个插槽删时主板删的串口就出现你说的现象,但如果把这个卡插在最后一个插槽上,就一切正常了。我咨询了研华的工程师,他们也没有给出一个答复,至今未解决!
问题的关键是:你的计算机上有没有什么添加的板卡或什么的,你可以怀疑一下它们。
我用PROTEUS仿真也出现过这个现象,不知道什么原因,期待中,一起学习