淘晶驰串口屏开发记录

 本文仅用于开发记录,问题解决资料中心基本都有,实在没有的咨询客服进Q群。

淘晶驰资料中心http://wiki.tjc1688.com/index.html

产品选型和规格书http://wiki.tjc1688.com/product/index.html

资源合集汇总http://wiki.tjc1688.com/download/moreProject/tjcwiki_resource_collection.html#id1

一、产品简介

项目参数
型号TJC4827X543_011C
尺寸4.3寸
触摸类型电容触摸
主控芯片型号AIHMI T8(200MHz)
通讯方式串口(RX-TX,TX-RX)
编程语言陶晶驰脚本语言
供电电压5V
分辨率480x272

二、开发流程

准备材料:串口屏,串口,串口线。

1.资料下载:上位机软件安装,资源合集汇总下载。

2.插线体验一下出厂屏幕内容,一些控件,大概都有什么功能。

3.打开《串口屏开发手册》根据手册熟悉熟悉。

4.打开上位机软件,上位机软件很容易理解,找个工程(.HMI文件)打开看看。

5.这个Program.s需要看一下,里边可以设置一些参数,内容也很容易理解,具体命令可以查阅指令集。我这里边设置波特率115200,然后跳转到page 0是编号0的页面,不是下边的page0。

6.右边是页面列表,可以添加、删除、插入、上下移动、复制、导入。

7.想用什么控件左边工具箱里有,下边还有图片,字库,动画,视频,音频。注意这些东西要占用内存的,占用越多,下载的时候越慢。

8.自己一顿设计。

9.编译一下,调试也行,下载也行。调试界面可以选择模拟器调试、串口实物调试或者两者一起调,然后你还可以看见串口或模拟器返回的数据信息。(注意调试的时候左边是人家串口屏的指令,不是你单片机的指令,o(╥﹏╥)o)。

10.我这个型号的下载波特率可以选到最大921600(这个波特率跟通讯不一样,有的型号好像不能超过256000,之前下载例程的时候,文件特别大,波特率没调下载用了好长时间,o(╥﹏╥)o)。

11.然后就是调屏幕和单片机的程序bug。

三、所遇到的问题及解决方案

问题1.想修改字体大小?

上位机软件左上角:工具->字库制作,字高可以调整,最下边还可以自定义高度。编码格式。字体,加粗等,生成字库,保存一下,然后会弹出是否添加到工程中。如果没选也可以在字库中自己添加。

问题2.单片机发送串口数据修改文本控件,串口屏没反应?

串口屏定义了一个文本控件,通过单片机串口发送数据,我是习惯使用sprintf组数,也可以用printf直接发。我这里将文本控件由原来的“未连接”切换到“已连接”。咋发就是没反应,后来看了一文档,发现我单片机(ESP32)的编码格式是UTF-8,而串口屏那边是GB2312,(汉字UTF-8占三个字节,GB2312占两个字节),算我求你,搞嵌入式买个逻辑分析仪吧!o(╥﹏╥)o

我为啥用ABCDEF呢,我也是懒,我就直接在串口屏调试的时候将串口飞线接逻辑分析仪,看人家发的汉字转十六进制看看是啥,一个汉字占两个字节,三个字六个字节。然后用十六进制数替换ABCDEF,哈哈,效果一样的。

我为什么不修改字库编码格式的方式呢,因为我之前用的别人家串口屏不支持更改编码格式,这样最快。

//ESP32

sprintf(data,"page1.t6.txt=\"ABCDEF\"\xff\xff\xff"); //汉字:已连接UTF-8->GB2312:D2 D1 C1 AC BD D3
if (strlen(data)) {
   data[14] = 0xD2;
   data[15] = 0xD1;
   data[16] = 0xC1;
   data[17] = 0xAC;
   data[18] = 0xBD;
   data[19] = 0xD3;
   data[strlen(data)] = '\0';
// esp_log_buffer_hex(TAG, &data, 30);
}
//然后发送data数组
uart_write_bytes(ECHO_UART_PORT_NUM, &data, strlen(data));

问题3.单片机不想接收串口屏返回的串口数据?

我当时按按钮或者其他的控件,它就会给我传递什么01 FF FF FF,04 FF FF FF的信息,我单片机不想要这些个信息,就需要在Program.s中添加bkcmd=0。但其实这些信息可以帮助你调试。(我这里挺搞笑的,找了半天bug,也在问题Q群里看别人的问题。下班之后灵机一动,就发现问题了。o(╥﹏╥)o)

问题4.想要单片机控制跨屏幕页面进行控制控件?

