arduino如何驱动LCD12864显示器?(使用U8g2库)

一、简介

  LCD12864和LCD1602想必是两种我们最为熟悉的显示模块了, 1602是字符型的屏幕, 而12864则是点阵屏。 所谓的点阵屏, 就是由128列和64行像素点组成的屏幕, 和我们平时用的显示器不同, 这些像素点只有两种状态: 亮和灭。通过控制像素的亮灭, 就可以组成我们想要现实的图像。相对而言, 12864更为强大, 我们甚至可以在上面显示自定义的图案。
  这是我的一块LCD12864
arduino如何驱动LCD12864显示器?(使用U8g2库)_第1张图片arduino如何驱动LCD12864显示器?(使用U8g2库)_第2张图片

二、引脚定义

编号 丝印/符号 引脚说明
1 GND 电源地
2 VCC 电源正极,供电电压为3.0v-5.5v
3 V0 LCD驱动电压输入, 悬空
4 RS(CS) 并行:数据/命令选择 串行:片选信号
5 R/W(SID) 并行:读/写选择 串行:数据口
6 E(CLK) 并行:使能信号 串行:时钟信号
7 DB0 数据
8 DB1 数据
9 DB2 数据
10 DB3 数据
11 DB4 数据
12 DB5 数据
13 DB6 数据
14 DB7 数据
15 PSB 并/串选择, 高电平并行, 低电平串行
16 NC 悬空
17 RST 复位, 低电平有效
18 VOUT 倍压输出脚, VCC=3.3v时有效, 可以悬空
19 BLA 背光电源正极
20 BLK 背光电源负极

三、应用电路, 主控为arduino UNO

arduino如何驱动LCD12864显示器?(使用U8g2库)_第3张图片
需要注意V0引脚, 在驱动1602显示器的过程中, V0我直接接地没有任何问题, 但是在驱动12864过程中, 接地却会导致无画面显示, 所以此处我直接悬空, 实测可用。各位朋友可以作为参考。

四、驱动代码

#include  //这个库需要自己安装

U8G2_ST7920_128X64_F_SW_SPI u8g2(U8G2_R0, /*clock*/4, /*data*/3, /*cs*/2 , /*reset*/5);//创建显示器实例

void setup() {
	u8g2.begin();			//显示器初始化
}

void loop(void) {
	u8g2.firstPage();		//此为显示循环, 更加详细的内容可以参照下面给出的链接
	do {
		u8g2.setFont(u8g2_font_ncenB14_tr);	//设置字体
		u8g2.drawStr(0,20,"MadonG");		//在指定位置显示字符 MadonG
	} while ( u8g2.nextPage() );
	delay(1000);
}

需要注意的是, 如果你的显示器的驱动芯片不是ST7920, 那么你需要更改数据结构定义部分, 详细请点击 支持的驱动芯片列表
如果你想构造更加复杂的图像, 更多u8g2库的相关操作请点击深入学习Arduino u8g2 OLED库,一篇就够
如果还不会在ArduinoIDE中安装库文件, 点击Arduino IDE如何安装库文件

五、效果展示

如果帮助到了你顺手点个赞吧!

你可能感兴趣的:(arduino驱动显示器系列,Arduino,arduino,c++)