串口屏开发环境搭建
串口屏的优点就不用多说了,用过的老师傅都说好!
开发专用上位机软件下载:传送门主要用来设计屏幕界面的,简单方便。
1、软件安装好后点击新建工程
2、选择你需要存放的目录,输入文件名,点击保存
3、选择对应的设备(设备号在背面有印刷)我这里选择TJC3224T024_011
4、选择屏幕显示方向和字符编码(默认即可),点击OK完成工程的创建
模块资料下载:资料中心http://wiki.tjc1688.com/doku.php?id=start
淘晶驰屏幕的基础介绍可以参考这位老哥的淘晶驰系列博文:传送门,各个部分的组件都有涉及到。
串口屏与单片机通信
如果没接触过淘晶驰串口屏的小伙伴可能不知道怎么将屏幕与单片机连接起来。
遇到的问题可能有以下问题:
(1)需不需要对串口屏的串口寄存器编程?
在被动解析的模式下,不需要。 直接通过单片机发送语句/指令就可以对屏幕的一些组件进行改写。
指令集:https://leoeinstein.lanzous.com/i4ZRUkbc1ji
例:如下图所示,我想改写进度条j0的长度,只需要
通过单片机发送以下语句/指令:
改变j0.val的值为80的代码片
// 改变 j0.val的值
Usart_SendStr(COM1_PORT,"j0.val=80");//COM1_PORT是单片机上的串口端口,j0.val=80是具体的指令
Usart_Sendbyte(COM1_PORT,0xFF);//以下三个为结束符
Usart_Sendbyte(COM1_PORT,0xFF);
Usart_Sendbyte(COM1_PORT,0xFF);
所有的赋值操作在串口传输方式下,必须加三个
0xff作为结束符
又比如 改变t0的文本内容为“99”的 t0.txt代码片
如下
Usart_SendStr(COM1_PORT,"t0.txt=");//COM1_PORT是单片机上的串口端口,t0.txt="99"是具体的语句/指令
Usart_Sendbyte(COM1_PORT,34);//引号
Int2Char_Send(99);//整形转换为字符型并发送
Usart_Sendbyte(COM1_PORT,34);//引号
Usart_Sendbyte(COM1_PORT,0xFF);//以下三个为结束符
Usart_Sendbyte(COM1_PORT,0xFF);
Usart_Sendbyte(COM1_PORT,0xFF);
COM1_PORT是单片机上的串口端口,j0.val=80是具体的指令,其他的指令请参考淘晶驰串口屏的资料。
而对于单片机串口配置,有兴趣的小伙伴可以参考以下我的前一篇博文:合泰HT32F52352串口通信学习笔记
串口屏接收到结束符之后会自动刷新显示,因此想要改变每一个控件的数字/文本,只要通过单片机发送 语句/指令即可。
(2)设计好的UI界面如何下载?
将在上位机设计好的界面,下载到串口屏的方式主要有两种方法。
第一、直接通过USB_TTL烧录器下载。
连线方式如下:
烧录器 | 串口屏 |
---|---|
5V/VCC | 5V/VCC |
GND | GND |
TXD | RXD |
RXD | TXD |
接好线之后点击 “下载” ,编译通过会弹出 “串口下载” 的窗口,选择对应的串口号,点击 “联机并开始下载” 等待下载完成就可以了。
这种方法的缺点就是速度有点慢。
值得注意的是,在屏幕的“前初始化事件”下需要设置串口屏的波特率与单片机串口波特率相一致!
否则会导致通信失败。
第二、通过内存卡下载。
屏幕的背面一般都有一个金属的内存卡卡槽,把UI界面复制到内存卡,再把内存卡插进卡槽,屏幕开机时就会自动读取设计的界面文件了。
速度较快,特别是下载大一点的UI文件时,优点明显。
对了,网上有许多关于串口屏UI的例程,网址:点我
主动解析模式,进阶模式
进阶模式暂时没有摸索。。。
项目工程文件(初代)
小小的演示
待改进地方
函数封装有待提高
关于多页面设置的,需要的小伙伴可以参考一下以下这边博文:
合泰HT32–淘晶驰TJC–T0串口屏学习笔记(二)
工程项目链接:https://download.csdn.net/download/LiangWF22/14909084
备份链接:
https://leoeinstein.lanzous.com/ii1X9knbibi
2021年1月12日