应用范例: 使用 TOPWAY Smart LCD (HMT043FC-1C) 绘图板应用

第一步建立工程

① 开TOPWAY TML Graphic Editor 2017 V1.04软件, 点击菜单栏建立新

工程File --> New Project

② 工程名Project Name: DrawPadDemo

③ 保存位置C:\桌面\DrawPadDemo

④ 选择智能模块显示分辨率Screen Size:480x272(Rotate0\180)

⑤ Device Model选择HMT043XXX-XX

⑥ 点击“ OK”完成

第二步建立页面和导入背景图

① 在资源窗口中右击Pages,选择New Page建立一个新的页面

② 在资源窗口中右击Background Image,

选择Import Background Image

③ 打开一个背景图

位图片。

第三步关联页面与背景图

① 点击工作区域,,右边显示页面属性

② 属性中Background Image 选择页面背景图DP0000

第四步 建立DrawPad元素,并关联VP

① 菜单工具栏点击DrawPad元素,移至工作区域,调整大小

② 资源窗口中,右击16bit Number Variables选择New VP,0x080000

③ 属性中 VP Address选择VP:0x080000

第五步编译与下载

① 使用USB线缆连接模块与电脑

② 点击一键下载按钮(F9)

③ 在对话框中点击“ Start Download”下载工程到模块中

第六步上电显示

① 断开USB与模块连接

② 向模块提供12V电源

③ 接串口线,默认波特率:115200,8,n,1

④上电显示

第七步发送绘图指令

① 置点

① 描述:在DrawPad元素刷新范围内,在指定位置绘制点

位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

位数据个数(阴影部分)

⑤ Type:置点指令,0x0001

⑥ Num :置点个数

⑦ X/Y : 点的坐标

⑧ 颜色:点的颜色,16位RGB565色值

位数据指令0x82发送):

① 描述:在DrawPad元素刷新范围内,在指定位置端点连线

位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

位数据个数(阴影部分)

⑤ Type:端点连线指令,0x0002

⑥ Num :端点个数

⑦ X/Y : 端点坐标

⑧ 颜色:连线颜色,16位RGB565色值

位数据指令0x82发送):

③ 线段

① 描述:在DrawPad元素刷新范围内,在指定位置绘制线段

② CMD
:连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

位数据个数(阴影部分)

⑤ Type:线段指令,0x0003

⑥ Num
:线段条数

⑦ X1a/Y1a
: 线段起点坐标

X1b/Y1b
: 线段终点坐标

⑧ 颜色:线段的颜色,16位RGB565色值

位数据指令0x82发送):

④ 矩形

① 描述:在DrawPad元素刷新范围内,在指定位置绘制矩形

② CMD
:连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

位数据个数(阴影部分)

⑤ Type:矩形指令,0x0004

⑥ Num
:矩形个数

⑦ X1a/Y1a
: 矩形左上角坐标

X1b/Y1b
: 矩形右下角坐标

⑧ 颜色:矩形的颜色,16位RGB565色值

位数据指令0x82发送):

⑤ 矩形填充

① 描述:在DrawPad元素刷新范围内,在指定位置绘制矩形区域填充

② CMD
:连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

位数据个数(阴影部分)

⑤ Type:矩形填充指令,0x0005

⑥ Num
:矩形填充个数

⑦ X1a/Y1a
: 矩形填充左上角坐标

X1b/Y1b
: 矩形填充右下角坐标

⑧ 颜色:矩形填充的颜色,16位RGB565色值

位数据指令0x82发送):

⑥ 图片复制/粘贴

① 工程资源窗口中增加PG0001页面,并导入背景图(请参考前面例子)

② 编译下载新工程到模块(请参考前面例子)

① 描述
 :在DrawPad元素刷新范围内,在指定位置复制粘贴页面背景

② CMD
  :连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

④ Byte
 :16位数据个数(阴影部分)

⑤ Type
 :图片复制/粘贴指令,0x0006

⑥ Num
  :图片复制/粘贴个数

⑦ X1/Y1
: 复制区域左上角坐标

X2/Y2
: 复制区域右下角坐标

X3/Y3
: 粘贴区域左上角坐标

⑧ ID
   :复制的背景图片所在页面ID,0x0001

位数据指令0x82发送):

⑦ ICON图标显示

① 资源窗口中右击Icons,选择Import
Icon

② 根据路径选择Icon图标,并打开。

DI0000:

DI0001:

① 描述
 :在DrawPad元素刷新范围内,在指定位置显示Icon图标

② CMD
  :连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

④ Byte
 :16位数据个数(阴影部分)

⑤ Type
 :ICON图标显示指令,0x0007

⑥ Num
  :ICON图标显示个数

⑦ X/Y
  : ICON图标显示坐标

⑧ ID
   :ICON图标ID

位数据指令0x82发送):

⑧ 字符串显示

① 描述
 :在DrawPad元素刷新范围内,在指定位置显示字符串

② CMD
  :连续写16位数据指令,0x82

③ VP地址:DrawPad元素关联的VP地址,0x080000

④ Byte
 :16位数据个数(阴影部分)

⑤ Type
 :字符串显示指令,0x0008

⑥ Num
  :字符串显示个数

⑦ X/Y
  : 字符串显示坐标

⑧ 颜色  :字体颜色

⑨ FtID
:字库ID
    Len :字符串长度

位数据指令0x82发送):

​完成。

