[AVR单片机] atmega8a串口发数据丢字节

[复制链接]
1946|9
 楼主| a20060341039 发表于 2013-12-6 11:59 | 显示全部楼层 |阅读模式
atmega8a出口发送一帧数据 , 最后两个字节丢失,请教?
huangxz 发表于 2013-12-6 17:48 | 显示全部楼层
有没有等发送完成标志啊?
 楼主| a20060341039 发表于 2013-12-6 18:03 | 显示全部楼层
huangxz 发表于 2013-12-6 17:48
有没有等发送完成标志啊?

有的,在上电主程序开始运行到while之前,比如发三帧数据,前两帧数据都帧常,第三帧就要丢两个字节,过后所有发的每一帧数据都是要丢两个字节。
huangxz 发表于 2013-12-6 22:46 | 显示全部楼层
a20060341039 发表于 2013-12-6 18:03
有的,在上电主程序开始运行到while之前,比如发三帧数据,前两帧数据都帧常,第三帧就要丢两个字节,过 ...

你是如果判断丢字节的,用示波器看来么
 楼主| a20060341039 发表于 2013-12-9 12:28 | 显示全部楼层
huangxz 发表于 2013-12-6 22:46
你是如果判断丢字节的,用示波器看来么

串口助手看的
XZL 发表于 2013-12-9 12:30 | 显示全部楼层
没有判断发送结束标志?或者接收速度跟不上?
huangxz 发表于 2013-12-9 17:14 | 显示全部楼层
a20060341039 发表于 2013-12-9 12:28
串口助手看的

好好看看你的程序,肯定有问题。
mega8很多人用过,没有出现过你的问题。
 楼主| a20060341039 发表于 2013-12-18 13:08 | 显示全部楼层
huangxz 发表于 2013-12-9 17:14
好好看看你的程序,肯定有问题。
mega8很多人用过,没有出现过你的问题。 ...

好多 谢谢
wolension 发表于 2013-12-21 09:16 | 显示全部楼层
**中有一种情况也可能出现这个现象,比如说连接485时可能会出现,因为检测到发送结束标志时,最后的一BYTE数据还是没有发完的,记得好象只发出去了3到4个BIT左右,要是此时立即把485转为接收的话,那么后面的几个BIT就是--单片机在发,但总线没有发的情况,那么接收的那边就会收不完整。
wolension 发表于 2013-12-21 09:19 | 显示全部楼层
补充一句,因为我用的是4800波特率,出现过上面这种情况,其他波特率没有测试,可能不具备普遍性。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

43

帖子

0

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