完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
有一个采集卡需要发送指令01 04 00 40 00 02 70 1F 然后会得到指令如01 04 04 06 6A 06 12 05 EC,但是经常会变成05 EC 01 04 04 06 6A 06 12 或 06 12 05 EC 01 04 04 06 6A 这两种情况,这是为什么呢??求大神们指点!!!
|
|
相关推荐
11个回答
|
|
|
有干扰,
|
|
|
|
|
|
通信距离要短,太长的话就会出现乱码的现象
|
|
|
|
|
|
RS232的通信距离没有多长,建议可以采用RS422通信,这通个十米八米的都不是事
|
|
|
|
|
|
|
|
|
|
|
|
通讯距离50厘米左右,很短的 |
|
|
|
|
|
这种现象很正常。所以才会出现要求数据帧加帧头帧尾从而方便提取正确的数据的方法。如果你收到的数据长度固定,可以直接设置读取的字节数。这样就不会错了。
|
|
|
|
|
|
发送之后要延时吧
|
|
|
|
|
|
1.先说第二帧,只保留延时部分,最好延时100ms(根据设备回馈数据时间,适当增加),然后把属性节点放到第三帧。
2.第四帧去掉。延时可以不要,已经读取完了,没有再延时的必要。 |
|
|
|
|
|
如果距离远了可以降低波特率抗干扰
|
|
|
|
|
|
@风之追逐,正解,其他都是扯淡。
|
|
|
|
|
|
@风之追逐 正解,延时时间太短,上次数据还没有完全被串口接收,程序就已经执行完成,下一次通信时串口数据会继续被读取。两种方法,第一种增加延时,第二种,去掉所有延时,读函数单用一个while循环,用移位寄存器拼接保存读取的数据,并判断接收数据是否完成,完成则终止循环,再进入主循环中。
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
211 浏览 0 评论
请教大神,在labview里面对实时扫描资源中的C系列模块NI9234进行配置发生非预期错误
1709 浏览 0 评论
1585 浏览 0 评论
LABVIEW 2023 Q1调用python后一直报错1671
1960 浏览 2 评论
5207 浏览 3 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 15:27 , Processed in 0.654848 second(s), Total 63, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1853