找回密码
 立即注册
楼主: manz***

STC8系列4组串口同时通信的程序,Modbus 演示程序

  [复制链接]
  • TA的每日心情
    开心
    昨天 11:43
  • 签到天数: 109 天

    [LV.6]常住居民II

    1

    主题

    76

    回帖

    307

    积分

    中级会员

    积分
    307
    发表于 2024-4-11 13:58:42 | 显示全部楼层
    梁工 发表于 2024-4-11 12:00
    你哟个串口助手访问正常吗?STC-ISP的串口助手支持自动发送CRC16校验,方便MODBUS-RTU测试。如果正常,则 ...

    你看一下我发的图片,上面是SSCOM工具,下面是modbus poll工具,从上面看协议发出和返回2个工具都是一样的,但modbus poll工具就是显示Checksum error。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 11:43
  • 签到天数: 109 天

    [LV.6]常住居民II

    1

    主题

    76

    回帖

    307

    积分

    中级会员

    积分
    307
    发表于 2024-4-11 14:06:57 | 显示全部楼层
    梁工 发表于 2024-4-11 12:00
    你用串口助手访问正常吗?STC-ISP的串口助手支持自动发送CRC16校验,方便MODBUS-RTU测试。如果正常,则可 ...

    上面是STCAI-ISP工具,下面是modbus poll工具。协议看是一样的。
    modbus rtu-2.png

    点评

    那你看下校验设置是否正常,否则我真想不到是什么问题了。你能贴出modbus poll工具吗?我测试一下。  详情 回复 发表于 2024-4-11 14:19
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    2927

    回帖

    6585

    积分

    超级版主

    积分
    6585
    发表于 2024-4-11 14:19:01 | 显示全部楼层
    molo 发表于 2024-4-11 14:06
    上面是STCAI-ISP工具,下面是modbus poll工具。协议看是一样的。

    那你看下校验设置是否正常,否则我真想不到是什么问题了。你能贴出modbus poll工具吗?我测试一下。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 11:43
  • 签到天数: 109 天

    [LV.6]常住居民II

    1

    主题

    76

    回帖

    307

    积分

    中级会员

    积分
    307
    发表于 2024-4-11 14:23:22 | 显示全部楼层
    梁工 发表于 2024-4-11 14:19
    那你看下校验设置是否正常,否则我真想不到是什么问题了。你能贴出modbus poll工具吗?我测试一下。 ...

    这个是modbus poll工具,麻烦梁工试试,谢谢!

    ModbusPoll_v9.9.2.1690_x64_Chs.rar

    6.12 MB, 下载次数: 12

    点评

    我测试主楼的例子没有问题。 [attachimg]41017[/attachimg] 检测了你的例子,你返回的CRC16是高字节在前,低字节在后,错了,应该是先发低字节后发高字节。 TX1_Buffer[k++] = (u8)crc; //CRC是小端模式,  详情 回复 发表于 2024-4-11 14:59
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    2927

    回帖

    6585

    积分

    超级版主

    积分
    6585
    发表于 2024-4-11 14:59:20 | 显示全部楼层
    本帖最后由 梁工 于 2024-4-11 15:02 编辑
    molo 发表于 2024-4-11 14:23
    这个是modbus poll工具,麻烦梁工试试,谢谢!

    我测试主楼的例子没有问题。

    截图202404111457259247.jpg

    看你的情况,提示校验错误,应该是你返回的CRC16是高字节在前、低字节在后,错了,应该是先发低字节后发高字节。

    TX1_Buffer[k++] = (u8)crc;      //CRC是小端模式, 先发低字节,后发高字节。
    TX1_Buffer[k++] = (u8)(crc>>8);

    请检查一下你的程序发送CRC16的次序。

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 11:43
  • 签到天数: 109 天

    [LV.6]常住居民II

    1

    主题

    76

    回帖

    307

    积分

    中级会员

    积分
    307
    发表于 2024-4-11 15:04:42 | 显示全部楼层
    梁工 发表于 2024-4-11 14:59
    我测试主楼的例子没有问题。

    是这个问题,谢谢梁工。
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    0

    主题

    1

    回帖

    20

    积分

    等待验证会员

    积分
    20
    发表于 2024-4-16 11:12:38 | 显示全部楼层
    一直在做基于STC主控的开发,越来越顺手了,多谢各位大神的无私分享!
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    4 分钟前
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    3

    主题

    60

    回帖

    211

    积分

    中级会员

    积分
    211
    发表于 7 天前 | 显示全部楼层
    谢谢分享。学习
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    昨天 11:43
  • 签到天数: 109 天

    [LV.6]常住居民II

    1

    主题

    76

    回帖

    307

    积分

    中级会员

    积分
    307
    发表于 昨天 16:22 | 显示全部楼层
    有没有OF写多线圈的功能代码,自己写了一下总是有问题。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    4 分钟前
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    3

    主题

    60

    回帖

    211

    积分

    中级会员

    积分
    211
    发表于 昨天 19:49 来自手机 | 显示全部楼层
    有modbus继电器的例子吗
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-4-30 10:01 , Processed in 0.071343 second(s), 67 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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