应用范例: 使用 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. python小知识点总结

    小知识点总结 1.python2和python3的区别   python2 python3 默认编码 ascii utf-8 input() raw_input() input() print 可以不 ...

  2. SEVERE: Unable to process Jar entry [avassist xxxx.class]

    <bean id="sqlSessionTemplate2" class="org.mybatis.spring.SqlSessionTemplate" ...

  3. C#服务端的GET、POST请求

    一.HttpClient方式,程序集 System.Net.Http.dll GET: HttpClient httpClient = new HttpClient(); string result ...

  4. SonarQube代码管理

    一 搭建过程不详细说 二 配合jenkins使用,jenkins搭建过程这里不详细说 三 jenkins项目配置,需要安装sonarqube-jenkins插件 sonar.projectKey=a6 ...

  5. Linux学习笔记-centos查看版本号和内核信息

    1.查看centos系统版本号: 打开终端窗口: cat /etc/redhat-release 2.查看Linux内核版本信息: uname -a 或者 在图形化桌面右上角点开设置,在设置窗口选择详 ...

  6. 如何快速打好Java基础?

    二哥,我是一名大学生,专业是电力工程,但想自学 Java,如何快速打好基础呢? 微信上 tison 向我提出了这个问题.我想我是有资格来回答的,从北京奥运会那年开始学 Java,到现在已经有 10 多 ...

  7. web语义化这个坑

    什么是wen语义化:https://www.zhihu.com/question/20455165 标签大全:http://www.w3school.com.cn/tags/tag_html.asp ...

  8. Linux基础与搭建

    1 学习目标 了解Linux的简介与安装 掌握Linux常用的命令 掌握Linux系统上JDK.Mysql.Tomcat的安装 2  Linux简介 2.1 Unix简介 Unix是一个强大的多用户. ...

  9. CLion在项目里编译不同文件

    1. 在完整的项目下找到CMakeList.txt(项目配置文件) 2. Build 和 Run的目标在add_executable参数中 3. 将其修改为如下格式:add_executable(pr ...

  10. Codeforces_822

    A.小的那个数的阶乘. #include<bits/stdc++.h> using namespace std; int a,b; int main() { ios::sync_with_ ...