3795|13

9

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

求教:华大芯片HC32F460使用usart转RS485存在的误码率怎么处理呢? [复制链接]

 
 

图示为逻辑分析仪采集485芯片前的信号,CS信号没有包裹整段TX帧。设置CS上下拉是在发送前后设置的。

最新回复

115200bps对485算不算快,得看总线距离和路况,就多数现场条件而言,着实不算慢了,对总线线路规划、信号畸变率、波特率精度和抗干扰性等都有不低的要求。误码率高就从前述几个方面去查找原因,可以先降低波特率测试,逐步提高,直至速率和误码率满足要求。   详情 回复 发表于 2021-7-14 14:18
点赞 关注
 
 

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

不一定是华大单片机本身问题

比如考虑好程序的帧纠错

在485通讯中发送速度快了容易丢包,接收就更容易丢包 发送里面怎么设置重发机制,建议在发送使能进行有效后的延时

点评

使用115200,也不是很快吧,485丢包,在哪个地方丢呢?看波形,在485通讯器前都是正常的,过了485通讯器,经过usb转到电脑端,这段不太好查。  详情 回复 发表于 2021-7-14 09:22
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
Jacktang 发表于 2021-7-13 20:26 不一定是华大单片机本身问题 比如考虑好程序的帧纠错 在485通讯中发送速度快了容易丢包,接收就更容 ...

你好,谢谢回复,上面这个图的确是配置问题,控制485的cs引脚前,需要等待发送完成标志位。最开始直接用例程测试导致出的问题。

 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

4
 
本帖最后由 fengzc 于 2021-7-14 09:09 编辑

上面那个问题解决后,测试用mcu发送01,上位机接收,发现存在81的误码,分析仪看波形都挺正常的,不知道这个有什么原因么?
 


 

image.png (83.71 KB, 下载次数: 0)

image.png

image.png (10.59 KB, 下载次数: 0)

image.png

image.png (10.59 KB, 下载次数: 0)

image.png
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

5
 
Jacktang 发表于 2021-7-13 20:26 不一定是华大单片机本身问题 比如考虑好程序的帧纠错 在485通讯中发送速度快了容易丢包,接收就更容 ...

使用115200,也不是很快吧,485丢包,在哪个地方丢呢?看波形,在485通讯器前都是正常的,过了485通讯器,经过usb转到电脑端,这段不太好查。

点评

直接测量单片机输出,和经过单片机处的485芯片后的输出都是正常的吗?  详情 回复 发表于 2021-7-14 09:30
 
 
 

回复

9713

帖子

24

TA的资源

版主

6
 
fengzc 发表于 2021-7-14 09:22 使用115200,也不是很快吧,485丢包,在哪个地方丢呢?看波形,在485通讯器前都是正常的,过了485通讯器 ...

直接测量单片机输出,和经过单片机处的485芯片后的输出都是正常的吗?

点评

是的,485芯片前后(SP3485的1、4、6、7)看波形都是正常的。115200,每隔30ms发送一次01,调试助手大部分是01,偶尔冒出81。。。  详情 回复 发表于 2021-7-14 09:50
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

7
 
littleshrimp 发表于 2021-7-14 09:30 直接测量单片机输出,和经过单片机处的485芯片后的输出都是正常的吗?

是的,485芯片前后(SP3485的1、4、6、7)看波形都是正常的。115200,每隔30ms发送一次01,调试助手大部分是01,偶尔冒出81。。。

 
 
 

回复

9713

帖子

24

TA的资源

版主

8
 

从这方面看不像是单片机这部分的问题,这种情况有可能是波特率不匹配 或者你的USB 485收发器问题。
你试试将两个都设置成9600看看

点评

谢谢回复啦  详情 回复 发表于 2021-7-14 10:24
是的,我这边换了一个485转换器,跑了几分钟,是正常的​​​​​​​,刚做了个测试板,让它俩跑一天看看,有没有问题。  详情 回复 发表于 2021-7-14 10:23
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

9
 
littleshrimp 发表于 2021-7-14 10:02 从这方面看不像是单片机这部分的问题,这种情况有可能是波特率不匹配 或者你的USB 485收发器问题。你试试将 ...

是的,我这边换了一个485转换器,跑了几分钟,是正常的​​​​​​​,刚做了个测试板,让它俩跑一天看看,有没有问题。

点评

和有问题的对比一下 波特率匹配要多试试查找一下,或者硬件连接地方也查一下  详情 回复 发表于 2021-7-14 11:28
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

10
 
littleshrimp 发表于 2021-7-14 10:02 从这方面看不像是单片机这部分的问题,这种情况有可能是波特率不匹配 或者你的USB 485收发器问题。你试试将 ...

谢谢回复啦

 
 
 

回复

6587

帖子

0

TA的资源

五彩晶圆(高级)

11
 
fengzc 发表于 2021-7-14 10:23 是的,我这边换了一个485转换器,跑了几分钟,是正常的​​​​​​̴ ...

和有问题的对比一下

波特率匹配要多试试查找一下,或者硬件连接地方也查一下

点评

嗯嗯,之前也考虑到了。后来从mcu到485端子排上的波形信号都ok了,就换个485通讯器,结果耐久到现在,大概4小时都通讯正常了,不得不确定是这个通讯转换器出问题了  详情 回复 发表于 2021-7-14 14:39
 
 
 

回复

1万

帖子

142

TA的资源

版主

12
 

115200bps对485算不算快,得看总线距离和路况,就多数现场条件而言,着实不算慢了,对总线线路规划、信号畸变率、波特率精度和抗干扰性等都有不低的要求。误码率高就从前述几个方面去查找原因,可以先降低波特率测试,逐步提高,直至速率和误码率满足要求。

点评

好的,谢谢,问题已经解决了。在代码层面,华大提供的例程使用“发送寄存器为空”,然后就切换cs线,但实际应该等待“发送完成”,再切换cs线,这里没注意到。硬件层面,由于是测试环境,只有1~  详情 回复 发表于 2021-7-14 14:45
个人签名上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

13
 
Jacktang 发表于 2021-7-14 11:28 和有问题的对比一下 波特率匹配要多试试查找一下,或者硬件连接地方也查一下

嗯嗯,之前也考虑到了。后来从mcu到485端子排上的波形信号都ok了,就换个485通讯器,结果耐久到现在,大概4小时都通讯正常了,不得不确定是这个通讯转换器出问题了

 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

14
 
chunyang 发表于 2021-7-14 14:18 115200bps对485算不算快,得看总线距离和路况,就多数现场条件而言,着实不算慢了,对总线线路规划、信号畸 ...

好的,谢谢,问题已经解决了。在代码层面,华大提供的例程使用“发送寄存器为空”,然后就切换cs线,但实际应该等待“发送完成”,再切换cs线,这里没注意到。硬件层面,由于是测试环境,只有1~2m距离,波形问题解决后存在的误码率,也通过降低波特率测试过,仍然存在,后切换485通讯器,耐久到现在都正常了。只能说测试环境下,测试工具也需要保养啊,不然也是个坑。

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表