串口通信

[复制链接]
869|4
 楼主| poorhack 发表于 2015-3-13 15:37 | 显示全部楼层 |阅读模式
从上学到工作,我使用串口就从来没稳定过。
单片机一直发送这几个数给串口:A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA,用串口猎人接收,前两个A5和AA是帧头和帧尾。
正常情况下会接收到这样的数据:
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:22:45】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
程序里只调用了串口发送这个固定值的子程序,中断什么的都没开,可是当程序运行一段时间后,接收就乱了:

【3/13/2015 15:15:17】【<<<接收新帧】A5 02 2B 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 01 4D AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 6F 00 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 00 00 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 02 9A 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 9A 03 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 01 4D 01
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 00 00 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 9A 03 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 2B 02 6F 00 DE 01 4D 01 BC 02 2B 02 9A 01 4D AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 00 DE 01 4D 01
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 6F 00 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 00 00 00 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 9A 03 09 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 01 BC 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 00 00 6F 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01 4D 01 BC 02 2B 02 9A 03 09 AA
【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 03 09 AA

【3/13/2015 15:15:17】【<<<接收新帧】A5 00 00 00 6F 00 DE 01
过一会可能就又自动好了。。用的是内部晶振,我测过晶振频率,很稳定。
我啥也没做啊,这是怎么回事呢?
JY-DX-JY 发表于 2015-3-13 17:13 | 显示全部楼层
硬件、软件稳定性。
yklstudent 发表于 2015-3-13 20:21 | 显示全部楼层
换个串口工具软件试试呢
 楼主| poorhack 发表于 2015-3-16 13:30 | 显示全部楼层
yklstudent 发表于 2015-3-13 20:21
换个串口工具软件试试呢

恩,是串口工具的问题,我停止又启用后就好了。
NE5532 发表于 2015-3-16 20:27 | 显示全部楼层
1.换用丁丁的串口助手
2.“很稳定”是多稳定?串口要的是“频率准确”,而不是“频率稳定”
3.搞清本质,方可把产品做稳定
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

198

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部