STM32 开发
本章节包含以下部分,请按需阅读:
硬件连接
示例基于 STM32F103RBT6 开发,引脚对应关系参见 产品说明 — 接口说明 中的 STM32 连接表。以 XNUCLEO-F103RB 开发板为例,连接方式如下图所示。

如需移植到其他 STM32 型号,按照实际引脚修改对应 GPIO 即可。
下载示例程序
下载 LCD Module 示例程序 并解压,STM32 工程位于 STM32/STM32F103RBT6/ 目录下。
运行示例
- 进入
STM32/STM32F103RBT6/MDK-ARM/目录,双击打开LCD_demo.uvprojx工程。

- 打开
User/main.c,可看到各尺寸屏幕的测试函数。取消LCD_1in28_test()前的注释,注释掉其他测试函数,然后重新编译下载。

其中 LCD_1in28_test() 为 1.28inch LCD Module 测试程序。
程序结构说明
示例程序分为底层硬件接口、LCD 驱动和上层应用三部分。
底层硬件接口(DEV_Config.c/.h)封装了 GPIO 读写、延时和 SPI 数据传输:
void DEV_Digital_Write(UWORD Pin, UBYTE Value); // 写引脚电平
UBYTE DEV_Digital_Read(UWORD Pin); // 读引脚电平
void DEV_Delay_ms(UDOUBLE ms); // 毫秒级延时
void SPI4W_Write_Byte(uint8_t value); // SPI 写数据
上层应用(GUI_Paint.c/.h)提供图形绘制功能,包括画点、画线、画矩形、画圆、显示字符和图片等。由于 STM32 内部 RAM 有限,GUI 直接写入 LCD 的显存。
常用绘图函数:
void Paint_NewImage(UWORD Width, UWORD Height, UWORD Rotate, UWORD Color);
void Paint_SetClearFuntion(void (*Clear)(UWORD));
void Paint_SetDisplayFuntion(void (*Display)(UWORD, UWORD, UWORD));
void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD Color);
void Paint_DrawLine(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color);
void Paint_DrawRectangle(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color);
void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD Radius, UWORD Color);
void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Acsii_Char, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background);
void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background);
void Paint_DrawNum(UWORD Xpoint, UWORD Ypoint, double Nummber, sFONT* Font, UWORD Digit, UWORD Color_Foreground, UWORD Color_Background);
字体文件位于 User/Fonts/ 目录,提供 Font8、Font12、Font16、Font20、Font24 等多种 ASCII 字体以及 Font12CN、Font24CN 中文字体。