迪文科技论坛

 找回密码
 立即注册
搜索
查看: 1616|回复: 4

K600+平台dgus升级内核MODBUS写参数问题请教

[复制链接]

1

主题

2

回帖

16

积分

新手上路

Rank: 1

积分
16
发表于 2019-7-26 15:56:07 | 显示全部楼层 |阅读模式
本帖最后由 神秘の宅叔 于 2019-7-27 20:44 编辑

正在使用4.3寸屏DMT48270T043,下载了MODBUS内核,屏当主机使用,用途是设定下位机(485地址02)的目标参数值。
结果测试发现,03功能码读取没有任何问题,发送02 03 00 00 00 02 CRC CRC(读下位机从0x0000起4个字节),返回02 03 04 XX XX XX XX CRC CRC,把返回数据解析即可;
但是10功能码写目标参数时,使用02模式,往下位机从0x0000写入4个字节,默认发送02 10 00 00 00 02 04 00 00 00 00 CRC CRC,不知道写的内容00000000怎么修改成由键盘自主录入的内容,请教各位大侠!
类似这种屏作为上位机,写参数的需求,在工控领域现场调试需求很大,希望厂家提供更多资料!
回复

使用道具 举报

82

主题

150

回帖

2623

积分

超级版主

Rank: 8Rank: 8

积分
2623
发表于 2019-7-26 18:29:31 | 显示全部楼层
本帖最后由 神秘の宅叔 于 2019-7-27 20:43 编辑

wei工,您好,您是用的DMT48270T043_15wt 采用的K600+的modbus主机内核使用吧,
MODBUS读写指令发送方式02模式运用方法:
实际就是利用按键返回按下发送一次,比如按键返回配置地址0x100F,键值0x005A,当这个按键按下的时候,配置指向的modbus屏上面的地址指令会下发一次,底层自动清零键值,不会重复发。
您直接配置DGUS屏的地址写一个另外的地址0x1000,我们一个变量数据录入的长整数,例如一般对于写指令,数据变量录入参数之后,我们需要再次按下按键返回配置地址0x100F,这个进行写指令的触发。
搜索论坛主题“基于k600+平台DGUS屏的modbus开发”,可以下载参考“MODBUS4.3寸主机配置demo”

当然如果不想多做一个按键,如果不额外配置一个按键返回用02模式发送,那么可以用os判断数据录入变化了就自动下发,不变化就不发,这里写os一般是用的写02模式下的时候也是会底层会自动清零键值

本帖子中包含更多资源

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

x
回复

使用道具 举报

1

主题

2

回帖

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2019-7-29 09:51:43 | 显示全部楼层
神秘の宅叔 发表于 2019-7-26 18:29
wei工,您好,您是用的DMT48270T043_15wt 采用的K600+的modbus主机内核使用吧,
MODBUS读写指令发送方式02 ...

这个温度设定以后(假如为60度),怎么在发送0x10指令的时候,把这个60度自动加载到0x10指令中?比如我想把这个录入的60发送出去:01 10 00 00 00 01 02  00 3C CRC CR。你们的10指令,默认发送值全部都是00,无法实现发送的需求!
回复

使用道具 举报

1

主题

2

回帖

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2019-7-29 09:55:37 | 显示全部楼层
神秘の宅叔 发表于 2019-7-26 18:29
wei工,您好,您是用的DMT48270T043_15wt 采用的K600+的modbus主机内核使用吧,
MODBUS读写指令发送方式02 ...

这个温度设定以后(假如为60度),怎么在发送0x10指令的时候,把这个60度自动加载到0x10指令中?比如我想把这个录入的60发送出去:01 10 00 00 00 01 02  00 3C CRC CRC。你们的10指令,使用你们的MODBUS内核,默认发送01 10 00 00 00 01 02  00 00 CRC CRC,发送格式没有问题,但是最重要发送内容是0000(不知道怎么修改),请教了。
回复

使用道具 举报

82

主题

150

回帖

2623

积分

超级版主

Rank: 8Rank: 8

积分
2623
发表于 2019-7-29 16:02:21 | 显示全部楼层
本帖最后由 神秘の宅叔 于 2019-7-29 16:05 编辑

楼主,您好,01 10 00 00 00 01 02  00 3C CRC CRC
对01设备地址0000写入1个字长(2字节的)数据(003C)请参考如下图片配置和说明。实际上如下图当用数据变量地址0x1000录入60数据之后,然后点击按键返回0x100f,就会下发一次ox10指令。

其他补充说明:
写指令(比如0x06 0x10指令等)配置的超时等待时间就是真实的间隔,不论从机是否应答,间隔始终为设定的,从上往下依次执行。
读指令(比如0x03 0x04指令等)间隔是最大间隔,如果从机立即应答,那么应答后就会立马执行下一条指令。


本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 10:03 , Processed in 0.065539 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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