admin管理员组

文章数量:1538736

2024年6月24日发(作者:)

目录

第1章:bin文件数据格式 .................................................................................... 4

1.1 12_PYK_ALL_: ................................................................... 4

1.2 13触控配置文件.bin: .......................................................................... 4

1.3 14变量配置文件.bin: .......................................................................... 4

: ......................................................................................................... 4

第2章 液晶屏的存储空间.................................................................................. 5

2.1 DGUS寄存器区 ...................................................................................... 5

2.2 图片存储区............................................................................................. 7

2.3 用户RAM区 ......................................................................................... 7

2.4 FLASH区 ................................................................................................ 8

2.5 曲线缓存区............................................................................................. 8

第3章 串口通信.................................................................................................. 9

3.1 三种通信电平......................................................................................... 9

3.2 普通数据格式......................................................................................... 9

3.3 五条指令............................................................................................... 10

3.4 DGUS寄存器的访问 ............................................................................ 10

3.5 用户RAM区的访问 ........................................................................... 12

3.6 FLASH区的访问 .................................................................................. 12

3.7 曲线缓存区的访问............................................................................... 13

第4章 DGUS屏的基本开发 ............................................................................ 13

4.1 DGUS液晶屏上可操作的资源 ............................................................ 13

4.2 图片....................................................................................................... 13

4.3 图标....................................................................................................... 14

4.4 字库....................................................................................................... 14

4.5 DGUS液晶屏开发步骤 ........................................................................ 15

4.6 DWIN_SET文件夹中配置文件的类型............................................... 15

4.6.1 字库说明:................................................................................ 15

4.6.2 图片说明:................................................................................ 16

4.6.3 系统配置说明:........................................................................ 16

4.7 界面中的变量与触控........................................................................... 16

4.8 用户自定义变量地址的分配............................................................... 17

4.9 DGUS屏运行周期的概念 .................................................................. 19

4.10 变量显示刷新的实质......................................................................... 19

4.11 DGUS液晶屏运行周期的利用率 ...................................................... 20

第5章 DGUS液晶屏的进阶开发 .................................................................... 21

5.1 编程基础.............................................................................................. 21

5.2 OS的工作寄存器 ................................................................................. 23

5.3 OS指令集可寻址的存储器空间 ......................................................... 24

5.4 OS的程序结构 ..................................................................................... 24

第6章 各控件使用说明.................................................................................... 25

6.1

6.2

6.3

6.4

6.5

6.6

6.7

6.8

6.9

6.10

6.11

6.12

6.13

6.14

变量图标显示:............................................................................ 25

动画图标显示: .......................................................................... 25

滑动刻度指示: ............................................................................ 25

艺术字变量显示: ...................................................................... 25

图片动画显示: ........................................................................... 25

图标旋转指示:.......................................................................... 25

位变量图标显示:...................................................................... 26

数据变量显示:........................................................................... 27

文本显示: ................................................................................... 27

动态文本显示: ........................................................................ 28

表盘时钟显示: ......................................................................... 28

文本RTC显示: ..................................................................... 28

时间变量显示:........................................................................ 28

实时曲线显示:......................................................................... 28

6.14.1 曲线的缩放功能...................................................................... 32

6.15

6.16

6.17

6.18

6.19

基本形显示: ............................................................................ 33

特殊行业应用:......................................................................... 38

硬件参数配置: ........................................................................ 38

转动调节:................................................................................ 40

按压数据同步返回: ................................................................ 40

第7章 描述指针指令举例................................................................................ 43

7.1 数据变量显示....................................................................................... 43

7.2 数据变量上电不显示0实现方法....................................................... 44

第1章:bin文件数据格式

1.1 12_PYK_ALL_:

是一个拼音输入法,一个固定文件软件自带的不用生成。

1.2 13触控配置文件.bin:

从0X00地址开始是各个触控按钮的配置信息,结束一个触控配置信息后再

接着下一个触控按钮的配置,每个触控按钮配置信息占16个字节的整数倍,多

余空间补零。每个按钮配置信息按其配置功能的多少在占空间字节数,各个按钮

所占空间不等。每个页面的按钮配置信息按添加顺序排列先后,先排首页所有触

控按钮,排完后,再依次排到最后一页所有触控按钮排完。

(各按钮配置信息字节数详见PDF《迪文_DGUS屏开发指南》第27页开始)

1.3 14变量配置文件.bin:

从0X00地址开始是各个变量的配置信息,先排首页的变量配置信息,每个

变量配置信息占16个字节的整数倍,多余空间补零。若没有很多变量信息,则

留出足够大的空间后再排下一页变量配置信息,依次排到最后一页,每个页面固

定分配2KB或4KB变量储存空间,每个页面最多可以设置64或128个变量。

14变量配置文件.bin最大2MB,最多可以配置1024个页面。

(各变量配置信息字节数详见PDF《迪文_DGUS屏开发指南》第41页开始)

是用来储存变量配置的初始化数据的,即每个变量的初始值如图

按地址最靠前的一个地址*2位起始地

址写初始化数据,一个地址占2个字节,不能发生地址冲突。

:为OS汇编代码编译器编译后自动生成的文件。

第2章 液晶屏的存储空间

DGUS液晶屏共有6个主要的存储空间,如表1所示:

2.1 DGUS寄存器区

此存储空间共包含256个字节,见图2中的“寄存器区”。

通过这些寄存器,用户可以实现指令方式的液晶屏背光控制、蜂鸣器控制、

界面切换、获取RTC时钟、修改RTC时钟、对FLASH空间的读写访问、DGUS

定时器控制、液晶屏复位控制等功能。表3为DGUS寄存器空间的详细说明。

2.2 图片存储区

DGUS屏具有224MB(256MB版本的K600+内核)或者2016MB(2G版本

的K600+内核)的图片存储空间,不同分辨率的屏,可存储的最大图片数量不同,

如下表2所示:

2.3 用户RAM区

见图2,品内部具有一个28K Word的RAM区,每个地址为一个双字节的

word,高字节在前,低字节在后。地址范围0000H~6FFFH。此存储空间主要用

于给用户见面上的变量分配地址,未被分配的RAM地址,用户也可当做普通的

RAM存储器来使用。

2.4 FLASH区

见图2,屏内部具有一个16M Word的FLASH区,每个地址为一个双字节

的word,高字节在前,低字节在后。整个存储空间被划分为128个大小相同的

区块,并依次编号为0号扇区、1号扇区、......127号扇区,每个扇区的大小为

128K Word。其中0号~23号扇区被系统使用,用户指令不能访问。24号~127号

扇区用户可以用来存储自定义的字库或者图标库等资源。但64号~127号扇区用

户也可以用作自己的FLASH区,例如可以用来保存一些需要掉电保存的历史数

据等。

2.5 曲线缓存区

DGUS液晶屏内部舍友专门的类似FIFO性质的曲线数据缓存区,可同时满

足8条曲线的数据缓存。用户对此空间只能写,不能读。

第3章 串口通信

3.1 三种通信电平

DGUS液晶屏根据型号的差异,会分别具有COMS、RS232、RS485三种通

信电平方式中的一种或两种。这款液晶屏使用的是3.3V的TTL电平。

我们一般判断是否通信的话,就是在sscom32中发送指令看有没有返回数据。

客户选择好串口号 波特率及帧头帧尾,按照以下的格式发送指令,能返回相关

的数据就是通信成功。

5A A5 03 81 0001

返回内核版本号

5A A5 表示:帧头(可改)

03 表示:数据长度(以字节为单位)

81 表示:读取DGUS屏寄存器指令

00 表示:寄存器(存储DGUS 屏内核版本号的寄存器序号)

01 表示:版本号为01个字节长度

串口返回:5A A5 04 81 00 01 71

3.2 普通数据格式

单字节数据格式:1位起始位、8位数据位、1位停止位。

帧头:用户可以定义两个字节的帧头,默认设置为0x5AA5。

数据长度:在一条指令中,从“指令字”开始的后面所有数据的字节数。如

果带CRC校验,2字节校验值计入数据长度。

指令字:迪文自定义的5个指令字之一,分别为0x80、0x81、0x82、0x83、

0x84。

CRC校验:此校验为可选项,生成多项式为:X16+X15+X2+1,校验和为

高字节在前,低字节在后。只有“指令字”和“数据域”参加校验和预算,“帧

头”和“数据长度”不参加计算。

3.3 五条指令

DGUS液晶屏共有5条通信指令。如下图所示,这五条指令被分为3组,一

组(0x80、0x81)用于对DGUS寄存器区的访问,一组(0x82、0x83)用于对

用户RAM区的访问,一组(0x84)用于刷新曲线。

3.4 DGUS寄存器的访问

0x80指令:用于执行对DGUS寄存器区的写操作。

0x81指令:用于执行对DGUS寄存器区的读操作。

假设帧头为0x5AA5,无CRC校验,帧格式如下。

其他寄存器写指令举例:

控制亮度: 5A A5 03 80 01 20一半的亮度范围(亮度范围00~40)

蜂鸣器: 5A A5 03 80 02 20单位10ms最大FF

复位指令: 5A A5 04 80 EE 5A A5 相当如掉电之后再上电的效果

页面切换: 5A A5 04 80 03 0001

RTC: 5A A5 0A 80 1F 5A 15 07 03 00 16 05 59(更改为2015年07月03

日16:05:59星期 用的00自动换算)5A A5 03 81 20 10 返回:公历时间加农

历年月日癸巳蛇5A A5 13 81 20 10 13 11 08 05 18 18 56 13 10 06 B9 EF CB C8 C9

DF

触摸屏校准:5A A5 03 80 EA 5A (后会一次出现白色小叉叉,推荐用笔尖点

击,电阻屏)

关闭触摸功能:5A A5 03 80 0B 00 5A A5 03 80 0B 01(01-FF开启)

按键触发: 5AA5 03 80 4F (00~FF) 勾选后指令控制触摸按键功能(右上

角键控选项是01到FF之间可以设置255个键,把按钮设置键控之后,软件界

面显示颜色会变灰,这个时候就需要:发指令触发5a a5 03 80 4F 01。触控就不

起作用 如果想触控和键控同时触发,需要再复制一个上去,一个设置键控,一

个不设置,‘黄色’和‘灰色’的方块可以覆盖存在的,灰色的键控放在此页面

的任意位置都可以)

3.5 用户RAM区的访问

0x82指令:用于执行对RAM寄存器区的写操作。

0x83指令:用于执行对RAM寄存器区的读操作。

假设帧头为0x5AA5,无CRC校验,帧格式如下。

3.6 FLASH区的访问

如图4所示,再DGUS的5条指令中,没哟专门访问FLASH存储区的指令,

那么实现对FLASH区的读写操作如下:

在DGUS的寄存器区中,0x40~0x49寄存器地址控制着用户RAM区和

FLASH区之间的数据交换,用户通过串口访问FLASH区,也就是通过这几个

DGUS寄存器的控制来实现的。

读FLASH操作顺序:首先使用0x80指令将制定FLASH区块内的数据复制

到RAM区,然后使用0x83指令讲RAM区中的数据读出来。

写 FLASH操作顺序:首先使用0x82指令将数据预写到RAM区,然后使

用0x80指令讲RAM区块内的数据写入FLASH中。

在指令的读写操作未完成之前,可以使用0x81指令循环查询40H寄存器,

直至其归零为止。

3.7 曲线缓存区的访问

如图4所示,0x84指令专门用于曲线数据的更新,指令格式如下。

假设帧头为0x5AA5,无CRC校验。

第4章 DGUS屏的基本开发

4.1 DGUS液晶屏上可操作的资源

在DGUS液晶屏上,可操作的资源主要有3种,分别为图片、图标、字库。

4.2 图片

图片文件必须为bmp格式,24位色,其他格式的图片迪文不予识别。

图片的分辨率必须与对应的迪文屏的分辨率相同。例如屏的型号为

DMT80480T070_18WT,那么与之相匹配的图片分辨率就为8020*480,如果装

入分辨率不匹配的图片,则会导致花屏。

迪文屏是按照图片文件名中的前缀名进行存储的,其实编号为0,依次递增。

例如、1主界面.bmp、.......、100数字键盘.bmp。迪文屏上电后默认显

示第0幅图片。

4.3 图标

迪文DGUS液晶屏所指的图标分辨率小于255*255的图片文件,命名方式

与图片相同,即前缀名为存储序号。

直接图标文件迪文DGUS屏是不能装载和识别的,需要是先把所有图标设

计好并放在一个自定义的文件夹中,然后使用“DWIN_ICO生成工具”生成一

个.ico的图标库文件,这个图标库文件名的前缀也必须是数字开头,数字即其在

FLASH存储器空间的存储编号。例如名称为图标库文件,其存储位置为

FLASH存储器空间的第24号扇区,需要注意的是,根据图标库文件的大小,其

实际占用的扇区数量有可能大于1个,这个在给图标库分配存储扇区是需要注意,

一面多个存储文件之间发生交叠。

使用迪文的图标生成工具制作好图标库文件后,将其移至HMI工程目录中

的DEWIN_SET文件夹中,然后在DGUS配置软件中才能预览到此库文件。

4.4 字库

迪文DGUS液晶屏只支持点阵字库,不支持矢量字库。

字库的属性包括:字符大小、字体、字库编码方式、存储编号。

迪文屏出厂预装了4*8~64*128分辨率的ASCII码字库,文件名为

0_DWIN_(大小可以随意调用 最大是64*128),即其存储在FLASH

存储区的第0号扇区。

其他字库需要客户自己生成并存储在FLASH存储区的24号以后的扇区。

(将字库文件放在DWIN_SET文件夹中即可在软件中预览并调用)

4.5 DGUS液晶屏开发步骤

A:设计制作图片、图标、字库等迪文屏所须的素材。

B:运行迪文HMI配置工具软件,新建HMI工程,设置好分辨率和工程路径,

添加图片,在界面上添加所需的“变量”和“触控”并设置好其属性,编译工程。

C:配置串口波特率、帧头等系统参数。

D:将工程目录中生成的DWIN_SET文件夹,拷贝到一张文件系统为FAT32

的SD卡的根目录下,给迪文屏上电,插卡后迪文屏会自动读取DWIN_SET文

件夹中所有的配置文件并保存到FLASH中。待所有文件下载完成后,将SD卡

拔出,之后迪文屏就按照下载的配置文件运行。

4.6 DWIN_SET文件夹中配置文件的类型

图片文件:*.bmp

触控配置文件:13*.bin

变量配置文件:14*.bin

字库文件:*.HZK / *.DZK

图标库文件:*.ICO

其他二进制文件:*.bin

系统配置文件:

除了文件外,其他文件都有一个前缀序号,此序号即文件在

FLASH存储空间中所处扇区的编号。

4.6.1 字库说明:

存储在FLASH区里面。

DGUS屏一共有32MB字库空间,分割128个成固定容量大小256kB说明:

0号字库(大小可以随意调用 最大是64*128 ),它的大小占用了12个空间

12是GBK录入输入法文件

13是触控配置文件

14是显示配置文件

15-21是系统预留

22是初始值加载文件

