完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
接手一个研发任务,使用的是STM8S003F3,这个产品需要接受约以40ms间隔发送并回复的485数据帧,帧长度为8字节到18字节不等,使用中发现STM8S003F3在如此短间隔内无法完全处理完所有的数据帧,也就是丢包。丢包率大概在1%左右,不知道有没有朋友遇到过这种情况并有解决的办法。由于设备比较特殊,预期丢包率不应该高于万分之一,通信模式为自定义协议 485 8bit 9600 1stopBit parity-none
|
|
相关推荐
1个回答
|
|
按照你的通讯参数,时间应该比较紧凑,特别是当数据接收和恢复都是18字节时,光通讯时间就大约消耗了38ms, 提供如下建议:
0. 如果条件允许,可把波特率提高一个档次; 1. 丢包,首先你要确认是数据没收到还是解析出错; 2. 使用中断接收,接收的数据放入缓存; 3. 读取缓存并解析数据,解析后的数据可以直接发送, 4. 增加数据包校验机制,如CRC8、CRC16等等,设置累加和也可以。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1683 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1582 浏览 1 评论
1013 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
703 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1627 浏览 2 评论
1892浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
675浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
538浏览 3评论
558浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
526浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 02:31 , Processed in 0.807568 second(s), Total 81, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号