FreeModbus开源协议栈解析
文章平均质量分 56
Couvrir洪荒猛兽
大家都在努力不是吗 不止你 还有我
梦想成为嵌入式大牛
展开
-
FreeModbus--学习函数指针
C语言的函数指针是指向函数的指针变量,可以用来存储和调用函数的地址。作为函数的参数:函数指针可以作为参数传递给其他函数,使得可以在调用函数时动态指定要执行的函数。作为数组元素:可以使用函数指针数组来存储多个函数的地址,便于根据需要选择执行某个函数。作为函数的返回值:函数指针可以作为函数的返回值,返回指向函数的地址。该协议栈中使用到函数指针,现开展一篇专门存放函数指针的文章。为了更贴合协议栈的函数指针,稍加修改例子。原创 2023-12-14 11:15:13 · 568 阅读 · 0 评论 -
FreeModbus开源协议简介
个人笔记,供个人查阅。FreeModbus是奥地利人写的Modbus协议,主要针对嵌入式应用的免费通用Modbus协议的移植。modbus通信协议栈包括两层:应用层协议(定义了数据模型和功能)和网络层。FreeModbus提供了RTU/ASCII传输模式和TCP协议支持,遵循BSD许可证(意味着用户可以将FreeModbus应用于商业环境中)。原创 2022-12-22 12:13:43 · 2055 阅读 · 3 评论 -
FreeModbus开源协议-mbfunccoils.c(线圈操作)
mbfunccoils.c主要是对线圈的一些描述。当主机接收到01、05、0F等功能码时,会进入对应功能码处理函数。原创 2023-03-27 15:05:38 · 447 阅读 · 0 评论 -
FreeModbus开源协议栈-mbfuncinput.c(输入寄存器操作)
mbfuncinput.c主要是对输入寄存器的一些描述。当主机接收到04等功能码时,会进入对应功能码处理函数。原创 2022-12-22 09:29:21 · 263 阅读 · 0 评论 -
FreeModbus开源协议栈-mbfuncdisc.c(离散量操作)
mbfuncdisc.c主要是对离散量的一些描述。当主机接收到02等功能码时,会进入对应功能码处理函数。原创 2022-12-09 18:13:12 · 190 阅读 · 0 评论 -
FreeModbus开源协议栈-mbfuncholding.c(保持寄存器操作)
mbfuncholding.c主要是对保持寄存器的一些描述。当主机接收到03、06、10等功能码时,会进入对应功能码处理函数。原创 2022-12-09 18:06:24 · 692 阅读 · 0 评论 -
FreeModbus开源协议栈-mbrtu.c
【代码】FreeModbus开源协议栈-mbrtu.c。原创 2022-12-09 16:20:17 · 478 阅读 · 1 评论 -
FreeModbus开源协议栈-mb.c
在CubeMX工程配置中,已经将定时器2(TIM2)的时钟周期设为50us,usTimerT35_50us(产生中断)暂时设为了35,也就是说50us×35=1750us产生一次中断,这个时间就是判断RTU中帧间隔的标准。但在Freemodbus协议栈(遵循Modbus国标)中,这个时间不是固定的,在波特率小于19200bps时,需要具体计算这个时间,当波特率大于或等于19200bps时,这个时间固定为1750us。原创 2022-12-09 16:16:30 · 657 阅读 · 0 评论