RS485通信-单独通不乱,到系统里就有乱码---从机回复过快乱码
来源:互联网 发布:农村淘宝店开店条件 编辑:程序博客网 时间:2024/06/12 08:46
RS485通信乱码有很多种,硬件和软件各种各样的情况,这里就说一种特别奇怪,但是又特别好玩的乱码。
我们指定RS485是半双工通信,这意味着同一个时间,总线上要么发,要么回,如果同时发和回,电平乱了,数据自然就乱了。在工作用遇到了一个问题,困扰了我2年,在没有示波器的情况下,困扰了我2年,一度以为是硬件设计电路的问题,后来才发现,不是这样的。
由于主机和从机都是我自己来写,在从机模块里,偷懒了,程序框架如此:
if(FLAG_RS485_RX)
{
RS485_SendData(data,len);
FLAG_RS485_RX=0;
}
这个逻辑有一个问题,FLAG_RS485_RX是接收标志,要知道CPU运算是非常快的,但是串口的速度肯定是毕不了CPU的速度的,这就导致了,串口中断接收是需要一定时间的,假设串口中断全部接收需要10T时间,那么在第一个T时间内FLAG_RS485_RX已经是1了,这个时候立马启动回发数据,自然就与上位机的发送指令打架了,数据也就乱了。
阅读全文
0 0
- RS485通信-单独通不乱,到系统里就有乱码---从机回复过快乱码
- 从Windows到Linux文件名乱码
- 从jsp页面保存到数据库乱码
- 从Linux系统拷贝的文本文件到windows下出现乱码
- windows下在Eclipse中启动的tomcat没有乱码,单独部署到tomcat下乱码解决方案
- 转-部署到AIX系统乱码问题
- 部署到AIX系统乱码问题
- 系统乱码
- 项目在eclipse运行正常,但单独部署到tomcat上出现乱码解决办法
- 项目在eclipse运行正常,但单独部署到tomcat上出现乱码解决办法
- RS485通信
- RS485通信
- QTcpSocket通信乱码解决方法
- socket通信乱码问题
- socket通信乱码问题
- USART输出乱码3F,RS485抄表
- 从sqlserver2000 取出数据insert 到Access 乱码
- 汉字从页面传递到后台出现乱码,解决方案
- 给组赋root权限
- sklearn(六)--------overfitting
- C++ Primer 学习笔记-基础知识(二)
- CentOS安装maven
- Angular2+ 管道学习第一篇
- RS485通信-单独通不乱,到系统里就有乱码---从机回复过快乱码
- python day04
- Java——Java集合Collections工具类
- List User Messages:列出用户消息
- 史上最全的 struts2 面试题
- cocos2dx-lua绑定自定义c++类(一)
- springboot整合swagger
- hdu 6121 Build a tree (图论)
- 链家笔试题总结