找回密码
 立即注册
楼主: roger

STC32G12K128单片机的 moubus-rtu 从机测试工程

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2025-10-14 11:43:01

12

主题

53

回帖

454

积分

中级会员

积分
454
发表于 2025-4-28 13:40:12 | 显示全部楼层
你好,楼主,
我在移植附件这个主站程序的时候遇到了一下问题,还望指点下。
如图片所示,g_tHostVar.P01 = BEBufToUint16(p);

g_tHostVar.P01这个里面的值是从哪里改的,按照程序是从S2BUF接收传进来的。可是数值对不上,能否指点下


if(g_tModH.RxCount < H_RX_BUF_SIZE)
    {
        g_tModH.RxBuf[g_tModH.RxCount++] = _data;
    }

  1. typedef struct   
  2. {
  3.         /* 03H 06H 读写保持寄存器 */
  4.         uint16 P01;
  5.         uint16 P02;
  6.         /* 02H 读写离散输入寄存器 */
  7.         uint16 T01;
  8.         uint16 T02;
  9.         uint16 T03;
  10.         /* 04H 读取模拟量寄存器 */
  11.         uint16 A01;
  12.         /* 01H 05H 读写单个强制线圈 */
  13.         uint16 D01;
  14.         uint16 D02;
  15.         uint16 D03;
  16.         uint16 D04;
  17. }HOST_VAR_T;
复制代码

1.png
2.png

STC32G_Project_modbus_rtu_host.zip

223.85 KB, 下载次数: 94

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:418
  • 最近打卡:2025-10-16 21:59:31

12

主题

20

回帖

1408

积分

金牌会员

积分
1408
发表于 2025-4-29 08:40:18 | 显示全部楼层
g_tHostVar.P01这个变量就是就是你从mobuds从机寄存器里获取的值。现在数值对不上是因为你设置的从机里面的寄存器地址不对,主机我也移植过了,这边论坛发的时候把我帖子删除了,你看下我在csdn上发的文章
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:45
  • 最近打卡:2025-10-09 14:09:11

6

主题

73

回帖

938

积分

高级会员

积分
938
发表于 2025-9-29 02:20:38 | 显示全部楼层
zac*** 发表于 2025-4-28 13:40
你好,楼主,
我在移植附件这个主站程序的时候遇到了一下问题,还望指点下。
如图片所示,g_tHostVar.P01 = ...

可以分享一下 库文件吗?
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-10-17 05:42 , Processed in 0.114125 second(s), 64 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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