1.14寸彩屏
模块来源
规格参数
工作电压:3.3V
工作电流:20MA
模块尺寸:31.4(H) x 28(V) MM
像素大小:135(H) x 240(V)RGB
驱动芯片:ST7789V
通信协议:8位并口
管脚数量:16 Pin(2.54mm间距排针)
硬件连接
对于8位并口TFT屏幕,需要连接数据线D0到D7、读取、写入、芯片选择、数据/命令切换、以及重置信号等引脚。确保根据你的具体硬件调整以下引脚定义:
- D0-D7 - 8位数据线
- WR - 写入信号
- RD - 读取信号(如果不使用读取功能,可以将其连接到VCC)
- CS - 芯片选择信号
- DC - 数据/命令切换信号
- RST - 重置信号
c
#define LCD_D0 8
#define LCD_D1 9
#define LCD_D2 2
#define LCD_D3 3
#define LCD_D4 4
#define LCD_D5 5
#define LCD_D6 6
#define LCD_D7 7
#define LCD_RD A0
#define LCD_WR A1
#define LCD_RS A2
#define LCD_CS A3
#define LCD_RST A4
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
使用方法
安装库文件(如果已经安过则无需理会)
- 打开Arduino IDE。
- 选择“工具” > “管理库…”。
- 搜索“MCUFRIEND_kbv”和“Adafruit GFX”,然后分别安装这两个库。
编写代码
针对1.14寸的ST7789V,分辨率为135x240像素的8位并口屏幕,在arduino IDE中并没有很多相关的并口库,所以基于该屏幕写了库文件。
INFO
.CPP
将文件放入到工程文件夹下,与ino文件同级。
接下来在ino文件中编写以下代码:
c
/******************************************************************************
* 测试硬件:ColorEasyDuino开发板
* 版 本 号: V1.0
* 修改作者: www.lckfb.com
* 修改日期: 2024年03月26日
* 功能介绍:
*****************************************************************************
* 开发板软硬件资料与相关项目软硬件资料官网全部开源
* 开发板官网:www.lckfb.com
* 技术支持常驻论坛,任何技术问题欢迎随时交流学习
* 立创论坛:club.szlcsc.com
* 关注bilibili账号:【立创开发板】,掌握我们的最新动态!
* 不靠卖板赚钱,以培养中国工程师为己任
******************************************************************************/
#define LCD_D0 8
#define LCD_D1 9
#define LCD_D2 2
#define LCD_D3 3
#define LCD_D4 4
#define LCD_D5 5
#define LCD_D6 6
#define LCD_D7 7
#define LCD_RD A0
#define LCD_WR A1
#define LCD_RS A2
#define LCD_CS A3
#define LCD_RST A4
// //LCD pins |D7 |D6 |D5 |D4 |D3 |D2 |D1 |D0 | |RD |WR |RS |CS |RST|
// //UNO pins |7 |6 |5 |4 |3 |2 |9 |8 | |A0 |A1 |A2 |A3 |A4 |
#include "ST7789_8Bit_parallel.h"
ST7789_8Bit_parallel tft = ST7789_8Bit_parallel(135,240,LCD_D0, LCD_D1, LCD_D2, LCD_D3, LCD_D4, LCD_D5, LCD_D6, LCD_D7, LCD_RD, LCD_WR, LCD_RS, LCD_CS, LCD_RST);
void setup() {
tft.begin(); //屏幕初始化
tft.setRotation(0); // 设置屏幕旋转方向
tft.LCD_Fill(0,0,135,240,BLACK); // 全屏刷新为黑色
tft.setTextSize(2); // 设置字体大小
tft.setTextColor(RED); // 设置字体颜色
tft.setCursor(5, 100); // 设置开始显示的坐标
tft.print("Hello, World"); // 设置显示内容
}
unsigned char dat = 0;
void loop() {
tft.drawPixel(dat, 10, RED);
dat =( dat+1)%130;
delay(10);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51