就用在问题2中的文本控件(位于page1)进行说明,默认这个vscope是私有的,要修改成全局。然后在通过串口修改,比如我在其他页面(page0)就想控制page1的文本内容修改,就可以发送

//注意转义字符!!!
printf("page1.t6.txt=\"已连接\"\xff\xff\xff")

问题5.使用屏幕接喇叭播放100Hz-16KHz的扫频声音,高频部分播放不了?

这个问题我最开始就问Q群和客服,但是没有使我满意的答案,就是说声音文件的频率,确实是人家做个屏幕,播放音乐就挺好了,不可能满足所有需求,我的这个高频声音有点专业的。

串口屏(按按钮控制音乐播放和停止)发送数据给单片机,单片机控制JQ8900(TF音乐模块,可以通过SD卡播放音乐),再加功放模块+喇叭播放这个高频声音。

<think>嗯,用户想了解如何将K210连接到陶晶驰串口,我得先回忆一下相关硬件连接和配置步骤。首先,K210开发板通常有几个UART接口,而陶晶驰串口一般使用UART通信,所以需要确定两者的引脚对应关系。根据参考内容,陶晶驰的引脚是5V、GND、TXD、RXD,所以K210那边需要对应的电源、地线和UART的TX、RX交叉连接。也就是说,K210的TX应该连接到串口的RX,RX连接到串口的TX。 接下来是软件配置部分。K210使用MicroPython的话,可能需要初始化UART模块,设置正确的波特率。陶晶驰的波特率可能有多种,比如9600或115200,用户需要根据幕的具体型号来设置。然后,发送指令的话,串口通常有特定的协议,比如通过发送特定的字符串或十六进制指令来控制显示内容。例如,显示文本可能需要发送类似于“txt 1.txt=“hello””这样的指令,但具体格式得参考陶晶驰的文档。 另外,用户提到代码简单,能够回传字符串,可能涉及到双向通信。比如,幕上的触控事件可能会通过串口发送数据给K210,所以需要设置接收中断或者轮询读取数据。这部分在代码中可能需要注册回调函数或者不断检查缓冲区。 还有可能需要注意电平匹配的问题,K210的UART是否是3.3V电平,而串口如果是5V的话,是否需要电平转换?不过参考中提到的引脚有5V,可能直接连接电源,而信号线可能兼容,但需要确认,避免损坏设备。 最后,用户可能需要具体的示例代码,包括初始化UART、发送指令和接收数据的部分。应该分步骤说明硬件连接和软件配置,并提醒用户检查波特率、指令格式是否正确,以及如何调试可能出现的问题,比如无显示或通信失败的情况。</think>### K210连接陶晶驰串口方法 #### 1. **硬件连接** 陶晶驰串口的通信基于UART协议,需连接以下引脚: - **K210**端:选择任意UART引脚(如`UART1`或`UART2`),常用引脚为`IO6(TX)`和`IO7(RX)` - **接线方式**: $$ \text{串口} \begin{cases} \text{5V} \to \text{K210的5V电源} \\ \text{GND} \to \text{K210的GND} \\ \text{TXD} \to \text{K210的RX引脚(如IO7)} \\ \text{RXD} \to \text{K210的TX引脚(如IO6)} \end{cases} $$ 注意:需确保串口与K210的波特率一致(如9600、115200等),具体值需参考幕手册[^1]。 --- #### 2. **软件配置** 以MicroPython为例,配置UART通信: ```python from machine import UART # 初始化UART1,波特率115200(需与幕设置一致) uart = UART(UART.UART1, 115200, bits=8, parity=None, stop=1) # 发送指令示例:显示文字 def show_text(text): cmd = f'txt 1.txt="{text}"\r\n' # 假设幕控件ID为1 uart.write(cmd.encode()) # 接收幕返回数据(如触控事件) if uart.any(): data = uart.read() print("Received:", data) ``` --- #### 3. **指令格式** 陶晶驰串口支持文本、图片、控件操作等指令,例如: - **文本显示**:`txt 1.txt="Hello"`(控件ID为1) - **触控事件返回**:格式通常为`pageID-widgetID`(如`P1-B1`表示页面1的按钮1被按下) --- #### 4. **调试建议** - **无显示**:检查接线(TXD/RXD是否交叉)、波特率、电源是否正常。 - **指令无效**:参考幕手册确认指令格式,或通过`UART.write()`发送测试指令(如`vis 1,0`隐藏控件)。 - **触控无响应**:确保幕固件支持触控回传,并启用对应功能。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chinalihuanyu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值