1. 简介
HMI是Human Machine Interface ( “人机接口”)的缩写 ,也叫人机界面。USART HMI即串口人机接口,其将底层功能封装在HMI设备中,通过串口与MCU 进行通信交互,MCU只需通过串口与HMI设备发送/接收指令,HMI设备即可作出相应响应。
2. HMI设备端
以陶晶驰USART HMI串口屏为例。
2.1 USART HMI开发软件
软件版本:1.61.7
2.2 准备工作
- 硬件端,使用USB转TTL转接器连接PC与串口屏。
注:RX,TX为TTL电平,非232接口。串口屏供电5V.
-
软件端,新建工程。
-
选择对应的串口屏型号。
-
在Program.s文件中配置好参数。
//以下代码只在上电时运行一次,一般用于全局变量定义和上电初始化数据
int sys0=0,sys1=0,sys2=0 //全局变量定义目前仅支持4字节有符号整形(int),不支持其他类型的全局变量声明,如需使用字符串类型可以在页面中使用变量控件来实现
baud=115200 // 波特率
bkcmd=3 // 配置成功或失败都返回结果
dims=100 // 屏幕亮度100%
// 以上配置必须在 page 0语句前完成
page 0 //上电刷新第0页
- 工具 - 字库制作,根据需要设置字高,编码(与工程编码保持一致),字体,范围,字库名称,然后点击生成字库,保存 - 加载使用,完成点击字库页面查看字库是否加载成功。
若没有加载成功,点击"+"号加载刚刚保存的字库。
- 配置完成,开始开发。
2.3 控件
2.3.1 文本
- 属性
属性栏内绿色字体参数都是可以随时修改的。黑色的只能在开发软件中修改或不可读/写。
下面将对有必要详细说明的属性参数进行详述。
- x,y
其描述控件在屏幕上的像素坐标位置。以屏幕左上角为像素坐标原点(x=0,y=0).
T0,K0系列产品,x,y属性只能从:0–最大分辨率。不能超出屏幕显示区域。
X系列产品,x,y属性可以超出屏幕坐标范围(-6000~+6000),但是超出屏幕将被裁减,不会显示出来。
- w,h
其描述控件在屏幕上宽度和高度(以像素大小为单位)。
T0,K0系列产品,w,h属性只能从:0–最大分辨率。不能超出屏幕显示区域。
X系列产品,x+w,y+h的值可以超出屏幕坐标范围,但是超出屏幕将被裁减,不会显示出来。
- spax,spay
屏幕上显示字符与字符之间的距离。单位:像素点。
- isbr
其表示在显示文本内容,一行显示不完所有字符时,是否自动换行到下一行继续显示。
- txt_maxl
其表示该字符型控件,最多可以存储多少个字符。
注意1:在界面编辑时,如果输入txt属性中的字符数量超过了txt_maxl将提示错误。
注意2:如果在运行中,给txt写入超过txt_maxl的字符数量,超出的部分将丢失。
- sta
背景填充方式属性。目前支持4种背景方式:
1、切图:从指定与串口屏分辨率相同的全屏图片上,自动切取控件窗口区域的图片内容作为控件背景。
2、单色:用户指定单一的RGB565颜色值作为控件背景。
3,图片:用户指定一张图片作为控件的背景。
4,透明:即无背景,以透明的方式直接在控件区域写字符信息。仅X系列支持
- key
控件绑定系统内置键盘。仅当vscope=全局时可以选择键盘。
2.3.1.1 读写属性参数
如放置一个t0文本控件,依据以上控件的属性,读取或写入对应的参数。将以下代码写入到该文本对应事件内。
注:
- objname属性不可以读取。
- type和id属性由开发环境指定,用户不可修改。
sys0=t0.id // 将文本控件t0的id号赋值给sys0变量
t0.x+=10 // 将控件在屏幕上的位置向右移动10个像素点。
prints t0.txt,0 // 将t0的文本内容从串口发送出去。