【本文发布于https://blog.csdn.net/Stack_/article/details/129652261,未经许可禁止转载,转载须注明出处】

迪文屏资料零散,缺少说明,对新手极不友好,开发也不够灵活。迪文的官网是没多少有用的资料的,需要去论坛找。百度搜索“迪文开发者论坛”。如果后续开发有疑问,论坛中搜不到答案,则可以发帖提问,回复还是挺快的。或者找销售方加客服微信。

以型号DMG13768C156_03WTC的串口屏为例,主芯片为T5L2,运行DGUS II系统。支持通过TTL / 232接口进行开发(PCB上短接预留焊盘切换为TTL)。

本文章是利用UART通讯方式进行开发的,屏为上位机,单片机为下位机。

一、资料下载

1、进入论坛,点击上方“资料下载 》开发文档 》T5L_DGUSII”,下载所需的资料,一定要下载的是《T5L DGUSII 应用开发指南》先尽量详细看看这个文档,心中有个大概了解再动手。本文章是对这个文档的补充说明。

2、如果使用渐变色图片,会导致压缩后的图片出现色彩断层,需要论坛内搜索“渐变色显示出现条纹、水波纹、牛顿环”寻求解决方法。

3、“资料下载 》工具软件 》T5L相关”,下载V7或者V8版本的DGUS TOOL。V8可以直接编辑生成CFG配置文件了,免去了自己修改CFG文件的麻烦,但是该版本只能用于T5L系列芯片的屏的开发。

二、素材方面

1、背景图和图标都需要用DGUS TOOL内嵌的压缩工具将背景图和图标压缩为icl图标文件下载到屏里才能显示。

2、背景图和图标分别都需要有0号图片,中间可以留出数字不编号,以方便后续补充图片。注意图标动画的编号超过255将不能显示,需要将编号提前或者再分配到另一个icl图标文件,该图标文件的图片同样也从0号开始。

3、压缩选项方面,内核选T5L2,图片质量 100% + 4:4:4 理论上是压缩后比较清晰的,但人眼不一定能分辨出来,需要根据占用空间的情况去选择合适的压缩率。而这个型号的屏自带闪存达32M,下载文件的编号可达127。我现在这个项目所有图标都按最高质量去压缩,48号开始放图标文件1,90号开始放图标文件2.

4、显示数值方面,不建议使用0号字库或者灰度字库,0号字库锯齿严重,而灰度字库虽好看了些,但外观要求较高的项目依然不可接受且占用空间过大。可以改用艺术字变量控件去显示数值,在PS里面修改数值,然后将数字切出来以图片方式显示数值。

5、不支持直接显示透明(png)图片,所有图片都会转为jpg格式,所以UI设计的时候要注意尽量避免会在运行中根据需求变色的、圆角的、边缘羽化的图标重叠,否则会带来麻烦。

6、如果背景图有渐变的,切图标时因为图标圆角或者边缘有阴影,难免会连同背景一起切下来,这时候不光背景图需要作水波纹去除的处理,图标也要处理。

三、空间分配

1、16M字节外部Flash分成空间0-63,每个空间256KB;32M字节外部Flash分成空间0-127,每个空间256KB

2、RAM大小为128K字节(0x0-0x1ffff),但用户访问时不是访问物理地址,迪文划分规则为:每2个字节为1个用户地址。所以地址为0x0-0xffff。
其中 0x0000-0x0FFF 是系统变量接口地址空间,用户不能自定义; 0x1000-0xFFFF 变量存储空间用户可以任意使用。如果 8 通道曲线同时使用, 0x1000-0x4FFF 将作为曲线缓冲区地址,此时该部分变量地址不能被其他控件使用,其他控件地址使用范围为: 0x5000-0xFFFF

3、【变量地址】存储了控件变量值(如同Qt编程中的SetText()),例如数据变量图标要显示的数值。例如显示了80,向此地址写100,则屏幕该控件位置显示100.

4、【描述指针】记录了控件的属性值(如同Qt编程中的stylesheet样式表),例如颜色、位置、指向的图片等信息,修改对应的地址中的值则可以修改颜色、位置等。

5、官方推荐从 23 号起始位置开始放字库或者图标库等文件;例如 32 号起始位置开始放背景图片.ICL 文件, 背景图片存放位置可以配置 CFG 文件自定义, 用DGUS TOOL V8去修改。0-47可放置bin、hzk、dzk文件(字库、配置文件) , 16-63 / 16-127可放置icl文件(图片图标) ,注意不要重叠。

0号【0-11】 ASCII字库 。 出厂预装,可烧入或者不烧,除非需要更改字体
12号【固定位置】 输入法词库。 出厂预装,可烧入或者不烧,除非需要更改
13号【固定位置,不超过256KB】 触控配置文件。 DGUS生成,无需关心
14号【固定位置,不超过256KB】 变量文件文件(字符数据、动画等的属性)。 DGUS生成,无需关心
16号 音频
22号【固定位置】 初始化配置文件。 DGUS生成,无需关心
23号【23-31】 用户自定义字库如中文字库 。 DGUS内的工具生成【字库如果较大,超出区间,则后面的图片图标都需要往后移】
32号【32-47】 背景图压缩文件。 DGUS内的工具【背景图片如果较大,超出区间,则后面的图标都需要往后移】
48号-末尾 图标缩文件。 DGUS内的工具生成,可以有多个图标文件,注意所占用空间不要重叠

