STC单片机串口通信为什么上电后会多发出一串字节,后面的数据就一切正常了
如图所示,当单片机接收到1时,单片机会发送一串18个字节的数据,但第一次接收到的数据有36个字节,第一串数据是多余的,后面的数据就全都是正常的了...
如图所示,当单片机接收到1时,单片机会发送一串18个字节的数据,但第一次接收到的数据有36个字节,第一串数据是多余的,后面的数据就全都是正常的了
展开
2个回答
展开全部
STC单片机串口通信上电后会多发出一串字节,后面的数据就一切正常了。
出现这种情况估计是你的单片机直接连到写入器上了,由编程器直接供电,而单片机程序启动阶段没有加延时。写入器连接到USB口会有一个初始化过程,串口有数据输出,被单片机误接收了。
解决方法:
1、单片机程序启动阶段加1到2秒延时,躲过初始化数据。
2、单片机串口实行队列接收,只有整个队列符合特征才发送。串口助手发送端按队列发送。
3、单片机单独供电。
出现这种情况估计是你的单片机直接连到写入器上了,由编程器直接供电,而单片机程序启动阶段没有加延时。写入器连接到USB口会有一个初始化过程,串口有数据输出,被单片机误接收了。
解决方法:
1、单片机程序启动阶段加1到2秒延时,躲过初始化数据。
2、单片机串口实行队列接收,只有整个队列符合特征才发送。串口助手发送端按队列发送。
3、单片机单独供电。
追问
我的问题已解决,不过还是要谢谢你。单片机在收发数据函数里,把中断关了就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询