STM8串口接收问题 大神来!

STM8串口接收问题 大神来!,第1张

串口设置如下 波特率115200,8位1停止位,无校验。当我连续发一组数据时(如12个字节),接受BUF里可以正确接收前9个字节,到第10个至12时出现与第9个字节相同。如下所示:我本来应当发送0XAB 0XCD 0X00 0X05 0X00 0X00 0X00 0X06 0X07 0X08 0XFE 0XFF,可结果接收的是0XAB 0XCD 0X00 0X05 0X00 0X00 0X00 0X06 0X07 0X07 0X07 0X07。

如果单一字节逐步发送,则全部接收正确。

我就说说最可能的吧

第一个是环境,如果在会场,多功能厅,等等红外编码到处飞的地方,可能红外编码会串到一块去。。。这样基本无解

第二个检查连线问题,特别是信号线

第三个。下一个红外库吧,用里面的示例程序试一试

实在不行就换遥控器。。

cai na yi xia ba

“我并非一点基础也没有”

很遗憾,从你提的这三个问题来看,你的基础比0只多出一点点。

(1)Tc是个16位整型。这是16位整型的基本算法。Tc保存的是抓出的脉宽。

(2)引导码就是指定宽度的脉冲,数据码是短一些的脉冲——所以才会那么大费周章地抓脉宽判断是引导码还是用户码。接收是否反相要查你所用接收头的手册,有可能跟你的程序是相反的。

(3)m不是字节序号而是位序号。注意前面的/8。

加油啊


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11129790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存