四、CFG文件修改

论坛搜对应屏型号或者找客服,获取demo以及cfg文件。也可以直接生成。

获取cfg文件后,打开DGUS TOOL V8,点选 工具 --》CFG生成 --》打开CFG 选择官方的提供的配置文件,将更新显示,如下图。按需修改配置后,保存,放到SD卡中刷写到屏内。

五、新建工程以及控件

1、点击新建工程,选择型号以及设置好分辨率

2、在左边栏images view加载背景图

3、建立一个控件表,记录控件的地址、大小、位置等信息。新手阶段,如果理解不了,文本显示控件这种显示很多文字的控件除外,控件变量地址从0x5000开始分配,递增0x10,描述指针从0x8000开始分配,递增0x30即可。不用去记每个控件占多数空间,也能避免变量地址和描述地址重叠。这样分配虽然有空间浪费,但是128K字节RAM空间对于一般项目也绰绰有余了。以后慢慢了解。

4、点击需要的控件后,按住鼠标左键在背景图上拖出一个矩形,然后在右侧属性栏修改X(左上角X坐标)Y(左上角Y坐标)W(宽多少像素)H(高多少像素),一般是根据切图时该图标的位置和切出来的大小而定。

按照控件表分配的地址修改属性中的描述指针值和变量地址值。

5、图标变量可以选择“透明”或者“显示背景”的显示方式。

透明模式会根据图标坐上第一点的颜色对图标内的相似颜色的像素进行隐藏后叠加显示到背景上,理论上可以实现类似png的效果。但实际上对于图标颜色有渐变或者其它点和左上像素点颜色差别不是很大的,处理结果很糟糕,完全不可用。

显示背景则是直接覆盖背景显示。

6、一般项目开发,为了上位机和下位机数值或者页面同步,屏只管把按键按触状态发送到下位机,下位机再发指令更改屏幕内容显示,而不能点击后屏主动作出切换显示等反应。

而且因为基础触控是不支持屏蔽的,当运行中要屏蔽某个按键时,无能为力。

这时需要用到控件“同步数据返回”。如果CFG文件开启了触控变量自动上传,则用户按触屏幕,下位机会收到数据帧。而下位机可以按需忽略下发的“同步数据返回”以达到按键失能的效果

第一次按压即单击,将0x5000(自己定义的空间)读取到0x5380(分配给该同步数据返回控件的变量地址)并下发,持续按压即长按,将0x5010(自己定义的空间)读取到0x5380并下发。0x5000和0x5010的值需要不一样,下位机才能识别。

迪文工具没有提供给某个地址数值初始化的方法,有的教程说下载到屏前修改生成的触控bin文件,修改地址0x5000和0x5010的值令两者的值不一致,这是非常扯淡的。

建议参考第3点的图片,放置3个数据变量控件,为它们设置不同的初始值,并更改它们的XY坐标令其超出屏幕显示以达到隐藏的目的。这样就修改了0x5000和0x5010的地址的值,而且无需每次烧录前都修改触控bin文件。

7、上面有说到数据变量控件显示数值锯齿非常明显,做项目完全不可接受,而且项目UI设计通常会有各种大小和各种字体的数字,字库无法覆盖所有大小的字体,烧入对应字体的ASCII字库,实际显示效果也会和PS里显示的出入较大。所以就要采用控件“艺术字变量”,用图片显示数值。需要切出 ‘0’~‘9’ ‘-’ ‘.’ 共12张图片。

属性中勾选“是否显示无效0”,则显示位数设定为2位或以上时,上传的值位数不足,则自动在前面补0显示。例如设定2位,上传值为"9",则显示效果为"09"

如果运行过程中需要变换字体颜色,则需要另切一组不同颜色的图片,通过指令重新指定图片0在图标文件中的位置。

控件基本都有这么一个表,运行中可以通过修改这些值而做出不同的效果

8、如果下位机要控制屏切页、亮度、播放音频(CFG中选择了音乐模式),具体指令查看手册的系统变量接口章节。

9、官方demo中,拖动调节控件和滑块刻度指示控件搭配使用,但滑块刻度显示只有一个滑块在移动,底图(刻度条)不会像进度条那样滑块两端颜色不一样。故可以搭配图标变量使用,缺点是滑动不连续,有卡顿感,除非可供切换图片足够多。

拖动调节控件+滑块刻度指示

图标变量+拖动调节

待续

