迪文科技论坛

 找回密码
 立即注册
搜索
查看: 300|回复: 7

【提问】C51 modbus 通讯帧校验不正确

[复制链接]

2

主题

5

回帖

101

积分

注册会员

Rank: 2

积分
101
发表于 2026-1-26 06:48:52 | 显示全部楼层 |阅读模式
使用的例程modbus_串口2_CK.rar,发现CRC校验不正确

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0

主题

481

回帖

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
发表于 2026-1-26 13:16:08 | 显示全部楼层
用这个例子。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

2

主题

5

回帖

101

积分

注册会员

Rank: 2

积分
101
 楼主| 发表于 2026-1-26 20:28:04 | 显示全部楼层

下载后,COM2 没有反应,RTC也没工作。我的屏型号是DMG12800T070_01WTC
回复

使用道具 举报

0

主题

481

回帖

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
发表于 2026-1-27 10:30:43 | 显示全部楼层
测试OK的代码。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

2

主题

5

回帖

101

积分

注册会员

Rank: 2

积分
101
 楼主| 发表于 2026-1-28 06:35:45 | 显示全部楼层
本帖最后由 baggioY 于 2026-1-28 06:39 编辑

非常感谢!
请问:
1.被注释的Write_Flash能实现掉电保持功能吗?
2.怎样判断通讯异常?

回复

使用道具 举报

0

主题

481

回帖

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
发表于 2026-1-28 09:18:43 | 显示全部楼层
Write_Flash能实现掉电保存,通信异常检测这个可以这么做:modbus从机上一个某个寄存器一直是非0值,屏就读这个寄存器,读了判断是否为0,读后判断异常-是0就通信异常了,不是0就程序里把读过来的数清零,
回复

使用道具 举报

2

主题

5

回帖

101

积分

注册会员

Rank: 2

积分
101
 楼主| 发表于 2026-2-9 07:25:12 | 显示全部楼层
紫狐 发表于 2026-1-28 09:18
Write_Flash能实现掉电保存,通信异常检测这个可以这么做:modbus从机上一个某个寄存器一直是非0值,屏就读 ...

void Write_flash(u16 falsh_adder,u8 len,u16 vla_adder);
void Read_flash(u16 falsh_adder,u8 len,u16 vla_adder);

这两个方法有注意事项吗?有没有示例?谢谢
回复

使用道具 举报

0

主题

481

回帖

2895

积分

金牌会员

Rank: 6Rank: 6

积分
2895
发表于 2026-2-9 08:46:12 | 显示全部楼层
addr和len都要是偶数.Write_flash(0x1000,2,0x1000);
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2026-4-15 03:21 , Processed in 0.035473 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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