amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
查看: 534|回复: 4

STC12C5A16S2串口通信,串口2丢失首字节

[复制链接]
发表于 2015-1-18 14:51:11 | 显示全部楼层 |阅读模式
一个下位机,用的MCU是STC12C5A16S2,串口1用来读取传感器的数值,串口2向上位机发送数据;上位机发送询问命令,串口2才会向上发送数据,通信用的是485,奇校验,有个奇怪现象:板子上电后,上位机第1次询问,下位机应该回复12个字节,但是总是丢失第1个字节,回复11个字节。接下来上位机询问,下位机传的都正确。只是断电,上电后,首字节老是丢失,有碰到这种情况的吗?
发送的数据放在一个数组里,txdata[12],如果换成无校验,上电后首字节不会丢失,同一个硬件;如果校验写错了,其它数据应该也是错的呀,或者收到不到。
有遇到这种情况的吗?谢谢。
发表于 2015-1-26 10:55:06 | 显示全部楼层
下位机接收到数据以后,延迟一下再发送吧。也许485没有转换过来呢
发表于 2015-1-26 10:59:19 | 显示全部楼层
这个串口并非是原生串口,是模拟出来的,不稳定,好像有批量问题规律,曾经接触过,有一批芯片基本全换。
发表于 2015-1-26 12:34:22 | 显示全部楼层
STC12C5A16S2两个串口都是硬件串口,怎么有人说是模拟的呢?

LZ可以使用STC官网上的双串口例程测试,这种情况多是因为应用的问题。

http://www.stcmcu.com/STC12C5Axx-code.rar
 楼主| 发表于 2015-1-26 14:05:53 | 显示全部楼层
小李非刀 发表于 2015-1-26 12:34
STC12C5A16S2两个串口都是硬件串口,怎么有人说是模拟的呢?

LZ可以使用STC官网上的双串口例程测试,这种 ...

需发送个空字符,不往发送区写字符,然后while...发送完毕。
算是先清空发送缓冲区吧。
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 公安备案:44190002001997(交互式论坛) 工信部备案:粤ICP备09047143号 )

GMT+8, 2019-8-23 14:03

阿莫电子论坛, 原"中国电子开发网"

© 2004-2018 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表