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

一、简介

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

二、引脚定义

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

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

在这里插入图片描述
需要注意V0引脚, 在驱动1602显示器的过程中, V0我直接接地没有任何问题, 但是在驱动12864过程中, 接地却会导致无画面显示, 所以此处我直接悬空, 实测可用。各位朋友可以作为参考。

四、驱动代码

#include <U8g2lib.h> //这个库需要自己安装

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如何安装库文件

五、效果展示

我的显示器

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

  • 25
    点赞
  • 84
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值