23是os二次开发软件写ASM文件编译生成后下载到屏里面的文件

24开始是用户自定义从:如图标库大小大于256KB,假设为257KB,那么

将占用两个字库空间,假设字库命名“40-指示灯.ICO” 大小为257KB,那么占

用了40,41 两个字库空间,下一个图标库不能写为,必须由42序号命名

开始。

4.6.2 图片说明:

存储在图片存储区。

图片文件必须是和DGUS屏分辨率相同的24位色BMP格式文件。命名从0

号界面开始(图片命名序号和字库命名序号不冲突),后面可加入注释比如:00_

密码进入界面.bmp ,01_密码按钮效果.bmp等等。

4.6.3 系统配置说明:

下面是一个标准配置,DGUS软件系统配置点击自动生成或手动

修改。

R1=07 ;波特率,07=115200

R2=2C ;2CH=00101100B 参考开发指南R2寄存器定义表格.2 .3 .5位配置

R3=5A;帧头高字节

R6=40;触摸屏控制背光启用后,点击触摸屏后背光亮度(00-40)

R7=10;触摸屏控制背光启用后,一段时间不点击,背光关闭的亮度

R8=1E;30秒不点击触摸屏,触摸屏背光降低到上面R7=10

RA=A5;帧头低字节

RUN_DWIN_OS;启用os (STOP_DWIN_OS;关闭os)

TP_CORRECT ;插卡配置时开启触摸屏校准一次

RC=00;参考RC寄存器8个位的配置

4.7 界面中的变量与触控

变量:即界面上可以改变显示状态的量,用户可以通过指令或者其他的方式

来控制其显示状态。变量又分为很多种,例如图标变量、数据变量、时间变量、

文本变量等,各种变量都有一个公共的属性,即变量地址(变量空间)。变量地

址即用户在设置变量的属性时,在用户RAM区中为其分配的变量空间。用户可

以通过指令来控制变量,也就是通过指令来修改为其分配的RAM空间中的数值

来实现的。有了这个属性,变量也可以理解为是一种容器,对于用户的控制程序

来说,读写的只是容器中的数值,但这种数值在LCD的界面上却可以各种形式

变现出来,比如以数据的形式、图标的形式、指针的形式、表格的形式、动画的

形式、曲线的形式等。

触控:迪文DGUS液晶屏只支持单点触控。触控的不同种类,即代表了点

击后液晶屏会有不同的行为。比如“基本触控”,点击后除了可以有按压效果和

切换界面的功能外,没有其他任何的动作;而“按键值返回”除了具备“基本触

控”的功能外,还可以同时改变某一变量的数值。

4.8 用户自定义变量地址的分配

如图n所示,界面设计好以后,用户即可在每个界面上添加自己的变量,同

时为每一个变量指定一个RAM首地址,不同的变量所占用的地址空间可能也不

相同。但对于“整型变量”来说,为其设置的首地址也就是其RAM空间。

由“3串口通信”章节可知,DGUS串口的通信指令都是连续地址的访问,

如果界面上各个变量的地址范围差距比较大,就会给读写操作带来麻烦,因为必

须通过几条指令才能完成对若干变量的读写。因此建议如图n所示方式的变量地

址分配原则。

在针对一个完整的HMI工程时,建议如图n的变量空间分配原则。给每一

个界面分配一个稍微大一点的RAM区域,以便后续工程的升级或者改动。

4.9 DGUS屏运行周期的概念

DGUS液晶屏支持四种可选的运行周期,分别为200ms、180ms、120ms、

80ms。

如图n所示,DGUS驱动程序内有一个定时器,此定时器按照用户配置的“运

行周期”产生中断,每产生一次中断,DGUS程序就将当前用户界面上的变量刷

新一次。

4.10 变量显示刷新的实质

如图n所示,DGUS程序按照用户指定的运行周期,不断的将用户RAM区

中相关地址中的数据刷新到当前显示的界面上,同时,如果有客户通过触摸屏录

入了数据,那么这个数据就会被写入相关的RAM地址中。也就是说,DGUS程

序会周期性的完成显示界面与用户RAM区之间的数据交互。

由以上阐述的DGUS周期的实质,我们自然会得到一个结论:用户通过串

口读写用户RAM区是随机的,基本没有时间上的限制,但是变量由RAM区更

新到界面上去显示却是周期性的。在这个前提下,假如目前的DGUS周期是

200ms,在这200ms的时间内,用户如果发送了两条以上的更新同一变量的指令,

那实质上真正起作用的是最后一条指令。由此得出,用户在编写自己的变量刷新

程序时,发送刷新变量指令的周期应不小于DGUS运行周期,因为发多了没有

什么意义(曲线刷新除外)。

4.11 DGUS液晶屏运行周期的利用率

刷新一个页面上所有的变量所消耗的CPU时间,与用户定义的变量的多少

和类型有关,但绝大多数情况下,执行刷新变量显示实际使用的时间都小于

DGUS的周期时间,如下图所示。

第5章 DGUS液晶屏的进阶开发

DGUS液晶屏除了可以完成前面所述的基本功能外,用户也可以像使用单片

机一样对其进行编程操作。

