Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Modbus
FreeModbus丢包问题,对官方库进行追踪排查
发布于 2019-06-06 13:22:42 浏览:3302
订阅该版
* 本帖最后由 sober 于 2019-6-6 16:37 编辑 * 主机给从机发送poll(01 03 00 00 00 0A C5 CD),偶尔有几包数据没回复,不知道有没有遇到相同问题 ![poll.png](/uploads/201906/06/131955g5pdppapvs3ukvkx.png) ![send.png](/uploads/201906/06/132103a1zpl9al67hlc9u6.png) **注意问题:** 1、系统滴答时钟保证为1ms,Tick frequency 配置为1000 ![tick.png](/uploads/201906/06/162312r244crzpyw4yw4w4.png) a、freeModbus的定时器时间必须准确,接收串行数据是通过定时器触发接收的,大于19200的波特率的定时器配置为1750us,定时器配置的时间为2.75ms,最终为2ms配置 ![time.png](/uploads/201906/06/162652ctbjaib2fbfflrie.png) ![timer.png](/uploads/201906/06/162656xqa7585vq385p75n.png) **问题追踪和解决:** 1、通过排查发现出错没有回复的数据是CRC16校验出错 a、接收到串口接收数据的触发事件,数据缓冲中的数据不对,我发送的数据为(01 03 00 00 00 0A C5 CD) ![crc16.png](/uploads/201906/06/161925sxqbbbraeksxrr4d.png) ![recive_data.png](/uploads/201906/06/161929jiw11sjldn2z0uz6.png) **问题持续排查解决更新中,请等待......**
查看更多
16
个回答
默认排序
按发布时间排序
WillianChan
2019-08-19
-
期待楼主的更新
左耳朵的耗子
2019-08-19
这家伙很懒,什么也没写!
我前一段时间也测试了freemodbus,主从机都设置了,定时器滴答必须设置为1000,否则软件定时器不准确,导致数据丢包,我测试使用的是RS232,循环测试过,波特率在19200,9600,115200这三个波特率,循环时间设置为20ms,测试了几十分钟发现没什么问题啊,没发现丢包出错的现象,直接用自带的历程在32上跑的,不过没有什么其他任务,就只有modbus协议栈而已。
chudy
2019-09-06
这家伙很懒,什么也没写!
>我前一段时间也测试了freemodbus,主从机都设置了,定时器滴答必须设置为1000,否则软件定时器不准确,导致 ... --- 我的任务比较多,串口设备也比较多,波特率低了就不行了,一直解决不了
shanqs
2019-09-09
这家伙很懒,什么也没写!
我跟你的现象一样,看了一下源码,默认modbus slave例子用的是115200 8bit 1stop even偶校验。改了可以通信了,但是实时性比较差,不知道如何修改。看了一下有一个circle_time=200,不知道与这个有没有关系
KiraVerSace
2019-11-27
这家伙很懒,什么也没写!
楼主问题解决了吗 我们可以一起研究下 提供一些思路
yaomo718
2019-11-27
这家伙很懒,什么也没写!
>楼主问题解决了吗 我们可以一起研究下 提供一些思路 --- 我用libmodbus挺稳定的。
sync
2019-11-27
这家伙很懒,什么也没写!
赞下libmodbus
KiraVerSace
2019-11-27
这家伙很懒,什么也没写!
>我用libmodbus挺稳定的。 --- 这不是解决问题的思路 这个有问题也要去解决掉
yaomo718
2019-11-27
这家伙很懒,什么也没写!
>这不是解决问题的思路 这个有问题也要去解决掉 --- 找到问题当然最好。我是怕你什么项目上急用,问题一时又找不到,所以提个替补方案。
whj467467222
认证专家
2019-11-27
开源,分享,交流,共同进步
>找到问题当然最好。我是怕你什么项目上急用,问题一时又找不到,所以提个替补方案。 ... --- libmodbus rtu模式中,如果你没改源码的情况下 波特率低于115200 一次读取长度是大于50,读取一次时间小于50ms 就会有超时的现象。
撰写答案
登录
注册新账号
关注者
0
被浏览
3.3k
关于作者
sober
这家伙很懒,什么也没写!
提问
18
回答
59
被采纳
0
关注TA
发私信
相关问题
1
ModbusRTU协议栈漏发送最后一个字节
2
3.0 增加freemodbus,编译不过
3
RT_THREAD上面的串口MODBUSRTU为啥没功能码?
4
关于 freemodbus 里存在的一点问题分享
5
请教如何使用组件里的FreeMODBUS
6
求一个FreeModbus的从机测试程序
7
FreeModbus的从机调试说明(含测试程序)
8
rtt_freemodbus
9
freemodbus怎么配置到uart
10
FreeModeBus从机调试问题
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
FRDM-MCXN947 Flash实践--W25Q64
2
NXP MCXN947测评(一)开箱+环境配置
3
stm32f103的adc+dma多通道采集数据
4
恩智浦FRDM-MCX947上的 IIC(硬件) 实践
5
栈溢出及中断向量偏移BUG记录与分析
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
CAN总线
Hardfault
FinSH
USB
文件系统
RT-Thread
DMA
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
WIZnet_W5500
ota在线升级
cubemx
flash
I2C
UART
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
BSP
ADC
keil_MDK
socket
中断
编译报错
MicroPython
Debug
SDIO总线
GD32
msh
rt_mq_消息队列_msg_queue
ulog
C++_cpp
SFUD
本月问答贡献
xiaorui
20
个答案
3
次被采纳
Juggernaut
12
个答案
3
次被采纳
踩姑娘的小蘑菇
12
个答案
2
次被采纳
小小李sunny
10
个答案
2
次被采纳
a1012112796
8
个答案
1
次被采纳
本月文章贡献
ZVML_9668
4
篇文章
6
次点赞
Lu_盼盼
4
篇文章
3
次点赞
Z_Y
3
篇文章
5
次点赞
ThinkCode
2
篇文章
2
次点赞
oxlm
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部