DACAI串口屏使用
作者
QQ群:852283276
微信:arm80x86
微信公众号:青儿创客基地
B站:主页 https://space.bilibili.com/208826118
参考
RGB颜色值与十六进制颜色码转换工具
固件更新
工程目录下dciot_build\private
文件夹复制到SD卡根目录,重新上电自动更新,大改2min时间,
硬件调试环境
屏幕赠送一块调试板,PC串口TXD接调试板TXD,RXD接RXD。
软件开发环境安装
开发软件都可以到大彩的官网下载,
- VisualTFT_3.0.0.1075
- VSPD
用虚拟串口屏来调试调试
VSPD新建一对虚拟串口,VisualTFT点击调试 > 运行虚拟串口屏
,分别用虚拟串口屏和串口助手打开两个串口,
设计
界面上拖拉摆放即可。
小键盘设置加热时间:EE B1 11 00 00 00 2C 11 31 30 30 2E 31 00 FF FC FF FF
小键盘设置加热时间:EE B1 11 00 00 00 2C 11 31 30 30 2E 30 00 FF FC FF FF
小键盘设置保温时间:EE B1 11 00 00 00 2D 11 31 30 30 2E 30 00 FF FC FF FF
小键盘设置冷却时间:EE B1 11 00 00 00 2E 11 31 30 30 2E 30 00 FF FC FF FF
触摸屏启动按键:EE B1 11 00 00 00 18 10 01 01 FF FC FF FF EE B1 11 00 00 00 18 10 01 00 FF FC FF FF
触摸屏复位按键:EE B1 11 00 00 00 17 10 01 01 FF FC FF FF EE B1 11 00 00 00 17 10 01 00 FF FC FF FF
触摸屏模式按键:EE B1 11 00 00 00 19 10 01 01 FF FC FF FF EE B1 11 00 00 00 19 10 01 00 FF FC FF FF
触摸屏设置按键:EE B1 11 00 00 00 16 10 01 01 FF FC FF FF EE B1 11 00 00 00 16 10 01 00 FF FC FF FF
触摸屏确定按键:EE B1 11 00 00 00 3F 10 01 01 FF FC FF FF EE B1 11 00 00 00 3F 10 01 00 FF FC FF FF
从设计软件怎样知道当前画面ID,
输入
输入大写字母的时候,需要按Shift键,切换到大写字母输入模式。
单片机软件Demo分析
屏幕刷新
if(timer_tick_count - timer_tick_last_update >= 200/*TIME_100MS*/)
{timer_tick_last_update = timer_tick_count; UpdateUI();
}
串口命令接收部分
首先查找帧头0xee
,找到帧头后查找帧尾0xfffcffff
,找到之后把中间的数据提取出来就是一条命令,下一步可选择对命令进行CRC校验,帧尾的前两个字节为CRC校验值。
触摸屏命令处理
命令的结构,
typedef struct
{uint8 cmd_head; //帧头uint8 cmd_type; //命令类型(UPDATE_CONTROL) uint8 ctrl_msg; //CtrlMsgType-指示消息的类型uint16 screen_id; //产生消息的画面IDuint16 control_id; //产生消息的控件IDuint8 control_type; //控件类型uint8 param[256]; //可变长度参数,最多256个字节uint8 cmd_tail[4]; //帧尾
}CTRL_MSG,*PCTRL_MSG;
cmd_type
有下面几种,
#define NOTIFY_TOUCH_PRESS 0X01 //触摸屏按下通知
#define NOTIFY_TOUCH_RELEASE 0X03 //触摸屏松开通知
#define NOTIFY_WRITE_FLASH_OK 0X0C //写FLASH成功
#define NOTIFY_WRITE_FLASH_FAILD 0X0D //写FLASH失败
#define NOTIFY_READ_FLASH_OK 0X0B //读FLASH成功
#define NOTIFY_READ_FLASH_FAILD 0X0F //读FLASH失败
#define NOTIFY_MENU 0X14 //菜单事件通知
#define NOTIFY_TIMER 0X43 //定时器超时通知
#define NOTIFY_CONTROL 0XB1 //控件更新通知
#define NOTIFY_READ_RTC 0XF7 //读取RTC时间
#define NOTIFY_HandShake 0X55 //握手通知
ctrl_msg
有下面几种,只有当cmd_type
是NOTIFY_CONTROL
才有,其它情况没有这个字段,
#define MSG_GET_CURRENT_SCREEN 0X01 //画面ID变化通知
#define MSG_GET_DATA 0X11 //控件数据通知
control_type
有下面几种,只有当ctrl_msg
不是MSG_GET_CURRENT_SCREEN
才有,其它情况没有这个字段,不同control_type
对应的param
长度是不一样的,
enum CtrlType
{kCtrlUnknown=0x0,kCtrlButton=0x10, //按钮kCtrlText, //文本kCtrlProgress, //进度条kCtrlSlider, //滑动条kCtrlMeter, //仪表kCtrlDropList, //下拉列表kCtrlAnimation, //动画kCtrlRTC, //时间显示kCtrlGraph, //曲线图控件kCtrlTable, //表格控件kCtrlMenu, //菜单控件kCtrlSelector, //选择控件kCtrlQRCode, //二维码
};
由screen_id
和control_id
可唯一定位一个控件。
DACAI串口屏使用相关推荐
- python窗口动态实时显示时间_苏州2.8寸串口屏厂家:切管机触摸屏实时动态显示切割过程...
原标题:苏州寸串口屏厂家:切管机触摸屏实时动态显示切割过程 随着我国不锈钢管材的产量和消费的快速增长,管材加工技术也随之迅速发展,尤其是切管机的问世,更是给管材加工带来了前所未有的质的飞跃. 切管机在 ...
- arduino并口屏_Arduino 驱动串口屏(入门级)
Arduino 以其易用性及强大的程序控制功能已经迅速吸引了国内外众多电子爱好者和产品开发人员的眼球,人们纷纷试水,用它来制作个性化的小产品,同时随着开源硬件成本的不断下调,使用Arduino开发商用 ...
- 启明智显分享| 2.4寸旋钮串口屏在健身器材上的应用
提示:启明智显基于乐鑫ESP32-S3与国产芯高效开发平台8ms(8ms.xyz), 设计开发了一款2.4寸旋钮串口屏方案,该方案应用于健身器材及带屏空气炸锅.热水器.洗衣机.烤箱等智能家电产品,作为 ...
- 启明智显分享| 关于ESP32-S3系列串口屏应用时配网需知
提示:启明智显专为智能产品提供一站式彩屏显示+连接+云端服务+APP软件开发.维护等解决方案,帮厂商快速实现硬件的智能化.作为启明云端旗下方案公司,我们用心整理了开发小伙伴在开发过程中可能会遇到的问题 ...
- 启明云端方案分享| 小尺寸串口屏在充电桩的应用
提示:启明云端从2013年起就作为Espressif(乐鑫科技)大中华区合作伙伴,我们不仅用心整理了你在开发过程中可能会遇到的问题以及快速上手的简明教程.同时也用心推出了基于乐鑫的相关应用方案!希望你 ...
- 启明云端分享| 家电应用 串口屏选型推荐
提示:近日小明做了一份针对90后人群的家电选用调查问卷,90%的人都选择了价格不要太贵.功能要强大点.操控智能,颜值是首选.不可否认,90后群体逐步成为家电消费市场的有生力量,他们对家电的需求代表着年 ...
- 启明云端1.54寸串口屏使用经验分享
使用启明云端1.54寸串口屏的几个开发技巧和大家分享一下 WT154-S2MT1是启明云端针对市场IOT应用需求,基于乐鑫ESP32-S2与国产芯高效开发平台8ms(http://8ms.xyz)设计 ...
- 启明云端分享|直接用ESP32-S2和ESP32-C3驱动1.54寸串口屏,有哪些区别呢,他们的亮点又有哪些呢
以上两组图分别是ESP32-S2和ESP32-C3驱动1.54寸串口屏的规格尺寸(后面我们统称为WT-1.54S系列和WT-1.54C系列) 首先 WT-1.54S系列和WT-1.54C系列刷新频率有 ...
- 基于MODBUS协议的单片机与(串口屏)触摸屏通信(图文)
基于MODBUS协议的单片机与(串口屏)触摸屏通信(图文) 导读:触摸屏能够直观.生动地显示运行参数和运行状态,而且通过触摸屏画面可以直接修改系统运行参数,人机交互性好.触摸屏和单片机通信,需要根据触 ...
最新文章
- ***“出更”---获取源码的***
- evga x58服务器芯片组,为六核980X而生 EVGA发布X58 FTW3主板
- [学习笔记]python
- vs linux 交叉编译,Visual Studio交叉编译器提供对ARM的支持
- OpenGL合并转换
- WebDriver 小毛笔记(二)准备工作
- eclipse中如何配置tomcat
- 数字时钟设计verilog_数字IC设计基本概念之创建时钟
- C语言volatile关键字—最易变的关键字
- Java 算法 麦森数
- ps字体识别_秒抠毛发,去除海报字体……解锁PS的3个隐藏工具
- 目标检测——模型加速的学习笔记
- cdrx4自动排版步骤_Coreldraw插件emboss使用方法 CDRX4的自动排版插件 百分之百显示问题...
- 破解WMV格式电影的许可证
- 如何解决eclipse桌面快捷方式无法打开,jre or jkd的问题
- 阿里巴巴达摩院视觉AI平台概述
- 《饥荒》利用LUA脚本点亮全地图,没有黑夜
- 【Matlab】如何自定义无输入和无输出的函数?
- 奈雪的茶布局元宇宙 传统品牌如何转战元宇宙营销
- java 刻度尺,jQuery实现腾讯信用界面(自制刻度尺)样式
热门文章
- 同城双活与异地多活架构分析
- v5服务器装系统,HIPAA海鲅V5s笔记本一键u盘装系统win10教程
- ubantu 安装 mosquitto时 connection refused 的解决办法
- matlab fabs能用吗,为什么使用abs()或fabs()代替条件否定?
- 你的健身方法真的正确吗
- markdown语法转换成html,使用Showdown来把markdown语法转化成html
- 测试工程师如何跟进用户反馈
- 友华光猫超级密码获取——PT622PT632
- 关于ECharts中调整容器与图表的位置关系
- 电脑 蓝屏报错:SYSTMEM SCAN AT RAISED IRQL CAUGHT IMPROPER DRIVER UNLOAD