TFT液晶显示屏之绘图板应用的更多相关文章

  1. 屏幕实战效果解析:IPS/TFT/AMOLED/SLCD

    现在手机市场上,智能手机种类繁多,手机屏幕材质也是五花八门.对于一般消费者来说,一款手机是否值得购买,除了关心它的硬件参数以外,更重要的一点就是看它的屏幕.除了屏幕尺寸以外,影响着大家对该手机的第一感 ...

  2. 用智能TFT液晶模块这种串口屏做产品界面设计太简单了,大大的节省了开发时间

    随着科技的发展,TFT液晶显示屏在我们日常中可以随处可见. 工业设备上的显示也逐渐由段式显示.黑白显示转向彩色的TFT液晶显示屏. 普通的TFT液晶显示屏由于开发起来比较麻烦, 需要嵌入式工程时写程序 ...

  3. [stm32] NRF24L01+USART搞定有线和无线通信

    前言 一般进行远程监控时,2.4G无线通信是充当远程数据传输的一种方法.这时就需要在现场部分具备无线数据发送装置,而在上位机部分由于一般只有串口,所以将采集到的数据送到电脑里又要在上位机端设计一个数据 ...

  4. QT树莓派交叉编译环开发环境搭建(附多个exe工具下载链接)

    前两天入手了一块2.8’的tft液晶显示屏,于是和树莓派连了一发,成功将命令行显示在了这块小的可怜的屏幕上之后,觉得这屏幕就显示个黑白内容太浪费了,于是考虑开发一个”脸”(图形用户界面,GUI).首先 ...

  5. 基于Stm32的MP3播放器设计与实现

    原创博文,转载请注明出处 这是我高级电子技术试验课做的作业,拿来共享一下.项目在安福莱例程基础之上进行的功能完善,里面的部分内容可参考安福莱mp3例程.当然用的板子也是安福莱的板子,因为算起来总共做了 ...

  6. JDBC&Oracle启动

    [Wed Apr 26 2017 16:05:11 GMT+0800]PLSQL Developer连接远程oracle配置(本地不安装客户端).在windows机器上不想安装oracle或者orac ...

  7. TFT LCD显示原理详解

    <什么是液晶> 我们一般认为物体有三态:固态.液态.气态,其实这只是针对水而言,有一些有机化和物 还有介于固态和液态中间的状态 就是液晶态,如下图(一):                 ...

  8. 使用TFT LCD制作Arduino触摸屏计算器

    Arduino开发板总是可以帮助我们轻松地构建一个项目,并使其看起来更具有吸引力.对一个带有触摸功能的液晶显示屏进行编程听起来可能是一件复杂的工作,但是通过使用Arduino库和扩展模块可以使得这项工 ...

  9. [stm32] 一个简单的stm32vet6驱动2.4寸240X320的8位并口tft屏DEMO

    书接上文: 最近在研究用低速.低RAM的单片机来驱动小LCD或TFT彩屏实现动画效果 首先我用一个16MHz晶振的m0内核的8位单片机nRF51822尝试驱动一个1.77寸的4线SPI屏(128X16 ...

随机推荐

  1. urllib基本用法(了解)

    一.urllib.urlopen 1.urlopen from urllib import request r = request.urlopen('http://www.baidu.com/') # ...

  2. restframework 视图

    重要知识点 as_view()获取的是view方法名,当url配版成功,执行view方法 一.逻辑封装(mixins, generics) path('author/', views.AuthorVi ...

  3. .net core 连接数据库(通过数据库生成Modell)

    创建数据库 (扫盲贴还劳烦大神们勿喷,谢谢) 打开数据库 输入如下代码 创建数据库 CREATE DATABASE [Blogging]; GO USE [Blogging]; GO CREATE T ...

  4. Tomcat9乱码解决

    在tomcat的解压目录下找到conf,打开进入,logging.properties文件,在该文件中,修改 java.util.logging.ConsoleHandler.encoding = U ...

  5. python + selenium定位页面元素的办法

    1.什么是Selenium,为什么web测试,大家都用它? Selenium设计初衷就是为web项目的验收测试再开发.内核使用的是javaScript语言编写,几乎支持所以能运行javaScript的 ...

  6. xlwings excel(三)

    App相当于Excel程序,Book相当于工作簿.N个Excel程序则由apps表示,N个工作簿由books表示. 对工作簿的操作 #导入xlwings模块 import xlwings as xw ...

  7. 《即时消息技术剖析与实战》学习笔记8——IM系统如何保证长连接的可用性:心跳机制

    假设有以下突发意外情况: 用户进入信号不好的地方,手机没有网络信号了 上网的路由器突然掉线了 这个时候,比如微信发消息,消息就会转圈圈,甚至变成红色叹号-- 上面情况都会导致"长连接&quo ...

  8. 谈谈模型融合之三 —— GBDT

    前言 本来应该是年后就要写的一篇博客,因为考完试后忙了一段时间课设和实验,然后回家后又在摸鱼,就一直没开动.趁着这段时间只能呆在家里来把这些博客补上.在之前的文章中介绍了 Random Forest ...

  9. CAS的ABA问题详解

    CAS的ABA问题详解 ABA问题 在多线程场景下CAS会出现ABA问题,关于ABA问题这里简单科普下,例如有2个线程同时对同一个值(初始值为A)进行CAS操作,这三个线程如下 1.线程1,期望值为A ...

  10. volatile梳理

    volatile 可见性也就是说一旦某个线程修改了该被volatile修饰的变量,它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,可以立即获取修改之后的值. 在Java中为了加快程序的运行 ...