请选择 进入手机版 | 继续访问电脑版

迪文科技论坛

 找回密码
 立即注册
搜索
热搜: T5L 视频屏 DGUS OS
查看: 2230|回复: 8

T5系列迪文屏如何正确使用曲线功能?

[复制链接]

94

主题

152

帖子

1105

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1105
发表于 2019-5-22 14:13:22 | 显示全部楼层 |阅读模式
项目开发中,有时会用到曲线功能,如下为T5系列迪文屏(T5 CPU系列)曲线指令详解及演示。

1. 曲线设置说明




2. 系统变量接口地址定义
0x0300-0x030F:8 个通道曲线缓冲区的状态反馈(建议用户只读),每通道占2 个字:
高字存储曲线数据的存储指针位置(0x0000-0x07FF)
低字存储曲线缓冲区有效数据长度(0x0000-0x0800)。把曲线缓冲区有效数据长度写0x0000 将导致曲线不显示。
例,5A A5 05 82 0301 0000曲线0通道会不显示曲线,如果重新写点个数值会恢复

0x310-0x311:曲线缓冲区数据写启动。
D3:D2:0x5AA5 启动一次曲线缓冲区数据写操作,CPU 操作完清零。
D1:数据块个数,0x01-0x08。
D0:未定义,写0x00。
0x312-0x37F:需要写入曲线缓冲区的数据块,数据是16bit 无符号数。
单个数据块定义为 数据通道ID(0x00-0x07)+数据字长度(0x01-0x6E)+数据。

3. 指令测试说明
单独向0通道写入100,
5A A5 0B 82 0310 5AA5 0100 0001 0064
单独向0通道写入200,
5A A5 0B 82 0310 5AA5 0100 0001 00C8
单独向0通道写入100,200,
5A A5 0D 82 0310 5AA5 0300 0002 0064 00C8
单独向1通道写入300,400,
5A A5 0D 82 0310 5AA5 0300 0102 012c 0190
单独向2通道写入500,600,
5A A5 0D 82 0310 5AA5 0300 0202 01f4 0258
向曲线0 1 2三个通道分别写入100 200; 300 400 ; 500 600的值,
5A A5 19 82 0310 5AA5 0300 0002 0064 00c8 0102 012c 0190 0202 01f4 0258

T5系列DGUS屏曲线8通道的显示,一共8个通道,每个通道可以存放2048和字,
启用动态曲线显示后,从0x1000 开始,按照每通道2Kwords 为每条曲线建立数据缓冲区。
CH0 缓冲区为0x1000-0x17FF,CH1 缓冲区为0x1800-0x1FFF,
CH2 缓冲区为0x2000-0x27FF,CH3 缓冲区为0x2800-0x2FFF,
CH4 缓冲区为0x3000-0x37FF,CH5 缓冲区为0x3800-0x3FFF,
CH6 缓冲区为0x4000-0x47FF,CH7 缓冲区为0x4800-0x4FFF,
不使用的曲线缓冲区可以用作用户变量区。用户也可以直接改写曲线缓冲区,
例如直接改写变量地址5A A5 05 82 1000 0065...曲线对应通道的值会跟着改变。
如果用户需要用到8条通道,其他显示控件的变量地址和描述指针从0x5000~0xFFFF区间进行使用。

本帖子中包含更多资源

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

x
回复

使用道具 举报

0

主题

23

帖子

142

积分

注册会员

Rank: 2

积分
142
发表于 2019-9-4 13:09:23 | 显示全部楼层
收藏了!
回复

使用道具 举报

0

主题

9

帖子

83

积分

注册会员

Rank: 2

积分
83
发表于 2019-9-5 09:19:23 | 显示全部楼层
如果曲线可以从左到右刷新,当刷新的最右边的时候,重新返回左边往右刷新,示波器就是这样刷新的。  有这样效果的刷新就好了,而不是现在的左移或者右移刷新
回复

使用道具 举报

0

主题

28

帖子

162

积分

注册会员

Rank: 2

积分
162
发表于 2019-9-5 11:08:05 | 显示全部楼层
如果这样的话,可以考虑 刷满之后 ——清除曲线——再写即为从左到右
回复

使用道具 举报

0

主题

9

帖子

83

积分

注册会员

Rank: 2

积分
83
发表于 2019-9-5 15:20:07 | 显示全部楼层
shirap12peng 发表于 2019-9-5 11:08
如果这样的话,可以考虑 刷满之后 ——清除曲线——再写即为从左到右

从左到右刷满之后,不要清除曲线,继续从左到右刷,示波器和监护仪都是这样的啊,你把示波器速度调慢,就可以看到了,他是从左到右一边擦除一边写新的曲线点
回复

使用道具 举报

26

主题

149

帖子

556

积分

高级会员

Rank: 4

积分
556
发表于 2019-9-26 17:25:46 | 显示全部楼层
东方不败000 发表于 2019-9-5 15:20
从左到右刷满之后,不要清除曲线,继续从左到右刷,示波器和监护仪都是这样的啊,你把示波器速度调慢,就 ...

如何判断曲线是否刷满框?不记得如何判断
回复

使用道具 举报

0

主题

12

帖子

143

积分

注册会员

Rank: 2

积分
143
发表于 2019-9-26 20:37:35 | 显示全部楼层
根据设置的曲线框的大小和横轴间隔算出满框能显示多少个点,计算显示了多少个数据,如果超过了最大可显示数据个数,发一条清除曲线的指令
回复

使用道具 举报

4

主题

13

帖子

77

积分

注册会员

Rank: 2

积分
77
发表于 2019-9-27 21:31:40 | 显示全部楼层
问一下各位大佬,我现在曲线数据发送,只能发送2个数据吗?一个是曲线最大值,一个是最小值;我的理解是发送100,200,300三个数据,应该显示的是一条斜线,但是我发送出去,显示的并不是我要的斜线,是怎么回事??请各位大神赐教。
回复

使用道具 举报

0

主题

119

帖子

449

积分

中级会员

Rank: 3Rank: 3

积分
449
发表于 2019-9-28 15:21:23 | 显示全部楼层
Fusron 发表于 2019-9-27 21:31
问一下各位大佬,我现在曲线数据发送,只能发送2个数据吗?一个是曲线最大值,一个是最小值;我的理解是发 ...

按照这个帖子发送数据,应该是DGUS II系列的。
可以看楼主的例子,单独向0通道写入100,200
(这个取决于你要发送的通道和数据个数,下面的0002,00意思就是写0通道,02表示2个数据)
5A A5 0D 82 0310 5AA5 0300 0002 0064 00C8  
如果写三个数据就是
5A A5 0F 82 0310 5AA5 0300 0003 0064 00C8  012C

如果是发送出去数据不是斜线,那需要检查曲线框采集范围和设置是否正确。可以根据附件先设置正确后再试。

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2019-11-15 23:00 , Processed in 0.027766 second(s), 33 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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