|
楼主
查看: 2809回复: 0
发表于 2023-8-29 09:35:22
只看该作者
本帖最后由 立创开发板 于 2023-8-29 09:37 编辑
详情请跳转:https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc
模块来源
采购链接:
https://item.taobao.com/item.htm?id=636002776097&_u=n1q56pn3e33f
资料下载链接:
https://pan.baidu.com/s/1Q4s3fk0uy8AP5aqNZ3fBmg
资料提取码:8888
规格参数
工作电压:3.3V
工作电流:90MA
模块尺寸:31(H) x 48(V) MM
像素大小:240(H) x 280(V)RGB
驱动芯片:ST7789V2
通信协议:SPI
管脚数量:8 Pin(2.54mm间距排针)
移植过程
我们的目标是将例程移植至梁山派GD32F470上。按照以下步骤,即可完成移植。
- 将源码导入工程;
- 根据编译报错处进行粗改;
- 修改引脚配置;
- 修改时序配置;
- 移植验证
查看资料
打开厂家资料例程(例程下载见文件1.4.3.1 例程下载)。具体路径见 图4.3.1 例程路径
图1.4.3.1 例程路径
移植至工程
引脚选择
该屏幕需要设置8个接口,具体接口说明见 表1.4.3.1 各引脚说明。
接口
| 说明
|
| GND
| 电源地
| VCC
| 电源正(3.3V)
| SCL
| 串行信号时钟输入
| SDA
| 串行信号数据输入
| RES
| 复位信号输入(低电平有效)
| DC
| 数据/命令控制(引脚拉高为数据,引脚拉低为命令)
| CS
| 片选输入(只有CS拉低时,芯片才能使能MCU通信)
| BLK
| 背光控制(默认打开背光,引脚拉低为关闭背光)
| 表1.4.3.1 各引脚说明
|
模块为SPI通信协议的从机,SCL为SPI信号线(SCK),SDA为SPI输出线(MOSI),CS为SPI片选线(NSS)。
如果MCU的GPIO引脚不足,可以将屏幕的两个引脚接口不接入MCU的GPIO。
- 将RES接入MCU的复位引脚,当MCU复位时,屏幕也跟着复位;
- 可以将BLK接入3.3V或悬空,代价是无法控制背光亮度。
下面分为软件SPI移植与硬件SPI移植进行讲解。
软件SPI移植
屏幕
| 开发板
|
| GND
| GND
| VCC
| 3.3V
| SCL
| PB13
| SDA
| PB15
| RES
| PD0
| DC
| PC6
| CS
| PB12
| BLK
| PC7
|
硬件SPI移植
移植验证在main.c中输入代码如下
- #include "gd32f4xx.h"
- #include "systick.h"
- #include "lcd_init.h"
- #include "lcd.h"
- int main(void)
- {
- float t = 0;
- nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2); // 优先级分组
- systick_config();//滴答定时器初始化 1ms
- LCD_Init();//屏幕初始化
- LCD_Fill(0,0,LCD_W,LCD_H,BLACK);//清全屏为黑色
-
- while(1)
- {
- LCD_ShowString(0,16*2,"LCD_W:",WHITE,BLACK,16,0);
- LCD_ShowIntNum(48,16*2,LCD_W,3,WHITE,BLACK,16);
- LCD_ShowString(80,16*2,"LCD_H:",WHITE,BLACK,16,0);
- LCD_ShowIntNum(128,16*2,LCD_H,3,WHITE,BLACK,16);
-
- LCD_ShowString(0,16*3,"Nun:",WHITE,BLACK,16,0);
- LCD_ShowFloatNum1(8*4,16*3,t,4,WHITE,BLACK,16);
- t+=0.11;
- delay_1ms(1000);
- }
- }
复制代码
|
|