5.1 编程基础

如前所述,如果DGUS液晶屏只是进行基本的开发使用,那其一方面只能

作为一个从机来使用,而且串口上也只能传输迪文的通信指令,另一方面,液晶

屏只是能起到一个显示和键盘的作用,无法进行更复杂一些的功能操作。

为了解决上述问题,也为了能够更有效的利用DGUS液晶屏运行周期中剩

余的时间片(如4.11所述),迪文公司设计了一套指令集,叫做OS指令集,形

式上类似于汇编语言,执行结构上类似于可编程控制器PLC。下图为DGUS程

序与OS程序之间的关系示意图。DGUS屏在执行完变量的刷新显示后,利用剩

余的OS周期时间,再去执行一次用户的OS程序,也就是说,DGUS程序与OS

程序在时间顺序上是串联的关系。

如图n所示,增加OS程序后,DGUS液晶屏的运行周期被有效的利用起来。

5.2 OS的工作寄存器

OS具有256个工作寄存器,分别命名为R0~R255,其中R0~R9在程序中有

特殊的用途,其余寄存器用户可以随便使用。

5.3 OS指令集可寻址的存储器空间

如图n所示,OS指令集可以寻址DGUS寄存器空间、用户RAM区、FLASH

空间以及曲线缓存区。

5.4 OS的程序结构

编写OS程序与编写单片机程序类似,但是OS程序的执行结构与单片机程

序截然不同,这一点需要客户必须理解,否则OS程序不会被正确执行。

对于任何一次新的DGUS周期,OS程序总是首先从用户编写的第一行程序

开始执行,直至遇到”END”指令才从OS程序中退出,再次回到新DGUS周期入

口,这一点与PLC(可编程控制器)类似。

需要注意的是,在编写OS程序时,只能将OS的程序结构写成由上到下的

顺序执行的结构,OS的整体结构中也不能有“死循环(类似C语言中的while)”

或者长时间的延时程序段,否则液晶屏会表现出“反应迟钝”或者不停的蓝屏(复

位)。

为了让OS程序能够实现较复杂的控制逻辑,OS指令集提供的“比较跳转”

和“函数调用”等指令,利用它们可以实现绝大部分的控制流程。

第6章 各控件使用说明

6.1 变量图标显示:

“键值返回”控件配合使用,对应变多数用于开关图标转换控制,与

量地址相同,该返回的键值对应变量图标的上下限值即可。

6.2

多数与

动画图标显示:

“弹出菜单选择”配合使用,对应变量地址相同,菜单弹出窗

口键值:关闭窗口:0x00ff;开始:0x0001;停止:0x0000

6.3

必须与

滑动刻度指示:

“拖动调节”配合使用才能看到效果,变量地址相同,起始和

终止的返回值,对应和滑动刻度指示的起始和终止变量的刻度值一一对应即可。

还可以加一个文本显示来看对应的值变化。

6.4 艺术字变量显示:

"增量调节"一起使用,选择“按字写位数为其能显示的最大位数,可与

入变量”,变量地址对应。

6.5 图片动画显示:

在动画的起始图标处放置一个控件,若要实现循环播放需在动画的最后一页

在设置一个同样的控件(可复制)。

6.6 图标旋转指示:

控件方框左上角坐标对准旋转中心,对应所选图标的旋转中心,起始变量值

为其起始角度对应的变量值

,中间平分,起始角度对应的值为实际起始角度对应值的两倍填写,角度指示图

如下:

6.7 位变量图标显示:

与“增量调节”一起使用,增量调节位控制的写入位对应“位变量图标”位

控制对应

调节,步长为1,上限1下限

,调节方式只能是++,循环

0。显示模式说明:

移动模式说明:

6.8 数据变量显示:

“变量数据录入”一起使用,键盘键值不能只能显示ASCII码,可与

用完全键值定义。

6.9

可与

文本显示:

“文本录入”“GBK录入”一起使用,文本长度决定显示长

度,水平间隔和垂直间隔是字与字之间以像素为单位的间隔。

6.10 动态文本显示:

“文本录入”“GBK录入”一起使用。在可单独使用,也可以与

DGUS软件上所画区域应短于显示文字长度。滚屏间距越大滚动速度越快。

6.11 表盘时钟显示:

可单独使用,每个图标必须为竖直的图标,时间显示与RTC文本显示的时

间相对应。

6.12 文本RTC显示:

“RTC设置”配套使用,来设置时间。“RTC可单独使用,也可以和

设置”的第一个位置是设置时间时,时间框的右下角坐标。时间显示不可以改成

中文。若设置时间不合法,不可改变时间。

6.13 时间变量显示:

单独使用,不与其他控件配合使用。该显示由串口下载0-F的数据进液晶屏,

输入"A"~"F"时屏上就显示相同的数据,这需要液晶屏内核版本较高,若间隔号

多于数据则多余的间隔号不显示,若数据多于间隔号,则从最左边留一个字节开

始依次到最后一个间隔号,后面的数据之间没有间隔号。串口发送数据格式为:

5A A5 06 82 00 96 00 32 AA

5A A5 帧头

06 数据长度

82 写RAM区指令

00 96 变量地址

