串口通信(模拟键盘输入):往串口发送数据12345,到了设备上就变成了1122334455,

hflf35   2009-5-15 08:16 楼主
使用串口转ps2连接线进行电脑与设备之间的连接,使用java往串口上面写数据,也使用了串口调试精灵或AccessPort进行测试,发送数据123456,可到了设备上变成了112233445566了,每个字符到了设备上就写了二次,得到的结果都一样,默认设置的波特率是9600,也尝试换了更高的波特率和奇偶校验位等等参数,但没有没有解决,我使用串口的目的是为了模拟键盘的人工输入,请各位大哥帮忙,问了很多的朋友,都没解决,急呀,需说明的是,通信线和程序在另一设备上的不同机型上面是正常运行的,

回复评论 (14)

可惜没分了,否则也不置于使问题石沉海底了
点赞  2009-5-15 13:17
关注中
点赞  2009-5-16 11:27
用示波器看看,是不是2个
点赞  2009-5-16 13:15
不懂帮顶
点赞  2009-5-18 11:29
单片机和PC的串口通信应该是Uart通信吧。异步通信是使用预先设置好的波特率来同步信号的。所以看看单片机和PC串口的通信波特率是不是对不上。。
点赞  2009-5-18 11:55
是不是在PC上接收到变成112233的?可能是PC端的接收设置错了,好像是选择了重复显示什么的
点赞  2009-5-18 23:01
1;检查程序
2;检查线路
3;用PortMonNt
4;再写个程序接收PC发送的数据·
点赞  2009-5-19 13:32
楼主应该把程序贴出来!大家看也能帮你看个究竟啊。
点赞  2009-5-22 12:34
这个是硬件问题,我遇到过一次,现象和你一样。不过我的环境和你不一样,我用研华的工控机+多个ISA板卡,当其中一个板卡没有插在最后一个插槽删时主板删的串口就出现你说的现象,但如果把这个卡插在最后一个插槽上,就一切正常了。我咨询了研华的工程师,他们也没有给出一个答复,至今未解决!

问题的关键是:你的计算机上有没有什么添加的板卡或什么的,你可以怀疑一下它们。
点赞  2009-5-23 21:27
是不是有回显啊。。。用示波器看看
点赞  2009-5-23 22:44
造成回显的原因是什么?能讲解一下吗?
点赞  2009-5-24 22:36
我用PROTEUS仿真也出现过这个现象,不知道什么原因,期待中,一起学习
点赞  2009-5-25 09:57
同步信号没有处理好,所存控制信号有可能是两个
点赞  2009-5-29 21:30
楼上的能详细一点吗?
点赞  2009-6-1 11:51
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复