DGUS屏串口调试语句
工业串口屏迪文DGUS屏开发指南_V32
4.7.1 ASCII 文本录入 ......................................................................................................................................................... 16 4.7.2 GBK 汉字文本录入 ................................................................................................................................................... 17 4.8 硬件参数配置(0x07)................................................................................................................................................... 19
DGUS屏指令大全
向液晶发送切换界面命令A5 5A 04 80 03 0000 (0x03图片寄存器,后四位为界面地址,高字节在前,低字节在后)读屏的版本号: A5 5A 03 81 00 01亮度控制A5 5A 03 80 01 20 (0x01寄存器0x00~0x40表示最暗到最亮,共为65级)蜂鸣器声音A5 5A 03 80 02 0A (0x02寄存器0x00~0xff 表示声音长短,共有255级)使能触控A5 5A 03 80 0B 00 (0x0B 寄存器 0x00失能触控,其它使能 )向液晶指定地址写数(u16)A5 5A 05 82 xxxx 0000 uint 向液晶指定地址写数(u32)A5 5A 07 82 xxxx 0000 0000 ulong向液晶写ASCII 码 V1.02A A5 5A 0B 8221.34℃ A5 5A 0C 82 1000 32312E3334A1E600FF 02:54A5 5A 0A 82 1000 30323A3534 00FF改变字体颜色: A5 5A 05 82 2003 FF30 (描述指针+偏移量3) (颜色代码)隐藏汉字或ASCLL :A5 5A 05 82 2008 0002(描述指针+偏移量8)(需显示的字符长度,2个字符为1个汉字) 改变ASCII 码字体大小A5 5A 05 82 200A 3060(描述指针+偏移量A )(X,Y 点阵数,Y=2X ,针对0号字库)画曲线 00通道 A5 5A 16 84调整曲线横轴间隔: A5 5A 05 82 5009 0010 (描述指针+偏移量9)(间隔为10)调整曲线纵轴放大倍数(X/256): A5 5A 05 82 5008 0023(描述指针+偏移量8) (放大倍数为23)调整曲线颜色: A5 5A 05 82 5007 F800 (描述指针+偏移量7)(F800为红色代码)清除曲线数据: A5 5A 03 80 EB 55(0xEB 为清除命令)(0x55清除0~7 8个通道的缓冲数据,0x56~0x5D 对应CH0~CH7)读时间前7位数据 A5 5A 03 81 20 07(0x20为读RTC 寄存器)(前7位数据)收到的7位数据 A5 5A 0A 81 20 07 16 04 05 02 19 22 00 (年月日周时分秒)调整文本颜色 A5 5A 05 82 2003 0030 (描述指针+偏移量3)(颜色代码)↑ GB 码:A1 FC 查表↓ GB 码:A1 FD基本图形:连一条线: A5 5A 13 82 基本图形:连三条线: A5 5A 1B 82 0200 0002 0003 F800显示“总胆红素(TBIL)反应曲线”A5 5A 17 82剪切两个图片粘贴到当前图片的两个位置A5 5A 25 82 0300 0006 0002取消图片拷贝A5 5A 05 82。
迪文屏通信
如何与迪文屏通讯1.电脑如何与DGUS屏通信?用连接线将屏与电脑正确连接,设置调试终端。
(请参考调试终端设置和屏的接线方法)请您发送5A A503810001,如果有返回数据如5A A50481000163,表示可以与屏正常通讯。
注:发送的指令是读取屏的当前内核版本号,以此来检查通讯状态。
5A A5表示帧头(默认帧头,如果用户已自行修改,请根据当前帧头发送指令),03表示数据长度(以字节为单位),81表示读取DGUS屏寄存器,00表示存储DGUS屏内核版本号的寄存器,01表示版本号为1个字节长度。
返回的数据63,表示当前内核为V63版本(由于内核不断升级中,根据购买时间的不同,内核版本也不一样,如62,61,60,59,58......都表示正确的版本号,版本号的高低只跟DGUS屏的功能有关)。
2.已正确连接屏和电脑,调试终端设置也正确,发送指令没有返回值?请您将DWIN_SET文件夹里的CONFIG.TXT文件重新写入,将波特率和帧头重新配置成出厂默认值:将DWIN_SET文件夹放进SD卡根目录下,将屏掉电-插卡-上电,屏幕蓝屏1秒左右,读取SD卡里的config.txt文件的配置,请设置调试终端并发送指令检查通讯情况。
注:如果上电后屏幕没有蓝屏,请将SD卡在DOS系统下格式化为FA T32文件格式,确保屏能识别SD卡,格式化流程请参考迪文DGUS屏开发指南_V40.pdf,2.1SD/SDHC配置接口。
3.已正确连接屏和电脑,调试终端也设置正确,config文件也已下载完毕,仍然没有返回值?如果用户自行更改过内核程序,由于更改不成功,会出现无法通讯的情况。
请您下载我们最新的内核程序,用SD卡更新内核。
内核程序链接:/supports/doc-download.html请将内核程序放在DWIN_SET文件夹下,然后放到SD卡根目录,将屏掉电-插卡-上电,屏幕蓝屏3秒左右,读取SD卡里的内核程序。
DGUS指令说明
迪文DGUS指令说明一、迪文DGUS开发指南指令集如下图所示由上图可看出迪文DGUS串口数据帧的架构是由:帧头(2个字节)数据长度(1个字节)指令(1个字节)数据(N 个字节)CRC校验(2个字节)组成(指令都以十六进制发送)迪文DGUS指令共有也只有5条指令,迪文DGUS的开发方式,屏和下位机的交互都只以变量的形式进行交互,下位机把数据发送到屏的变量地址里,不参与屏的显示控制,下位机只需要把需要显示的信息送到屏相应的地址里。
下文把五条指令举列做详细说明:二、访问控制寄存器指令:(包括读/写控制寄存器两条指令)1.写控制寄存器指令(80)此处以切换图片为例【存放图片的控制寄存器地址是(03)】例如从当前页面切换到第5幅图片,向屏发指令如下:A5 5A 04 80 03 00 05注释:A5 5A: 帧头有两个字节组成可以自定义04:发送的数据长度(指从指令开始到最后的数据长度,此处从80指令开始共发送4个字节)80:写控制寄存器指令03:控制寄存器地址00 05:图片地址2.读控制寄存器指令(81)以读当前图片地址为例(假设当前页面地址是第5幅):向屏发指令如下:A5 5A 03 81 03 02A5 5A:帧头03:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送3个字节)81:读控制寄存器指令03:控制寄存器地址02:读03控制寄存器2个字节寄存器数据(图片地址是两个字节)3.读应答读完以后屏会向串口返回读应答:A5 5A 05 81 03 02 00 05A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送5个字节)81:读控制寄存器指令03:控制寄存器地址02:读2个字节寄存器数据00 05:读回来的当前图片地址一、访问数据存储器(包括读/写数据存储区两条指令)1.写数据存储区指令(82)(1)此处以往0000变量地址里写数值2为例:A5 5A 05 82 00 00 00 02A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从82指令开始共发送5个字节)82:写数据存储区指令00 00:变量地址(两个字节)00 02:数值2(两个字节)(2)往0000变量地址里写汉字“北”在DGUS软件中做好文本显示,发送数据如下:A5 5A 05 82 00 00 B1 B1A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从82指令开始共发送5个字节)82:写数据存储区指令00 00:变量地址(两个字节)B1 B1: “北”的汉字代码2.读数据存储区指令(83)此处以读0000变量地址里的数值(假设当前数值为2)A5 5A 04 83 00 00 01A5 5A: 帧头04:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送4个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据3.读应答读完以后屏会向串口返回读应答:A5 5A 06 83 00 00 01 00 02A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送6个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据00 02:0000地址里的数据值是2.二、写曲线缓冲区指令(84)此处假设曲线通道是0号通道;A5 5A 06 84 01 00 01 00 10A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从84指令开始共发送6个字节)84: 写曲线缓冲区指令01:曲线通道(例如用0号通道即把第0位置1,即为01;如果用1号通道即把第1位置1,即为02;如果用2号通道即把第2位置1,即为04,以此类推。
迪文触摸屏指令指令说明
迪文DGUS指令说明一、迪文DGUS开发指南指令集如下图所示由上图可看出迪文DGUS串口数据帧的架构是由:帧头(2个字节)数据长度(1个字节)指令(1个字节)数据(N 个字节)CRC校验(2个字节)组成(指令都以十六进制发送)迪文DGUS指令共有也只有5条指令,迪文DGUS的开发方式,屏和下位机的交互都只以变量的形式进行交互,下位机把数据发送到屏的变量地址里,不参与屏的显示控制,下位机只需要把需要显示的信息送到屏相应的地址里。
下文把五条指令举列做详细说明:二、访问控制寄存器指令:(包括读/写控制寄存器两条指令)1.写控制寄存器指令(80)此处以切换图片为例【存放图片的控制寄存器地址是(03)】例如从当前页面切换到第5幅图片,向屏发指令如下:A5 5A 04 80 03 00 05注释:A5 5A: 帧头有两个字节组成可以自定义04:发送的数据长度(指从指令开始到最后的数据长度,此处从80指令开始共发送4个字节)80:写控制寄存器指令03:控制寄存器地址00 05:图片地址2.读控制寄存器指令(81)以读当前图片地址为例(假设当前页面地址是第5幅):向屏发指令如下:A5 5A 03 81 03 02A5 5A:帧头03:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送3个字节)81:读控制寄存器指令03:控制寄存器地址02:读03控制寄存器2个字节寄存器数据(图片地址是两个字节)3.读应答读完以后屏会向串口返回读应答:A5 5A 05 81 03 02 00 05A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送5个字节)81:读控制寄存器指令03:控制寄存器地址02:读2个字节寄存器数据00 05:读回来的当前图片地址一、访问数据存储器(包括读/写数据存储区两条指令)1.写数据存储区指令(82)此处以往0000变量地址里写数值2为例:A5 5A 05 82 00 00 00 02A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从82指令开始共发送5个字节)82:写数据存储区指令00 00:变量地址(两个字节)00 02:数值2(两个字节)2.读数据存储区指令(83)此处以读0000变量地址里的数值(假设当前数值为2)A5 5A 04 83 00 00 01A5 5A: 帧头04:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送4个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据3.读应答读完以后屏会向串口返回读应答:A5 5A 06 83 00 00 01 00 02A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送6个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据00 02:0000地址里的数据值是2.二、写曲线缓冲区指令(84)此处假设曲线通道是0号通道;A5 5A 06 84 01 00 01 00 10A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从84指令开始共发送6个字节)84: 写曲线缓冲区指令01:曲线通道(例如用0号通道即把第0位置1,即为01;如果用1号通道即把第1位置1,即为02;如果用2号通道即把第2位置1,即为04,以此类推。
DGUS屏使用指南
目录一.硬件连接 (1)1.屏命名规则 (1)2.C系列屏 (1)2.1. 实物图如下图1(具体型号请参考对应数据手册)所示: (1)2.2. 串口引脚接法说明: (2)2.3.用户接口方式 (2)3.T系列屏 (2)3.1 .实物图如下图2(具体型号请参考对应数据手册)所示: (2)3.2 .10pin串口引脚接法说明: (3)3.3. 8pin串口引脚接法说明: (3)3.4. 用户接口方式 (3)4.S系列屏 (4)4.1. 实物图如下图3(具体型号请参考对应数据手册)所示: (4)4.2. 10pin串口引脚接法说明: (4)4.3. 8pin串口引脚接法说明: (4)4.4. 用户接口方式 (5)5.18系列屏 (5)5.1. 实物图如下图4(具体型号请参考对应数据手册)所示: (5)5.2. 6pin串口引脚接法说明: (6)5.3. 用户连接端子 (6)二.软件设计 (6)1.开发原理 (6)2.开发前准备资料 (7)2.1 软件 (7)2.1.1 配置软件 (7)2.1.2 0号字库软件 (9)2.1.3 汉字字库生成软件 (10)2.1.4 迪文ICO生成图标库软件 (11)2.1.5 迪文图片分辨率转换软件 (14)2.2 硬件 (16)2.2.1 连接线 (16)2.2.2 下载工具 (17)3.软件开发步骤 (18)3.1. 软件界面介绍 (18)3.2. 通讯说明 (18)3.2.1 数据帧架构 (18)3.2.2 指令集及说明 (19)3.2.3 0x80、0x81指令说明 (19)3.2.4 0x82、0x83指令说明 (20)3.3. 例程说明 (20)3.3.1. 屏按键功能(与上位机交互) (21)3.3.2. 屏显示/不显示变量功能(启动描述指针功能) (21)3.3.3. 数据存储功能(掉电保存) (23)3.3.4. 上电初始化 (24)3.3.5. 不带触摸的屏实现触摸屏功能 (25)4.SD卡升级内核程序 (27)4.1. SD卡升级内核应满足以下任一条件: (27)4.2. SD卡升级注意事项 (27)三.注意事项 (27)一.硬件连接1.屏命名规则图12.2. 串口引脚接法说明:图23.2 .10pin串口引脚接法说明:4.S系列屏4.1. 实物图如下图3(具体型号请参考对应数据手册)所示:图3后的短接焊盘来改变电平为3.3V的COMS电平;供电可以通过焊接屏后的短接焊盘来改变供电范围,具体参数请参考对应型号数据手册;4.3. 8pin串口引脚接法说明:4.4. 用户接口方式10 Pin_1.0mm FCC , 8 Pin_2.54mm5.18系列屏5.1. 实物图如下图4(具体型号请参考对应数据手册)所示:图45.2. 6pin 串口引脚接法说明:引脚名称 说明 GND 接地485_- 接485接口的B 端 485_+ 接485接口的A 端232_Tx 屏发送端,接控制端的接收端 232_Rx 屏接收端,接控制端的发送端VIN 典型12V 供电,宽压供电,具体型号屏请以对应数据手册为准SD 卡座SD 卡下载接口,凤凰端子边上5.3. 用户连接端子6Pin_3.81mm 凤凰端子;二.软件设计1.开发原理开发原理概述:使用迪文DGUS 配置软件将变量和需要实现的功能关联起来,然后通过控制端给该设置的变量赋值来实现对应的功能,或读取变量值来查看屏当前相关功能的状态; 变量地址:是针对屏来进行定义的,类似组态软件的地址定义,又不相同,主要区别在于组态软件的地址是有特定含义的(即和屏内部的某个功能已绑定),而采用DGUS 屏的变量地址可以与任意功能来进行关联(不出现变量地址交叉的情况即可),变量地址范围为0x0000——0x6FFF ;变量地址 屏显示、触控功能 单片机 绑定 对变量读写 配置软件设置设置配置时定义变量地址2.开发前准备资料2.1 软件2.1.1 配置软件配置软件的主要目的是配置屏的触控、通讯参数设置及显示参数设定;配置软件如下图5所示:图5软件使用操作步骤:1.新建一个工程文件,如下图6所示选择屏的分辨率及存储位置;分辨率举例说明:屏型号:DM T80480T070_06WTT:16位色;80480 :800 x 480的分辨率;注:由于所有K600+的屏都是16位色,软件已屏蔽位色选择功能,若屏需要竖起来显示(及该为480 x 800的方式),可以修改软件目录下Config文件夹上的Terminal文件来修改分辨率,修改为480 x 800 ,如下截图7所示(设置R10=480X800):图6图72.注:若图片不是按照存储位置方式命名,添加进来图片后,软件左边“位置”一列,对应的是设置触控及显示的位置,如将上图位置修改为1,再做设置,那么0界面(即首页)的触控及显示设置都将到次页(即1界面)上。
串口调试助手语句
9、3号节目
------起始码-----03--方-速-停-连-汉字- 结束码-
3A 2A 48 46 36 30 33 34 35 36 31 80 01 80 02 80 03 0D 0A 0D 0A
9、9号节目
------起始码-----02--方-速-停-连---9.----你----好----,----欢----迎---光-----临----!-----结束码-
3A 2A 48 46 36 30 39 38 32 33 31 A2 B9 C4 E3 BA C3 A3 AC BB B6 D3 AD B9 E2 C1 D9 A3 A1 0D 0A 0D 0A
3、单多行设置
------起始码-----00---N-VALUE-----03---汉字-结束码-
3A 2A 48 46 36 30 30 4E 30 31 30 33 90 23 0D 0A 0D 0A
4、时间开始
------起始码-----00--F---风格--方-速-停---结束码-
2、2号节目
------起始码-----02--方-速-停-连---2.----你----好----,----欢----迎---光-----临----!-----结束码-
3A 2A 48 46 36 30 32 31 32 33 31 A2 B2 C4 E3 BA C3 A3 AC BB B6 D3 AD B9 E2 C1 D9 A3 A1 0D 0A 0D 0A
4、4号节目
------起始码-----02--方-速-停-连---4.----你----好----,----欢----迎---光-----临----!-----结束码-
51单片机与迪文DGUS屏通信合作,下载及模拟调试
51单片机与迪文DGUS屏通信合作,下载及模拟调试迪文DGUS屏的所有硬件参数和资料下载,都是通过屏上的SD/SDHC接口来完成的,文件必须使用FAT32文件格式。
第一次使用SD卡前,推荐先格式化一次,流程如下:1、右键单击SD卡,在弹出来的菜单中选择“格式化”:2、在弹出的“格式化SD卡”属性框中,我们需要将SD卡的文件系统设置成FAT32格式,分配单元大小设置成4096字节,这两点尤其重要,否则,可能识别不到SD卡。
SD卡成功格式化后,我们就可以将DGUS工程中的DWIN_SET文件夹复制到SD卡中了开始下载程序了,这里需要注意的是,SD卡中不要有其他的文件或文件夹,只能放一个DWIN_SET文件夹。
接下来,我们就可以把SD卡插到DGUS屏的SD卡接口上,DGUS屏检测到SD卡后,会显示蓝屏提示用户检测到SD卡,然后开始下载SD卡中的文件到屏中。
在下载SD卡文件的时候,需要注意的是:两次SD卡热插拔之间必须间隔至少6秒,不然DGUS屏会认为是同一张卡,而不会启动SD卡操作。
如果用户已经禁止SD卡接口,要启用SD卡接口,除非事先解锁或在SD卡的CONFIG.TXT文件中有解锁指令。
SD卡下载完成,DGUS屏会自动复位一次,拔出SD卡,下载结束。
因为现在没有跟单片机程序通信上,所以,屏上也都只是显示一些变量的初始值,或许还有小伙伴们在下载工程文件后,发现显示位置不对,或者说有点偏位,那么该怎么快速调整呢?这个时候,DGUS软件的在线下载功能就可以为我们提供便利了,毕竟,只是修改一下变量的属性的话,在线下载功能还是很方便的,既能马上看到效果,又可以避免每次插拔SD卡的麻烦,下面接跟着笔者来体验以下该功能吧。
首先,我们需要准备一条USB转232的线,然后,将USB转232线的RXD、TXD、GND。
51单片机与迪文DGUS屏通信例程之三: 单片机程序编写
51单片机与迪文DGUS屏通信例程之三:单片机程序编写相信接触过STC15系列单片机的小伙伴们,应该会对其编程风格比较熟悉,没错,STC15系列单片机可以采用库函数编程,官方提供了标准的函数库,我们只需要利用好库函数,便可大大简化配置流程,从而提高编程效率。
由于笔者这里的教程不是关于51单片机的基础教程,所以此处省去了新建工程以及如何添加库文件等操作。
首先,我们要养成良好的习惯,在使用任何一款板子的时候,先建一个配置板载资源的文件,当然要是板子比较复杂的话,可以分模块配置多个,由于笔者使用的板子比较简单,所以就只添加了一个名为“BSP_IO.h”的文件,顾名思义,就是一些输入输出的配置而已了。
接下来,我们来配置一下串口参数,在之前的帖子中我们知道,迪文DGUS屏的串口通信波特率配置的是115200,那么,我们在单片机程序中,自然也要讲串口通信的波特率配置成115200,其他的就不需要修改了:
程序中有需要用到串口定时向触摸屏刷新数据,所以,这里我们也配置一个定时器,并设置起中断频率为1000Hz,即:1ms中断一次。
接下来,我们需要根据板子上的IO分布,来配置一下IO口的输入输出模式,所有输入口均配置成“准双向口”,所有输出口均配置成“强推挽模式”。
另外,程序中也有用到两路0-5V电压的采集,所以此处我们还需要对ADC相关的参数进行配置,本例程中采用的是AD口分别是P10和P11,查询方式获取AD值:
至此,系统配置相关的东西基本就完成了,接下来,我们就需要自己写一些应用相关的函数了,本例中,笔者写了四个函数:
Uart1_Monitor(); //串口1数据监控。
迪文触摸屏指令指令说明
迪文DGUS指令说明一、迪文DGUS开发指南指令集如下图所示由上图可看出迪文DGUS串口数据帧的架构是由:帧头(2个字节)数据长度(1个字节)指令(1个字节)数据(N 个字节)CRC校验(2个字节)组成(指令都以十六进制发送)迪文DGUS指令共有也只有5条指令,迪文DGUS的开发方式,屏和下位机的交互都只以变量的形式进行交互,下位机把数据发送到屏的变量地址里,不参与屏的显示控制,下位机只需要把需要显示的信息送到屏相应的地址里。
下文把五条指令举列做详细说明:二、访问控制寄存器指令:(包括读/写控制寄存器两条指令)1.写控制寄存器指令(80)此处以切换图片为例【存放图片的控制寄存器地址是(03)】例如从当前页面切换到第5幅图片,向屏发指令如下:A5 5A 04 80 03 00 05注释:A5 5A: 帧头有两个字节组成可以自定义04:发送的数据长度(指从指令开始到最后的数据长度,此处从80指令开始共发送4个字节)80:写控制寄存器指令03:控制寄存器地址00 05:图片地址2.读控制寄存器指令(81)以读当前图片地址为例(假设当前页面地址是第5幅):向屏发指令如下:A5 5A 03 81 03 02A5 5A:帧头03:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送3个字节)81:读控制寄存器指令03:控制寄存器地址02:读03控制寄存器2个字节寄存器数据(图片地址是两个字节)3.读应答读完以后屏会向串口返回读应答:A5 5A 05 81 03 02 00 05A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从81指令开始共发送5个字节)81:读控制寄存器指令03:控制寄存器地址02:读2个字节寄存器数据00 05:读回来的当前图片地址一、访问数据存储器(包括读/写数据存储区两条指令)1.写数据存储区指令(82)此处以往0000变量地址里写数值2为例:A5 5A 05 82 00 00 00 02A5 5A: 帧头05:发送的数据长度(指从指令开始到最后的数据长度,此处从82指令开始共发送5个字节)82:写数据存储区指令00 00:变量地址(两个字节)00 02:数值2(两个字节)2.读数据存储区指令(83)此处以读0000变量地址里的数值(假设当前数值为2)A5 5A 04 83 00 00 01A5 5A: 帧头04:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送4个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据3.读应答读完以后屏会向串口返回读应答:A5 5A 06 83 00 00 01 00 02A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从83指令开始共发送6个字节)83:读数据存储区指令00 00:变量地址(两个字节)01:从0000地址开始读1个字长度数据00 02:0000地址里的数据值是2.二、写曲线缓冲区指令(84)此处假设曲线通道是0号通道;A5 5A 06 84 01 00 01 00 10A5 5A: 帧头06:发送的数据长度(指从指令开始到最后的数据长度,此处从84指令开始共发送6个字节)84: 写曲线缓冲区指令01:曲线通道(例如用0号通道即把第0位置1,即为01;如果用1号通道即把第1位置1,即为02;如果用2号通道即把第2位置1,即为04,以此类推。
迪文 设置 串口波特率 指令-解释说明
迪文设置串口波特率指令-概述说明以及解释1.引言1.1 概述概述部分是文章的开头,它旨在给读者提供一个简要的了解问题的背景和重要性。
对于这篇文章,我们可以这样编写概述部分的内容:概述:在迪文设备的串口通信中,波特率设置是一个关键的部分。
波特率是指每秒钟传送的波特数,它决定了数据传输的速度和稳定性。
在本文中,我们将详细介绍迪文设备的串口通信原理和波特率设置指令。
了解这些内容对于正确配置和使用迪文设备的串口通信功能非常重要。
首先,我们将对迪文设备进行简要介绍,包括其主要特点和应用领域。
然后,我们将深入讨论串口通信原理,包括串行数据传输的工作原理和通信过程中的一些重要概念。
接下来,我们将详细介绍串口波特率设置指令的使用方法和参数,以及其对数据传输的影响。
在结论部分,我们将强调波特率设置的重要性,并提供迪文设备的具体波特率设置方法。
我们还将探讨不同波特率设置对不同应用场景的影响,并展望未来可能的发展方向。
通过阅读本文,读者将能够全面了解迪文设备串口通信的工作原理和波特率设置方法,从而正确配置和优化迪文设备的串口通信功能,提高数据传输的效率和可靠性。
让我们开始探索迪文设备的串口波特率设置指令吧!1.2文章结构1.2 文章结构:本文将按照以下结构进行讲解和分析。
首先,在引言部分,我们将概述本文的研究背景和目的,以及总结文章的主要内容。
接下来,在正文部分,我们将介绍迪文设备的基本信息,并详细解释串口通信的原理。
然后,我们将重点讨论串口波特率设置指令的相关知识,包括指令的作用、格式等。
在结论部分,我们将强调波特率设置的重要性,介绍迪文设备的波特率设置方法,并展望其在不同应用场景下的潜在价值。
通过对这些内容的阐述,读者将能够全面了解迪文设备的串口波特率设置指令,并在实际应用中更好地理解和应用该指令。
接下来,我们将开始本文的主体部分,首先介绍迪文设备的基本概况。
1.3 总结总结部分内容:通过本文的阅读,我们对迪文设备的串口波特率设置指令有了深入的了解。
DGUS屏的modbus主机内核-配置与调试-160425
Dgus屏的modbus配置与调试1:dgus屏modbus现只支持HEX的RTU主机格式,暂时不支持ascii格式的通信模式,暂时不支持从机格式的通信模式2:modbus内核升级。
SD卡升级如下(串口升级请参考串口升级文档)。
modbus内核为“DGUS_V71_MODBUS”,把内核文件装入sd卡上的DWIN_SET 文件夹中(可以随工程文件考入,也单独拷入即可),插到屏的sd卡接口。
3:modbus协议的配置方式有3种,1)由屏上页面配置。
一般测试可以用这个方法,请参考modbus7寸8寸历程。
>如上图的第二条指令03指令:是将设备5的356(0x0164)地址的2个字的数读到屏上变量地址0001的显示,发送模式是0,所有页面均可执行,(如果要改成01模式,后面发送标志改成10,那么此指令会在10页面下才会执行)上图配置后屏主动会外发:05 03 01 64 00 02 85 AC可以用串口测试回应:05 03 04 000A 000B DE36历程的屏上面地址0x0001和0x0002设会显示数据1.0和1.1显示小数,(因为设置了一位定点小数)>如上图的第二条指令16(0x10)指令:是将屏上面变量地址4098(0x1002),的数写进0设备地址2,发送模式是2,也就是当4111(0x100F)这个设置的按键返回地址键值0x005A按下之后,才进行发送,发送一次后地址0x100F键值底层自动清零。
以上两条可以用于测试通讯或简单的功能直接界面配置替换。
2)由22.bin文件配置。
这个方法是90%的用户用的方法,22文件要单独拿出来写,不然点击生成配置文件,22文件会被软件本身未有初始值设置的控件的地方而清空。
Modbus协议在屏的内存地址0x5000(word)开始定义,UltraEdit-32打开是由字节编辑,那么0x5000折算到22.bin的字节地址为:0x5000X2=0xA000 .用UltraEdit-32 打开22.bin(见图1)图1:0xa000=5A 表示启用modbus。
迪文屏通信
如何与迪文屏通讯1.电脑如何与DGUS屏通信?用连接线将屏与电脑正确连接,设置调试终端。
(请参考调试终端设置和屏的接线方法)请您发送5A A503810001,如果有返回数据如5A A50481000163,表示可以与屏正常通讯。
注:发送的指令是读取屏的当前内核版本号,以此来检查通讯状态。
5A A5表示帧头(默认帧头,如果用户已自行修改,请根据当前帧头发送指令),03表示数据长度(以字节为单位),81表示读取DGUS屏寄存器,00表示存储DGUS屏内核版本号的寄存器,01表示版本号为1个字节长度。
返回的数据63,表示当前内核为V63版本(由于内核不断升级中,根据购买时间的不同,内核版本也不一样,如62,61,60,59,58......都表示正确的版本号,版本号的高低只跟DGUS屏的功能有关)。
2.已正确连接屏和电脑,调试终端设置也正确,发送指令没有返回值?请您将DWIN_SET文件夹里的CONFIG.TXT文件重新写入,将波特率和帧头重新配置成出厂默认值:将DWIN_SET文件夹放进SD卡根目录下,将屏掉电-插卡-上电,屏幕蓝屏1秒左右,读取SD卡里的config.txt文件的配置,请设置调试终端并发送指令检查通讯情况。
注:如果上电后屏幕没有蓝屏,请将SD卡在DOS系统下格式化为FA T32文件格式,确保屏能识别SD卡,格式化流程请参考迪文DGUS屏开发指南_V40.pdf,2.1SD/SDHC配置接口。
3.已正确连接屏和电脑,调试终端也设置正确,config文件也已下载完毕,仍然没有返回值?如果用户自行更改过内核程序,由于更改不成功,会出现无法通讯的情况。
请您下载我们最新的内核程序,用SD卡更新内核。
内核程序链接:/supports/doc-download.html请将内核程序放在DWIN_SET文件夹下,然后放到SD卡根目录,将屏掉电-插卡-上电,屏幕蓝屏3秒左右,读取SD卡里的内核程序。
迪文串口屏开发--DGUS新建工程及配置讲解
DGUS新建工程及配置讲解DGUS是一款图形化的针对迪文串口屏的开发工具软件。
下面我们将介绍如何新建一个工程,及详细讲解一下相关的配置项:1、作者使用的版本是“DGUS ToolV5.04”,双击打开后的界面如下:2、点击“新建工程”后,会弹出“屏幕属性设置”的界面,如下图。
这里我们主要关注“屏幕尺寸”、“存储路径”。
“屏幕尺寸”:7寸屏选择800X480,4.3寸屏选择480X272,“图像像素”选择默认就行,“存储路径”:工程文件存放的路径。
3、点击“ok”之后,进入设计界面,此处我们介绍菜单“配置”中的参数;4、点击“配置”菜单后,弹出“系统配置”界面,如下图。
共有15项配置,下面我们来一一介绍。
先介绍常用的,一般常用的设置好之后,就可以正常工作了: 配置项1串口的波特率,串口的其他几项是默认的,数据位-8,校验位-无,停止位-1,流控-无;配置项2和3是一起的,用于通信协议的标识头,一般可设置为5A 和A5,也可以不设置,但是强烈建议设置,设置的好处是方便定位通信内容的头部、增加一个抗干扰检查的低成本手段;配置项7,用于通信需不需要添加校验,根据现场情况决定,一般选择不启用,若现场环境恶劣,电磁干扰厉害,可选择启用此项功能;配置项15,确定配置,每次改完配置之后,别忘了点击它,否则不会生效;配置项1、2、3、7配置完成后,点击15即完成最基本的设置了,可满足日常的使用了。
剩下的配置项:配置项4,图像旋转90°;配置项5,图像旋转180°;注意:若配置项4和5都选择偏转了,则图像会旋转270°;配置项6,背光受不受触屏控制,一般和配置项12配合使用;配置项8,和屏的数据录入控件相关的一个配置选项,这个留在以后具体介绍;配置项9,56KB的存储器要不要初始化为用户自定义的数据,后面讲到字库文件的时候,具体介绍;配置项10,若我们的数据刷新速率高,可选择80ms,默认的200ms 一般满足应用需求了;配置项13,这个一般用不着,可以忽略;配置项14,要不要每次上电时,做一次触摸校准;。
迪文DGUS演示实例(1)
目录1DGUS演示案例1 (1)1.1DGUS演示主界面 (1)1.2变量数据录入及显示 (2)1.3旋转图标显示 (3)1.4动画演示 (4)1.5曲线显示 (6)1.6文本输入及显示 (7)1.7基本图形显示 (9)1.8时间的显示和设置 (10)1.9表格显示 (11)1.10DGUS的FLAH存储数据功能 (13)1DGUS演示案例11.1DGUS演示主界面迪文屏上电,插入预装DGUS的SD卡,屏幕上将依次显示所下载的图片,下载完毕后屏幕将自动播放DGUS的开机动画,并停留在下图所示界面:本DEMO使用的波特率为115200bps,帧头为A55A。
1.2变量数据录入及显示点击区域1进入数据录入功能演示(如下图界面):点击设置的四个数据录入区域,会弹出录入的键盘,点击键盘的数字进行数值的录入即可,最后点击确认按钮表示数字输入完毕,输入的数值就会显示在设定的显示位置;点击录入框下方的增减按钮可调节显示数值的大小;同时右下角显示当前的实时时间;点击最上方的迪文LOGO可返回主页面;参数录入弹出键盘效果数据显示效果文本显示指令:A55A0F820008B1B1BEA9B5CF CEC4BFC6BCBC 显示效果如下图所示:1.3旋转图标显示点击区域2进入仪表显示的功能演示(如下图界面):拖动滑块可进行指针的旋转,同时数值也会在表盘上显示出来;点击最上方的迪文LOGO可返回主页面;仪表盘显示界面调节滑动条可旋转指针并显示相应的数值1.4动画演示点击区域3进入动画演示的功能演示(如下图界面):点击开启按钮可开启动画图标的演示,从0-9的数字循环,同时右上角会显示出开启后变量地址中相对应的变量数值;点击增减按钮可调节数值的显示及动画图标的开启关闭同时控制右上角的艺术字显示;拖动滑块也可调节数值的显示以及动画图标的开启关闭同时控制右上角的艺术字显示;点击最上方的迪文LOGO可返回主页面;变量地址赋值为0时显示效果点击开启按钮,变量地址赋值为10开启动画图标演示,数值从0-9循环显示,右上角用艺术字显示出变量地址内的数据点击关闭按钮弹出对话框点击YES按钮后演示动画停止1.5曲线显示点击区域4进入曲线显示的功能演示(如下图界面):通过串口发送指令:A55A188403080008000800080009000908090608000700 0709070A在界面上会显示出一条相对应的曲线,同时点击最右边的滑块图标可调节曲线的显示位置;点击增减调节按钮可对曲线进行缩放显示;点击返回按钮返回到主界面;发送AD采集数据后显示的效果1.6文本输入及显示点击区域5和6进入文本录入的功能演示(包括GBK录入和ASCII录入,如下图界面):点击录入区域弹出录入的键盘,点击相应的触控键值进行参数的录入,然后点击OK按钮结束此次输入,之后输入的文本就会显示在相对应的位置;点击ASCII录入的显示区域返回主页面;点击录入区域弹出键盘输入字符后最终显示效果点击文本录入弹出键盘显示文本的效果1.7基本图形显示点击区域8进入基本图形显示的功能演示(如下图界面):通过串口发送指令:A55A1282000E0003000100640064028C0190F800在显示区域内会显示出一个左上角坐标为(100,100),右下角左边为(700,400)的红色矩形串口发送指令后显示的效果1.8时间的显示和设置区域9、10实时显示时间数据以及对应表盘时钟显示;点击区域11进入时钟设置的功能演示(如下图界面):点击区域11弹出键盘,可修改显示的时钟数据同时表盘也随之修改;时钟以及表盘时钟显示效果修改时钟弹出键盘的效果1.9表格显示点击区域7进入列表显示的功能演示(如下图界面):列表显示数据内容通过读取22号字库中的数据显示出来;22号字库如何编写使用:1、在CONFIG文件中,把R2寄存器的第2位(0x04,L22_EN)置位,(R2=04)如下图所示;2、可用UltraEdit-32编写一个需要显示的数据文件,命名为22**.bin(数据内容如下);设置的列表显示的变量地址为0020,设置的显示为8列6行的数据,所以在22文件中的找到0020的存储位置开始编写数据;(22字库文件中的前56K的存储地址对应着变量存储区的地址0000—6FFF)3、将22文件以及CONFIG文件放入SD的DWIN_SET中,插入迪文屏的SD卡槽然后给屏上电,DGUS会把22字库文件中的前56K的字数据自动加载到.变量存储区做为初始化的数据;1.10DGUS的FLAH存储数据功能Flash数据库读写功能(64-127号字库空间复用,最大16MB)通过80/81串口指令访问相对应的寄存器来进行数据的存储,寄存器地址如红色框图所示:举例:(设置的帧头为A55A)1.把Vp=0000开始的1KB(512W)数据写入0x41字库0x000000开始的位置;指令如下:A55A0C80405A5041000000000002002.把0x41字库0x000000开始位置读入1KB数据到0x0000VP开始的位置;指令如下:A55A0C80405A A04100000000000200注意,一定要把字库、地址指定好以后再把0x40写0x5A启动。
DGUS指令说明文档7.1
======================================================================一、本文档基本约定本文档中,约定如下书写规范:1、本文档总的参考源:迪文DGUS屏开发指南_V432、用数据前加“0x”或数据后加“H”的方式表示16进制数据,比如:0xAA或AAH 都表示16进制数据AA。
为了方便用户直接应用,本文档DGUS指令都使用16进制书写,并不加任何标记,比如:5A A5 05 82 0001 0002 表示串口发送的一条指令,等同0x5A 0xA5 0x05 0x82 0x0001 0x00023、用(x,y)表示显示屏的坐标位置:比如(0,0)表示x=0,y=0的坐标点。
4、串口的所有指令或者数据都是16进制(HEX)格式:对于字型(2字节)数据,总是采用高字节先发送(MSB)方式。
比如0x1234传送时先传送0x12.5、用单引号‘’表示文本信息,比如:‘北京迪文科技’对应的汉字内码是0xB1B1 0xBEA9 0xB5CF 0xCEC4 0xBFC6 0xBCBC======================================================================二、新屏通讯注意事项1、DGUS屏有三种通讯方式:TTL\232\485。
注意有些种类的屏后面通信短接点的情况。
2、屏和电脑连接,在确认连接正常、波特率正确,串口号正确的情况下,发送指令:5A A5 03 81 00 01,(推荐用串口工具比如sscom32)3、如果有返回值5A A5 04 81 00 01 **,表示通讯正常。
注:发送的指令是读取屏的当前内核版本号,以此来检查通讯发送和接收收是否正常。
5A A5表示:帧头(默认帧头,如果用户已自行修改,请根据当前帧头发送指令),03表示:数据长度(以字节为单位),81表示:读取DGUS屏寄存器指令00表示:寄存器(存储DGUS 屏内核版本号的寄存器序号),01表示:版本号为01个字节长度。
51单片机与迪文DGUS屏通信例程之三: 单片机程序编写
51单片机与迪文DGUS屏通信例程之三:单片机程序编写相信接触过STC15系列单片机的小伙伴们,应该会对其编程风格比较熟悉,没错,STC15系列单片机可以采用库函数编程,官方提供了标准的函数库,我们只需要利用好库函数,便可大大简化配置流程,从而提高编程效率。
由于笔者这里的教程不是关于51单片机的基础教程,所以此处省去了新建工程以及如何添加库文件等操作。
首先,我们要养成良好的习惯,在使用任何一款板子的时候,先建一个配置板载资源的文件,当然要是板子比较复杂的话,可以分模块配置多个,由于笔者使用的板子比较简单,所以就只添加了一个名为“BSP_IO.h”的文件,顾名思义,就是一些输入输出的配置而已了。
接下来,我们来配置一下串口参数,在之前的帖子中我们知道,迪文DGUS屏的串口通信波特率配置的是115200,那么,我们在单片机程序中,自然也要讲串口通信的波特率配置成115200,其他的就不需要修改了:程序中有需要用到串口定时向触摸屏刷新数据,所以,这里我们也配置一个定时器,并设置起中断频率为1000Hz,即:1ms中断一次。
接下来,我们需要根据板子上的IO分布,来配置一下IO口的输入输出模式,所有输入口均配置成“准双向口”,所有输出口均配置成“强推挽模式”。
另外,程序中也有用到两路0-5V电压的采集,所以此处我们还需要对ADC相关的参数进行配置,本例程中采用的是AD口分别是P10和P11,查询方式获取AD值:至此,系统配置相关的东西基本就完成了,接下来,我们就需要自己写一些应用相关的函数了,本例中,笔者写了四个函数:Uart1_Monitor(); //串口1数据监控Uart1_Send(); //串口1发送指令ADC_Sampling(); //ADC采样GIOP_StateRefresh();//GPIO状态刷新其中,Uart1_Monitor()函数,主要是用对串口中断接收到的数据进行解析,比如:DGUS 屏按键返回的指令、参数设置的指令等;Uart1_Send()函数,主要用来定时向DGUS屏写入数据,比如:数据变量显示、图标变量显示等; ADC_Sampling()函数主要是对外部两路0-5V模拟量输入进行采样处理; GIOP_StateRefresh()函数主要是用来实时刷新输入输出口的状态。
工业串口屏迪文DGUS屏开发指南_V32
4.7.1 ASCII 文本录入 ......................................................................................................................................................... 16 4.7.2 GBK 汉字文本录入 ................................................................................................................................................... 17 4.8 硬件参数配置(0x07)................................................................................................................................................... 19
5 显示变量配置文件(14.BIN)说明 ..................................................................................... 20