迪文科技论坛

 找回密码
 立即注册
搜索
查看: 2312|回复: 11

迪文屏幕为什么不能正常显示数据呢

[复制链接]

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
发表于 2020-3-3 17:43:29 | 显示全部楼层 |阅读模式
屏幕型号:dmt10600t070—a2wt
串口3做的modbus 通讯
通过 232转485 与从设备连接  ,为啥 这 4个数不显示,串口监视助手显示都读上来了啊

本帖子中包含更多资源

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

x
回复

使用道具 举报

0

主题

18

回帖

229

积分

中级会员

Rank: 3Rank: 3

积分
229
发表于 2020-3-3 20:27:40 | 显示全部楼层
用04指令可能程序规定只能读2个字节,这样也符合标准的modbus通讯指令
将长度改为02字节,或者改用03指令
回复

使用道具 举报

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
 楼主| 发表于 2020-3-4 08:12:14 | 显示全部楼层
安琪 发表于 2020-3-3 20:27
用04指令可能程序规定只能读2个字节,这样也符合标准的modbus通讯指令
将长度改为02字节,或者改用03指令 ...

在协议规范上看着能连续读
回复

使用道具 举报

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
 楼主| 发表于 2020-3-4 09:03:31 | 显示全部楼层
还有1个现象没说 ,电脑的modbus slave 工具 模拟从机能读出模拟的数据
回复

使用道具 举报

4

主题

134

回帖

2724

积分

金牌会员

Rank: 6Rank: 6

积分
2724
发表于 2020-3-4 09:28:28 | 显示全部楼层
你从设备的地址对不对,04功能码是读取输入寄存器,长度为16-bit,只能读,不能写,地址范围是30001 - 39999(屏里面设置的寄存器地址0000对应30001)
回复

使用道具 举报

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
 楼主| 发表于 2020-3-4 09:54:39 | 显示全部楼层
xiangliverygood 发表于 2020-3-4 09:28
你从设备的地址对不对,04功能码是读取输入寄存器,长度为16-bit,只能读,不能写,地址范围是30001 - 3999 ...

这是MCGS的莫迪康modbus RTU表格,我想读的就是是图片中加粗的字体,从机地址01 是对的,我用串口调试助手发指令能读出来,mcgs屏也能时时刻刻的读,想的是用迪文的屏换下mcgs。加1的问题也注意了

本帖子中包含更多资源

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

x
回复

使用道具 举报

4

主题

134

回帖

2724

积分

金牌会员

Rank: 6Rank: 6

积分
2724
发表于 2020-3-4 10:46:24 | 显示全部楼层
看你的串口数据确实已经读到了,为了排除工程问题,你可以单独重新做个简单的工程就显示这几个数据的显示控件,如果是有符号数,要二位小数的话,就设置成3位整数2位小数,这样再试试看
回复

使用道具 举报

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
 楼主| 发表于 2020-3-4 13:57:29 | 显示全部楼层
xiangliverygood 发表于 2020-3-4 10:46
看你的串口数据确实已经读到了,为了排除工程问题,你可以单独重新做个简单的工程就显示这几个数据的显示控 ...

还是不行,简单测试,数据没有超,在串口调试助手的数据上可以换算下,没有超

本帖子中包含更多资源

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

x
回复

使用道具 举报

4

主题

134

回帖

2724

积分

金牌会员

Rank: 6Rank: 6

积分
2724
发表于 2020-3-4 15:18:58 | 显示全部楼层
用slave模拟时是可以显示数据,可以对比一下串口收到的数据,看看有什么不同
回复

使用道具 举报

25

主题

80

回帖

514

积分

高级会员

Rank: 4

积分
514
 楼主| 发表于 2020-3-4 15:53:16 | 显示全部楼层
xiangliverygood 发表于 2020-3-4 15:18
用slave模拟时是可以显示数据,可以对比一下串口收到的数据,看看有什么不同 ...

谢谢这位网友的热心解答,经仔细核对发现一个现象,我迪文屏幕通过232转485得到485串口,电脑通过usb转485得到485串口,进行屏幕与电脑slave模拟从机进行通信,slave的communication traffic 监视窗口通信的接收指令与回复指令显示都正确,但是屏幕却不显示信息我连接真实的从机(从机是485口),屏幕通过232转485与从机相连,也是指令全对,但是屏幕就是不显示信息我想应该这2个是一个原因,至于为什么这样我不知道。屏幕通过232与电脑usb转232直接相连,屏幕显示就正常了,接收回复指令都是对的。为什么会这样还请官方做下测试,回复一下我这个迪文小白。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-18 18:16 , Processed in 0.097761 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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