逛海鲜市场发现了一款电子价签,采用TLS8359主控+2.66英寸三色墨水屏的方案。查了下主控芯片支持BLE,配合上位机可以做桌面摆件,实现时钟、天气、万年历、电脑状态等功能,可玩性非常高。
TLS8359芯片介绍

- Arm Cortex-M0 @ 48Mhz
- 512kB Flash, 64KB RAM
- SPI, I2C, UART, USB
- 内置2.4Ghz无线收发器
作为一款内置2.4Ghz无线收发器的芯片,理论上是支持BLE功能的,但是在原厂的资料中未找到任何这款芯片蓝牙的应用。国外有位大神意外的发现,TLS8359竟然可以完美的运行TLS8258这款蓝牙芯片的固件,意味着可以在不增加额外硬件的情况下将这块电子价签玩转。
开发环境
下载开发包
这里不得不提两位大神: atc1441、这就是上文提到的国外大神,完成了电子价签改造的整个方案,包括蓝牙通信、ota、串口固件升级、墨水屏驱动等。 reece15、国内的大神,在atc1441的基础上增加了中文字库,完成了一个时钟的桌面摆件。 博主倾向于选择reece15大神的更加完善的版本进行开发,进入到reece15的项目进行fork并clone到本地:https://github.com/reece15/stellar-L3N-etag
软件环境
简单介绍一下主要的几个目录:
- docs 芯片手册、墨水屏说明书
- Firmware 固件
- Firmware/components 芯片厂商提供的sdk
- Firmware/make Makefile
- Firmware/src 应用代码
- Firmware/static_src 配置文件
- Firmware/tc32_linux linux编译器
- Firmware/tc32_windows windows编译器
- tools 一些图片处理的python脚本
- web_tools 网页端工具
硬件环境
采用usb转串口,连接板子,这里有两个坑:
想当然认为串口的TX接板子的RX,错!这里不是常规的串口,而是接sws下载接口,串口的TX接板子的SWS
如果是采用CH340可以将RTS接到复位上,下载程序前可以自动复位进boot。否则,在烧写按钮点击后3s内,需要手动短接复位和GND。
HelloWorld
代码编译
reece15的代码适配了2.96寸的汉硕价签,根据资料显示2.96寸的分辨率是296X128,博主使用的是2.66寸的版本,分辨率是296X152,理论上来说可以直接用2.96的固件,先编译烧进去试试。
cd Firmware
make clean && make -j4
下载固件
打开网页工具:https://atc1441.github.io/ATC_TLSR_Paper_UART_Flasher.html 依次选择串口、选择固件、点击“Write to Flash”,在3秒内短接复位引脚后开始烧写。
效果展示
成功下载固件后,短接复位引脚,屏幕会进行多次刷新,最终稳定显示时钟的界面,借用reece15大神的图片: