485通讯 丢包多少可以接受,单片机通过485如何避免通信冲突比如要发送数据但是串口在接
来源:整理 编辑:亚灵电子网 2023-01-14 23:53:40
1,单片机通过485如何避免通信冲突比如要发送数据但是串口在接
单片机通过485通信, 属于准双向通讯,在接收时不能发送,上位机与下位机通讯,
一般为 上位机 发送 指令 或者 数据,下位机接收完成后 判断 是指令还是数据,
并返回 执行状态 和 数据。
就是 有接收完成 后 马上 返回数据 给 上位机。即 上位机与下位机的收发协议。
如果 随意发送数据,那肯定会乱套了。
2,请教一主多从的Rs485通讯丢包问题
个人几点看法:1:定时发送间隔延长试一试。2:如果单个485口性能不太好,也可能出现丢包现象,建议逐渐增加从机的个数试一试。

3,做485通信发送数据和接收数据不一样是什么原因
很正常啊,我们平常的网络应用主要是下载数据居多,上传的一般是信令和协议之类的数据,肯定是接收的数据要远远多于发送的数据,一般会有近一个数量级的差别首先 :51单片机在读取数据是要先赋值数据0xff! 其次 :中断接收是不需要延时的 直接读取! 最后:485接收 比如max485上有个控制脚 是要拉低的 另外:还有个波特率问题别搞错了 对照上面几个问题 你再试试 一般不会超出这些范围 祝你成功!
4,485通信出现丢包有可能的原因是什么
你需要抓一下485总线上的波形,看看在总线上你的发送状态切换为接收状态用了多少时间、对方从接收状态切换为发送状态用了多少时间,看看你这端操作到底有多不及时。此外需要确认你的控制信号是什么时刻发出的,对比看一下你的发送完成时间,分析一下延迟是程序导致的还是隔离光耦等物理导致的。如果上述都没问题,只能说明对方回发切换太快了,你当前设计的性能无法满足要求。要么更改设计缩短切换延迟,要么让与对方沟通通讯协议,添加适当的应答延迟(一般0.2-5ms,视通讯距离浮动)。
5,三菱FX2N485通信接收的数据和发送的是一样了怎么回事
增加接收数据区大小,可能在发送的数据之后就是应该接收的数据你好哦楼主~很高兴看到你的问题。但是又很遗憾到现在还没有人回答你的问题。也可能你现在已经在别的地方找到了答案,那就得恭喜你啦。对于你的问题我爱莫能助!可能是你问的问题有些专业了,或者别人没有遇到或者接触过你的问题,所以帮不了你。建议你去问题的相关论坛去求助,那里的人通常比较多,也会比较热心,能快点帮你解决问题。快过年了,最后祝您全家幸福健康快乐每一天!
6,关于485 丢包的事
有两个端的设备发送数据的时候就会丢包,但软件是不知道数据已经丢包了。 通过 crc16 检验,可以断定数据是否丢包,但这个要在数据包读完后才进行。 当陪到丢包的位置在数据长度上面,比如长度变得特别大的时候, 这时候串口就一直读一直读,就是读不到完整的包,在API上表现就是超时了。 通过DEBUG信息,可以看到数据被读取了,但是无法解析。 一个简单的解决方法就是读到数据后进行超时操作,比如超过 2 秒没有读到数据, 那么就是丢包了。 丢包后,重启串口就可以了,就可以恢复,通过这种方式来及时发现丢包问题。
7,232和485接收数据不一致
232是全双工,485是半双工,232是可以同时收发数据的,而485只能等数据发送完之后才可以接收的,这个是有区别的,你在协议的时候要分清楚,要不然肯定会出现乱码。 RS-232接口由于采用单端非差分电路,只能支持点对点数据通信,由于其线路共用接地线,导致其通信距离短,一般只用于计算机与设备的短距通信,而RS-485由于采用差分平衡电路,传输距离可以达到1200米(如通过485中继器延长通信距离,通信距离可以成倍的增加),并支持多点通信,被大规模的应用于工业数据通信(一般计算机都没有RS-485接口,只有标配RS-232接口,如需利用计算机控制RS-485总线网络,则需要深圳市鼎信鸿达科技有限公司485转换器将其做相应转换)。
8,485转232串口接到电脑上和232串口直接接到电脑上接收数据时
看你怎么说,485可以支持多个设备轮询,如果是多个设备在同一个485网络中,采用轮询机制,肯定会有延时。如果只是单个的485设备通信,由于其是半双工通信模式,电脑下发数据下去之后,需要等待一定的时间,等下位机上传数据之后,才可以再次下发数据,而232是全双工,可以同时收发数据,肯定时间更快。如果只是一次数据的通信,由于现有的232转485设备都是采用纯硬件设计,零延时,单次通信接收数据的时间最多都是微秒级别的延时,基本上可以忽略。可以说是一样的。485通信的问题你可以参考一下下面的链接,看看所谓的轮询机制了解一下http://www.485-can-tcp.com/technology/232485/agreement.htm说的什么时间?转换 485 传输一般是 远距离传输如果是近距离,没有必要转换波特率 高!一般 电脑可以设置的 最高 128000当然,这个 得 硬件支持 才行!语言嘛,常用的 都可以吧 vc++ vb c# delphi 等等
9,两个51单片机485串口通信接收数据出错原因大概发送三五次会有
1.有人在发送数据之前,先关闭了串口中断!等待发送完毕后,再打开串口中断。这样,在发送数据的等待期间内,如果收到了数据,将不能进入中断函数,也就不会保存的这个新收到的数据。这种处理方法,就会遗漏收到的数据。2.有人在发送数据之前,并没有关闭串口中断,当 TI = 1 时,是可以进入中断程序的。但是,却在中断函数中,将 TI 清零!这样,在主函数中的while(TI ==0);,将永远等不到发送结束的标志。3.还有人在中断程序中,并没有区分中断的来源,反而让发送引起的中断,执行了接收中断的程序。对此,做而论道发表自己常用的方法:接收数据时,使用“中断方式”,清除 RI 后,用一个变量通知主函数,收到新数据。发送数据时,也用“中断方式”,清除 TI 后,用另一个变量通知主函数,数据发送完毕。这样一来,收、发两者基本一致,编写程序也很规范、易懂。更重要的是,主函数中,不用在那儿死等发送完毕,可以有更多的时间查看其它的标志。最近在做一个类似的实验,一开始总是出错,单片机用的12MHz晶振,设置9600的波特率,误差很大,每个字节的高四的经常出错。后来把波特率设置为4800,修改计数器T1的初值F3,这个精度更高,居然没有出错了。希望有人可以借鉴一下。按你说的,要看你的数据长度及波特率,有可能是发送频率过快。注意一下你的发送端的数据长度以及发送频率
10,485通讯有什么规定
RS-485接口支持点对多点通信,半双工通信模式,由于485是半双工通信模式,就必须要解决数据流向问题,就像某条铁路可以双向通车,为了防止撞车追尾等事故的发生,必须要通过相应的调度来解决该问题,同样的道理,由于支持点对多点通信,也必须要通过主机进行相应的调度来解决该问题,而且主机对于整个总线必须具有绝对的控制权。关于485通信问题,我们利用老师在教室讲课作为例子来说明。
我们假设老师作为RS-485总线的主机,而学生作为485总线的从设备,而学生的学号则是从设备的地址码。老师对于整个课堂具有绝对的掌控力,一般来说,老师在上课之前会对学生进行点名以确实学生是否有缺课的,同样的道理,RS-485总线的主机一开始也会对从设备进行一次轮询,逐个地址码去询问设备是否正常并且对相关情况做个记录,防止在正常通信的时候不断呼叫并不存在的地址码而导致通信效率下降。主机对于从设备的控制是利用广播方式发送下去的,而从设备只对含有自己地址码的指令做相关的回应,在从设备做回应的情况下,其他的从设备和主机保持沉默,当从设备执行完相关指令之后,发送完毕信号给主机,主机继续执行下一条指令。就像老师在课堂讲课的时候,指定某个学生回答问题,学生回答问题过程中,其他学生和老师保持沉默,不容许课堂上有讲小话的情况,只有当学生回答完问题之后并且告知老师自己回答完毕,老师才会继续讲课或者指令另外的学生做相应的动作。485协议的编程基于上面的思路编写。
RS-485总线协议对于意外情况的处理,当485总线主机对其从设备发送相关的指令的时候,从设备可能会因为种种原因而不执行相关指令的情况,比如从设备在使用过程中损坏而不能回应相关指令,主机一般都会设定一个时延,在设定的时间之内得不到相关从设备的回应,其应该做相应的记录并且执行下一条指令。就像老师点名要求某个学生回答问题,而没有得到相应的回应,点名三次之后,还是没有回应,对于该学生的缺课做相关的记录,然后继续下面的课程。
关于485总线线路另外的一些问题也可以用老师讲课来做比喻,如老师讲课过程中,外面的噪音非常的大,从而导致学生听不到,那就需要加扩音器,对于485总线而言,就是外部干扰过大,导致衰减的485信号淹没在噪声中,需要增加485中继器中继还原相关信号再次传输,同样的道理,如果教室过大,导致老师说的话并不能传到最后面的学生处,也是增加扩音器来解决问题,当485总线传输距离过长的时候,也是通过485中继器放大信号延长传输距离,还有就是如果讲课过程中,产生了混音的情况有可能会导致整个课堂都听不清楚,就将其划分为多个小教室,通过多个广播将老师的声音分别传入各个教室,使其不混杂都能够听清楚,如果将多个RS-485总线简单的按照星型连接或者树形连接方式连接,就会产生信号反射等问题,就必须采用485集线器或者 485中继器将其相互隔离,独立驱动,不会相互影响,从而保证485通信的稳定性。
文章TAG:
485通讯通讯 丢包 多少
相关文章推荐
- 电压环路响应速度,电源环路响应
- 红外遥控音乐插座电路,智能红外遥控插座怎么设置?
- 单差分电路图,差分通道单端输出
- 电路板油脂用什么,油性电路板
- 射频mos驱动电路,MOS开关电路怎么接?
- 电路中编码器,编码器电路分析
- 怎样快速检测电路板,如何快速检测电路板的质量?
- 6264芯片功能作用,HI6422芯片功能
- 六米高的图腾柱多少钱,DNF 牛头统帅的图腾柱谁能告诉我确切的价格是多少急用
- 太阳能模拟电路,模拟太阳能热水器实验
- hsma有多少接口,AMD的CPU一共有多少种接口列举出来谢啦
- k60芯片是多少位的处理器,飞思卡尔为什么很多人都选s12k60啊他们有什么优点啊又有coldfire怎
- 1px等于多少pt,1px等于多少年pt
- 双电路电梯什么意思,电梯双环是什么意思?
- 一般变压器的负载损耗占总损耗的百分之多少,10kvA变压器损耗占总电量的百分之几