00 32 AA 写入显示的16进制数据

6.14 实时曲线显示:

Y- Central:Y坐标中心(DGUS软件的Y坐标值);VD-Central:要采集的数据

的最大值与最小值的和的50%,比如(0,1000),VD-central为(1000+0)*50%=500。

显示曲线就向变量地址发送数据即可。配置颜色等属性向属性变量地址发送个属

性值。

纵轴放大倍数:

(Xs,Ys) (Xe,Ye) 为曲线控件的左上角,右下角坐标。Vmax和Vmin 为采

集数据的最大值与最小值。

按二进制,8个位区分每个通道,通道使用置1,不使用置0。

比如0x01 为0通道,8个位分别是0000 0001,转换成十六进制为0x01.

0x11 为4通道和0通道同时使用,8个位分别是 0001 0001,转换成十六进

制为0x11

0x13 为4通道,1通道,0通道同时使用,8个位分别是0001 0011,转换

成十六进制为0x13

以此类推。

曲线在X坐标方向步进的像素点间隔,单位是像素点,设置成5表示X方

向每隔5个像素点置一个Y方向的点,所以我们只需要往曲线通道里面置一个Y

坐标点即可。

例:

采集数据范围500到700,所以VD-central 为(500+700)*50%=600

纵轴放大倍数为:(320*256)/(700-500)=409.6,向下取舍为409

这个公式中的320为Ye值减去Ys值,实际为曲线控件的高度,可以直接

在组态软件右上角得到,H值就是。

设置好后,发送指令:

发送500的数据,曲线会显示在控件的最下方。

指令 5A A5 04 84 01 01F4

5A A5 帧头

04 数据长度

84 写曲线指令

01 曲线0通道

01F4 数据500的十六进制

发送700的数据,曲线会显示在控件的最上方。

曲线是不能自己显示X,Y坐标的,如果有这种显示坐标的需求,可以将坐

标做在界面图上。

上图中的黑色方格就是做在界面图片上的。

6.14.1 曲线的缩放功能

设置描述指针是 1000(调节曲线 X,Y 轴的放大时会用到)

Y_Central :曲线显示控件的 Y 坐标的中心点 即 210

VD_Central : (纵坐标最大值+纵轴最小值)/2 , Y 轴范围是 0-5V ,设置了

一位整数,两位小数,DGUS 屏发送指令都是十六进制的整型数,数据需要放

大 100倍显示,即纵坐标最大值为 500,最小值纵坐标为 0,即 VD_Central =

(500+0)/2=250纵轴放大倍数:(Ye-Ys)*256/(Vmax-Vmin)=356*256/500=182.272,

小数省去即 182通道设置为 0,横轴间隔设置为 10(发送数据点的间隔,用户

可自定义)

4、设置曲线的描述指针为 1000,描述指针+08 的指向的地址是修改曲线显

示 Y 轴的放大与缩小,即 Y 轴设置的增量调节的变量地址为 1008。

描述指针+09 的低字节指向的地址是修改曲线显示 X 轴的放大与缩小,即

X 轴设置的增量调节的变量地址为 1009的低字节。

6.15 基本形显示:

这四项分别代表虚线的组成部分:1个像

素的实线再10个像素的隐形再20个像素的实线再30个像素的隐形线组成的虚

线。

串口发送如下命令测试;

实现功能:在屏(310,250)位置画一个半径为32,颜色为红色的圆;

发送命令:5AA5 0F 82 0020 0005 0001 0136 00FA 0020 F800

指令说明:

5AA5 :指令帧头;

0F

82

0020

0005

0001

0136

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:表示画圆指令;

:表示画一个圆;

:表示中心X坐标;

00FA :表示中心Y坐标;

0020 :表示圆半径为32;

F800 :表示圆颜色为红色;

画矩形

5AA5 11 82 0090 0003 0001 00A1 0136 00FA 0168 F800

11: 16进制的数据长度(10进制的17)

0090:地址

0003:画矩形指令

0001:画矩形的个数为1

00A1 0136:左上角坐标

00FA 0168:右下角坐标

F800:颜色值(红色)。

实现功能:矩形区域填充

发送命令:5AA5 11 82 0093 0004 0001 0004 0001 0136 00FA F800

实现功能:在屏(310,250)位置画两个同心圆,一个半径为32,颜色为红

色,另一个半径为64,颜色为黑色;

发送命令:5AA5 17 82 0020 0005 0002 0136 00FA 0020 F800 0136 00FA 0040

0000

指令说明:

5AA5 :指令帧头;

17

82

0020

0005

0002

0136

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:表示画圆指令;

:表示画两个圆;

:表示第一个圆的中心X坐标;

00FA :表示第一个圆的中心Y坐标;

0020 :表示圆半径为32;

F800 :表示第一个圆颜色为红色;

0136 :表示第二个圆的中心X坐标;

00FA :表示第二个圆的中心Y坐标;

0040

0000

:表示圆半径为64;

:表示第二个圆颜色为黑色;

实现功能:剪切图片ID为1的一个区域(左上角坐标:0,0;右下角坐标:

100,100)显示到当前页的(48,48)位置显示;

发送命令:5AA5 15 82 0020 0006 0001 0001 0000 0000 0064 0064 0030 0030

指令说明:

5AA5 :指令帧头;

15

82

0020

0006

0001

0001

0000

0000

0064

0064

0030

0030

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表剪切图片功能;

:代表只剪切一次;

:表示剪切图片的ID,存储位置;

:表示剪切图片的左上角X坐标;

:表示剪切图片的左上角Y坐标;

:表示剪切图片的右下角X坐标;

:表示剪切图片的右下角Y坐标;

:表示显示到当前页的左上角X坐标;

:表示显示到当前页的左上角Y坐标;

实现功能:剪切图片ID为1和2的一个区域(左上角坐标:0,0;右下角坐

标:100,100)分别显示到当前页的(48,48)、(150,150)位置显示;

发送命令:5AA5 23 82 0020 0006 0002 0001 0000 0000 0064 0064 0030 0030

0002 0000 0000 0064 0064 0096 0096

指令说明:

5AA5 :指令帧头;

23

82

0020

0006

0002

0001

0000

0000

0064

0064

0030

0030

0002

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表剪切图片功能;

:代表只剪切两次;

:表示剪切图片的ID,也即是存储到屏的图片编号;

:表示剪切图片ID为1的左上角X坐标;

:表示剪切图片ID为1的左上角Y坐标;

:表示剪切图片ID为1的右下角X坐标;

:表示剪切图片ID为1的右下角Y坐标;

:表示显示到当前页的左上角X坐标;

:表示显示到当前页的左上角Y坐标;

:表示剪切图片的ID,也即是存储到屏的图片编号;

0000

0000

0064

0064

0096

0096

:表示剪切图片ID为2的左上角X坐标;

:表示剪切图片ID为2的左上角Y坐标;

:表示剪切图片ID为2的右下角X坐标;

:表示剪切图片ID为2的右下角Y坐标;

:表示显示到当前页的左上角X坐标;

:表示显示到当前页的左上角Y坐标;

实现功能:在首页上画一条线,连接(0,0)和(100,100)两点;

发送命令:5AA5 11 82 0020 0002 0001 F800 0000 0000 0064 0064

指令说明:

5AA5 :指令帧头;

11

82

0020

0002

0001

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表连线功能;

:代表画一条线;

F800 :表示连线的颜色为红色;

0000

0000

0064

0064

:表示第一个点的左上角X坐标;

:表示第一个点的左上角Y坐标;

:表示第二个点的右下角X坐标;

:表示第二个点的右下角Y坐标;

实现功能:在首页上画两条线,连接(0,0)、(100,100)、(200,100)三点;

发送命令:5AA5 15 82 0020 0002 0001 F800 0000 0000 0064 0064

指令说明:

5AA5 :指令帧头;

15

82

0020

0002

0001

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表连线功能;

:代表画一条线;

F800 :表示连线的颜色为红色;

0000

:表示第一个点的左上角X坐标;

0000

0064

0064

:表示第一个点的左上角Y坐标;

:表示第二个点的右下角X坐标;

:表示第二个点的右下角Y坐标;

00C8 :表示第二个点的右下角X坐标;

0064 :表示第二个点的右下角Y坐标;

实现功能:在首页上画一点,(100,100)的一点;

发送命令:5AA5 0D 82 0020 0001 0001 0064 0064 0000

指令说明:

5AA5 :指令帧头;

0D

82

0020

0001

0001

0064

0064

0000

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表置点功能;

:代表画一个点;

:表示第一个置点的X坐标;

:表示第一个置点的Y坐标;

:表示第一个点的颜色为黑色

实现功能:在首页上画两点,(100,100)、(200,200)的两点;

发送命令:5AA5 13 82 0020 0001 0002 0064 0064 0000 00C8 00C8 F800

指令说明:

5AA5 :指令帧头;

13

82

0020

0001

0002

0064

0064

0000

:长度,包括后面数据的长度;

:写变量指令;

:变量指针;

:代表置点功能;

:代表画两个点;

:表示第一个置点的X坐标;

:表示第一个置点的Y坐标;

:表示第一个点的颜色为黑色

00C8 :表示第二个置点的X坐标;

00C8 :表示第二个置点的Y坐标;

F800 :表示第二个点的颜色为红色

假设定义的基本图形地址为0001,帧头为5A A5,现需要反色显示区域

(000EH,013BH)(01D9H,01AFH),使用命令000D

指令格式:5A A5 11 82 0001 000D 0001 000E 013B 01D9 01AF FFFF

5A A5:帧头

11:数据长度为17,用16进制表示为11。

82:表示写数据存储器

0001:表示一个反色区域

000E 013B:表示反色区域左上角坐标

01D9 01AF:表示反色区域右下角坐标

FFFF:表示反色选定的区域

6.16 特殊行业应用:

该功能没有用。

6.17 硬件参数配置:

用于实现触控修改背光亮度调节。屏幕亮度范围是0x00-0x40。

需要定义两个硬件参数配置:

进入页面设置一个硬件参数配置,如下图。

进入设置界面以后,设置如下。

根据开发指令硬件参数配置的说明。