迪文串口屏(T5L2 DGUS II)开发 -- 入门相关推荐

  1. 屏幕开发学习 -- 迪文串口屏

    一 前言 最近学习了一款基于图形化开发的屏幕,在摸索一周后,基本熟悉了这款产品的一个开发过程,今天给大家分享一下迪文串口屏的学习过程,有不足之处,还请见谅

  2. 迪文串口屏(1)-DMG80480C070_03WTC

    由于成本缘故,用迪文串口屏去替换项目里的大彩串口屏,样品型号为DMG80480C070_03WTC. 产品命名及硬件特性 10Pin_1.0mm座子,7.0英寸,800*480分辨率,16.7M色,液 ...

  3. 迪文串口屏(DMG10600C101-03WTC)的使用测试

    笔记 同事整来一个10寸的迪文串口屏(200+RMB), 让我试试. 去淘宝看了一下, 他买的应该是下面这种. 这次买的屏用DGUS工具开发时, 和旧版的有点不同, 需要配置字库, CFG, ICL ...

  4. 串口 能 按位传输吗_、 迪文串口屏TTL与主控板RS232电平信号转换方案

    迪文串口屏TTL与主控板RS232电平信号转换方案 一.TTL和RS232简述 串口.COM口是指的物理接口形式(硬件),按位(bit)发送和接收字节.而TTL.RS-232是指的电平标准(电信号). ...

  5. rs232接口_、 迪文串口屏TTL与主控板RS232电平信号转换方案

    迪文串口屏TTL与主控板RS232电平信号转换方案 一.TTL和RS232简述 串口.COM口是指的物理接口形式(硬件),按位(bit)发送和接收字节.而TTL.RS-232是指的电平标准(电信号). ...

  6. 迪文串口屏的CFG文件怎么用?

    迪文科技DGUS II中的CFG文件是系统参数配置文件,采用十六进制通过UltraEdit等软件进行编辑. 根据智能屏型号查找对应DGUS应用指南,参照应用指南CFG参数说明部分进行配置.以T5L 0 ...

  7. 迪文串口屏(DMG10600C101-03WTC)的通讯测试

    笔记 同事从迪文屏接口, 焊接出一个DB9公头. 因为手头不好找DB9母头, 就用232转485 + 485转232 + 232转USB上电脑测试. 怎么测试都不通, 也将同事焊接的232 TX/RX ...

  8. 迪文串口屏的串口通信问题处理(详细)

    串口屏和电脑连接异常 原因分析1: 串口工具打开后,刷新不到串口号串口. 解决方法1: 大部分的台式机会有一个串口1,这个就是电脑的DB9出口,一般用DB9转接延长线,是可以和db9的进行RS2 ...

  9. 迪文串口屏的安装方法之卡扣结构带外壳智能屏

    迪文科技是一家专注于人机交互解决方案的高科技企业.目前,公司有4.3寸.5寸.7寸.8寸.9.7寸.10.1寸.12.1寸.15寸带外壳智能屏,安装方式有固定嵌入旋转式.嵌入直插式.嵌入旋转式三种,正 ...

最新文章

  1. 将数据库中日期格式转换后显示在界面
  2. 下一代Asp.net开发规范OWIN(2)—— Katana介绍以及使用
  3. 【PAT乙级】1007 素数对猜想 (20 分)
  4. 中国致密气行业十四五前景分析及发展规划远景报告2022年版
  5. go 随机数是重复的
  6. [文档].艾米电子 - 在综合中使用函数,Verilog
  7. “小朋友”们节日快乐呀~
  8. Elasticsearch索引的数据存储路径是如何确定的
  9. 堪称暴力美学的可视化大屏是怎么做的?附无代码硬核教程
  10. 吕鑫MFC就业培训宝典学习笔记—创建一个简单的win32应用程序(2-1)
  11. LayaAir graphics 绘制文本
  12. 未来教育计算机二级考生文件夹打不开,未来教育计算机二级office题库
  13. 前端加密js库--CryptoJs
  14. app推送怎么实现更好的效果?
  15. java-php-python-springboot网上租贸系统计算机毕业设计
  16. SQLserver提供的统计信息流已损坏
  17. 一度智信:新开的电商店铺销量低?如何快速提升
  18. DA接口测试工装研究
  19. 【已解决】计算机丢失d3d12.dll怎么办?d3d12.dll加载失败怎么办
  20. 【毕业设计】基于stm32的便携用电功率统计系统 -物联网 嵌入式 单片机

热门文章

  1. 科学计算与matlab语言期末答案,科学计算与MATLAB语言答案
  2. 2021 HZNU Winter Camp -- LCA
  3. python一个tab键是几个空格_python中tab键是什么意思
  4. 【弄nèng - Activiti6】Activiti6入门篇(十五)—— 定时器中间事件
  5. 手握119亿美元捐赠基金!美国密歇根大学宣布正式进军加密市场
  6. 投简历一直没有回应,原因竟然是...
  7. 125万“墨子量子奖“的获得者,研究成果连发《自然》和《科学》
  8. 宜人贷PaaS数据服务平台Genie:技术架构及功能
  9. 爬虫爬取emoji图片数据
  10. java程序设计任务驱动式教程_java程序设计任务驱动式教程保持良好的交流答案...