本节课程开始学习点阵屏,这节课程将使用8×8的点阵屏。
目录
步骤1: 材料准备
以上是需要准备的所有材料
硬件材料
LED 点阵 ( 8 × 8 )
nodemcu
若干导线
USB导线
软件环境
* Arduino 的 IDE (配置好了esp8266环境 )
步骤 2 :硬件介绍
8×8点阵屏之所以是8×8,是因为行列分别通过8根线控制64个led灯。原理如下:
本节课程的点阵屏使用了MAX7219芯片进行驱动,所以并不需要直接控制8×2根线,操作起来跟家简便。
LED一般采用扫描式显示,实际运用分为三种方式
(1)点扫描
(2)行列扫描
步骤 3 : 电路连接
引脚连接方法如下:
VCC – 连接到nodemcu的3v3 。
GND – 连接nodemcu的GND 。
DIN – 连接到nodemcu的D0 。
CS – 连接到nodemcu的D1 。
CLK – 连接到nodemcu的D2 。
步骤 4 : 库函数安装
在编写程序之前,需要使用一个头文件,头文件下载点击:
步骤 5 : 开始编程
本节课程序:
/*
作者:趣讨教(qutaojiao.com)
时间:2017 - 11 - 10
描述:LED点阵屏的使用
引脚连接:
DIN——D0
CS——D1
CLK——D2
*/
#include
int DIN = 12; // D0
int CS = 11; // D1
int CLK = 10; // D2
LedControl lc = LedControl(DIN, CLK, CS, 0);
void setup() {
lc.shutdown(0, false); //max72xx驱动芯片处于节电模式启动
lc.setIntensity(0, 15); // 设置最大亮度值
lc.clearDisplay(0); // 清除显示
}
void loop() {
byte a[8] = {0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0xFF}; // L
byte b[8] = {0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF}; // I
byte c[8] = {0x7F, 0xFF, 0xC0, 0xDF, 0xDF, 0xC3, 0x7F, 0x3F}; // G
byte d[8] = {0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xC3}; // H
byte e[8] = {0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18}; // T
byte f[8] = {0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xC3}; // H
byte g[8] = {0x3C, 0x7E, 0xC3, 0xC3, 0xC3, 0xC3, 0x7E, 0x3C}; // O
byte h[8] = {0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF}; // U
byte i[8] = {0x7F, 0xFE, 0xC0, 0xFE, 0x7F, 0x03, 0x7F, 0xFE}; // S
byte j[8] = {0xFF, 0xFF, 0xC0, 0xF8, 0xF8, 0xC0, 0xFF, 0xFF}; // E
printByte(a);
delay(1000);
printByte(b);
delay(1000);
printByte(c);
delay(1000);
printByte(d);
delay(1000);
printByte(e);
delay(1000);
余下代码:
步骤 6 : 显示输出
程序编写好之后,就可以开始查看效果了,点阵屏显示的是:LIGHT HOUSE
本节课程序下载:点击下载
下载密码:
非常不错!
非常不错!