控制背光的寄存器地址是0x01.设置增量调节的变量地址为6F01。

至此这个工程设置完毕。

6.18 转动调节:

可与“图标旋转指示”和“数据变量显示”一起使用,外内径的差值区域为

可以触摸改变变量值的区域。

起始角度和终止角度的限定条件如下所示:

6.19 按压数据同步返回:

该功能有三种状态:

1,触摸屏第一次按压下去时

2,触摸屏第一次按压后,持续按压下时

3,触摸屏松开时

每种状态有三种模式:

0x00模式时,不做任何操作

0x01模式:把VP1S变量地址的LEN1字节长度的数据复制到VP1T变量地

址里面

0x02模式:把VP1S变量地址里面的LEN1字节长度数据上传到串口

0x03模式:把VP1S里面的LEN1字节长度数据复制到VP1T指向的DGUS

寄存器地址

0x00模式时,不做任何操作

0x01模式:把VP2S变量地址的LEN2字节长度的数据复制到VP2T变量地

址里面

0x02模式:把VP2S变量地址里面的LEN2字节长度数据上传到串口

0x03模式:把VP2S里面的LEN2字节长度数据复制到VP2T指向的DGUS

寄存器地址

0x00模式时,不做任何操作

0x01模式:把VP3S变量地址的LEN3字节长度的数据复制到VP3T变量地

址里面

0x02模式:把VP3S变量地址里面的LEN3字节长度数据上传到串口

0x03模式:把VP3S里面的LEN3字节长度数据复制到VP3T指向的DGUS

寄存器地址

例:

第一次按压为0x01模式,表示把0x0050地址里面的10字节数据复制到

0x0000地址里面。

持续按压时为0x02模式,表示把0x0060地址里面的10个字节数据上传到

串口

松开按压时为0x03模式,表示把0x0070地址里面的2个字节数据写到DGUS

寄存器0x02寄存器里面。(写2个字节,相当于同时写了0x02与0x03寄存器)

此功能返回的数据,与其它功能返回的数据不同,不带帧头等。

比如某“按键返回”功能返回的数据为:

5A A5 06 83 0000 01 0001

5A A5 帧头

06 数据长度

83 指令

0000变量地址

01返回一个字长数据

0001 返回的数据

而使用同步数据返回功能,返回到串口的数据没有5A A5 06 83 0000 01, 只

有一个0001返回到串口,如果需要有帧头,可以自己将帧头等数据写到变量地

址里面。

当处于“持续按压”状态时,功能是在持续动作的,比如选择0x02模式,

数据会不间断的上传到串口,直到“持续按压”状态结束,松开为止

如上例子中几个变量地址里面的数据,可以通过22文件默认写入(见22

文件初始化文档介绍),可掉电保存,也可以通过下位机发指令给变量地址赋值,

掉电不保存。

第7章 描述指针指令举例

7.1 数据变量显示

如何修改数据变量显示的颜色。

解决办法:公式:描述指针+地址=属性地址,如图。

例改变显示位置5A A5 07 82 5001 0000 0000 数据框会出现位置在(0,0)

例:数据变量显示的描述指针设置5000,控制颜色的变量地址就,5003.

控制坐标的地址就是5001.

使用82 指令:5A A5 05 82 5003 F800。修改成红色。

7.2 数据变量上电不显示0实现方法

方法1:

需要使用描述指针。假如数据变量的描述指针是5000,变量地址是0001.

发送指令:5A A5 05 82 50 00 FF 00 就可以隐藏数据变量显示。

发送指令:5A A5 05 82 50 00 00 01. 5A A5 05 82 00 01 00 099,显示数据变

量9。这里应用可以这样应用,设置开关做键值上去,对应描述指针的变量地址

和FF00或变量地址的键值。

方法2:

例如800*480的屏,数据变量的描述指针是5000,5A A5 07 82 5001 0320

01E0,发送这个指令将其显示的位置移动到(800,480)的像素点去了。要显示

回来那只能找到原来的坐标点发指令在移回来了。

上表中0x04 0x000D就是说多个描述指针的间隔长度,所以显示框的变量,

描述指针间隔10H个地址间距可以通用,可以这样统一设置方便计算,建议描述

指针可以设置4000到6F00之间,变量地址4000H之前,这样就不会产生冲突

6F00到6FFF之间的变量地址是硬件参数部分用的 不推荐使用这个部分。

6FFF之外的变量地址不要使用,会出现不可预计的错误。

*********注意 mini屏变量地址0000到07FF,描述指针不能超过*******

隐藏文本显示的原理和数据变量一样。

文本举例

改变字体颜色5a a5 05 82 1003 0030

改变字体大小数据变量5a a5 05 82 1004 00 30 发1004,只需要改x方向点

阵数 0030 就是改成0号字库48的点

文本录入5a a5 05 82 100A 3060文本ascII录入的xy点阵数都要改,GBK

录入不可改变大小。

图标变量显示

图标描述指针显示背景色指令举例:假设描述指针为5000,图标库位置为

24,5a a5 05 82 5007 1801 显示背景

5a a5 05 82 5007 1800 不显示背景

本文标签: 变量显示数据指令地址