Skip to content

XQZKA521/e_paper

Repository files navigation

MSPM0G3519 E-Paper Display System

基于 TI MSPM0G3519 微控制器的电子墨水屏驱动与应用系统,支持图片轮播、文字渲染、以及 PC 性能监控显示。 基于MSPMG3519的关于汉朔4.2寸黑白电子价签墨水屏E042A13显示器的墨水屏驱动及例程

功能特性

普通模式(4x4 矩阵键盘控制)

按键 功能
1 清屏(全白)
2 显示居中 "Hello World" 文字(2x 缩放)
3 全屏填充黑色
4 轮播 5 张预置全屏位图(400x300),之后每 30 秒自动切换

PC 监控模式

0 进入 PC 监控模式,通过串口接收主机发送的实时性能数据:

  • CPU / 内存 / 磁盘 / GPU 使用率(带进度条图形化显示)
  • 实时 FPS
  • 日期时间
  • 底部轮播编程名言
  • 1-4 退出监控模式

PC 端数据采集脚本见 pc_monitor/ 目录。

硬件平台

项目 规格
MCU TI MSPM0G3519 (Cortex-M0+, 80MHz)
Flash / SRAM 512 KB / 128 KB (2x64KB)
电子墨水屏 SSD1619 控制器,400x300 像素,黑白红三色
通信接口 GPIO 软件模拟 SPI(Bit-bang)
键盘 4x4 矩阵键盘
其他 DHT11 温湿度传感器驱动(已实现,预留扩展)

GPIO 引脚分配

E-Paper SPI(Bit-bang):

信号 引脚
CS PC9
DC PC8
RST PB23
SCK (D0) PB3
MOSI (D1) PB2
BUSY PC9(输入)

串口:

接口 引脚 波特率 用途
UART0 PA10/PA11 115200 通用串口
UART4 PB10/PB11 9600 接收 PC 监控数据

项目结构

e_paper/
├── User/
│   ├── main.c                 # 主程序入口,按键处理,模式切换
│   ├── ti_msp_dl_config.c/h   # SysConfig 自动生成的外设初始化
│   └── config.syscfg          # SysConfig 工程文件
├── Project/
│   ├── epaper.c/h             # 电子墨水屏驱动(SPI、绘图、文字、BMP)
│   ├── uart_receiver.c/h      # UART 接收解析(环形缓冲区 + 行协议)
│   ├── bmp_data.c/h           # 5 张 400x300 预置位图数据
│   ├── oledfont.h             # 字模数据(8x16 ASCII + 16x16 中文)
│   ├── key.c/h                # 4x4 矩阵键盘扫描
│   ├── DHT11.c/h              # DHT11 温湿度传感器驱动
│   ├── *.uvprojx              # Keil uVision 工程文件
│   └── mspm0g3519.sct         # ARM 链接脚本
├── BSP/
│   ├── bsp.h                  # 板级支持包
│   └── delay/                 # 延时函数(基于 80MHz 时钟)
├── Source/
│   └── third_party/CMSIS/     # ARM CMSIS 库
├── pc_monitor/
│   ├── pc_monitor.py          # PC 端性能采集脚本
│   └── requirements.txt       # Python 依赖
└── Output/                    # 编译输出(hex、axf 等)

开发环境

工具 版本/说明
IDE Keil uVision 5 (MDK-ARM)
编译器 ARMClang V6.21 (AC6)
SDK TI MSPM0 SDK 2.08.00.03
设备包 TexasInstruments.MSPM0GX51X_DFP.1.0.0
SysConfig v1.27.0+

编译与烧录

  1. 安装 TI MSPM0 SDK 和 Keil MDK-ARM
  2. 用 Keil 打开 Project/empty.uvprojx
  3. 确认 SDK 路径正确(默认 C:\ti\mspm0_sdk_2_08_00_03
  4. BuildDownload 烧录到目标板

PC 监控模式使用

1. 硬件连接

将 PC 串口(USB-TTL 模块)连接到 MCU 的 UART4:

  • TX → PB11 (MCU RX)
  • RX → PB10 (MCU TX)
  • GND → GND

2. 安装 Python 依赖

cd pc_monitor
pip install -r requirements.txt

3. 运行采集脚本

python pc_monitor.py

脚本每 60 秒采集一次 CPU、内存、磁盘、GPU 使用率及 FPS,通过串口发送到 MCU。

串口协议

TIME: 2026-06-02 14:30
CPU: 45.2%
MEM: 62.1%
DSK: 78.3%
GPU: 12.5%
FPS: 60
END

技术要点

  • Bit-bang SPI:SSD1619 协议要求 CS 在多字节命令序列中保持低电平,软件模拟 SPI 比硬件 SPI 更灵活
  • 双缓冲刷新:先清屏再写入新帧数据,减少电子墨水屏残影
  • 15KB 帧缓冲EPD_GRAM[300][50],每字节 8 像素,bit=1 白色,bit=0 黑色
  • UART 环形缓冲:128 字节,ISR 驱动接收,行协议解析

许可证

本项目基于 TI MSPM0 SDK 开发,SDK 部分遵循 TI 的许可协议。

致谢

About

基于MSPMG3519的关于汉朔4.2寸黑白电子价签墨水屏E042A13显示器的墨水屏驱动及例程

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors