OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4618|回复: 4

freemodbus移植成功,如何读取保持寄存器的值?

[复制链接]

5

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
182
金钱
182
注册时间
2019-10-7
在线时间
36 小时
发表于 2020-12-1 22:31:05 | 显示全部楼层 |阅读模式
3金钱
在STM32F407探索者开发板上移植成功Freemodbus,STM32F407作从机,电脑上的Modbuspoll做主机,通过USB转485连接电脑与开发板,从机地址为1,经测试,功能码0x03,0x06,0x10都正常工作,如功能码0x10(向保持寄存器中写入数据)的测试,主机发送命令:01 10 00 01 00 02 04 00 0F 42 40 XX XX(XX XX代表CRC校验码),意思是向地址为0x0001的寄存器写入数据0x000F,向地址为0x0002的地址写入0x4240,从机能返回正确的指令,现在我想把写入这两个保持寄存器的值(0x000F,0x4240)给读出来(赋值给某个变量),但是不知道如何提取出保持寄存的值?希望走过路过的大佬能为小弟指点迷津!感谢!

最佳答案

查看完整内容[请看2#楼]

freemodbus里面的各种寄存器其实就是数组,在freemodbus种有个文件对该数组有定义,直接读取该数组的值即可。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2178

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3323
金钱
3323
注册时间
2013-7-19
在线时间
195 小时
发表于 2020-12-1 22:31:06 | 显示全部楼层
freemodbus里面的各种寄存器其实就是数组,在freemodbus种有个文件对该数组有定义,直接读取该数组的值即可。
回复

使用道具 举报

5

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
182
金钱
182
注册时间
2019-10-7
在线时间
36 小时
 楼主| 发表于 2020-12-6 20:45:43 | 显示全部楼层
ricefat 发表于 2020-12-6 17:22
freemodbus里面的各种寄存器其实就是数组,在freemodbus种有个文件对该数组有定义,直接读取该数组的值即可 ...

感谢解答!
回复

使用道具 举报

1

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2020-11-30
在线时间
13 小时
发表于 2020-12-14 15:58:52 | 显示全部楼层
楼主   移植成功的 代码能参考一下吗
回复

使用道具 举报

5

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
182
金钱
182
注册时间
2019-10-7
在线时间
36 小时
 楼主| 发表于 2020-12-31 16:32:31 | 显示全部楼层
jiabo0129 发表于 2020-12-14 15:58
楼主   移植成功的 代码能参考一下吗

我的另一个帖子里分享了
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-14 13:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表