“(SKU:RB-05L009)8*8点阵模块”的版本间的差异

来自ALSROBOT WiKi
跳转至: 导航搜索
产品相关推荐
例子程序2
 
(未显示2个用户的11个中间版本)
第2行: 第2行:
 
[[文件:ewg1.jpg|500px|有框|右]]
 
[[文件:ewg1.jpg|500px|有框|右]]
 
==产品概述 ==
 
==产品概述 ==
:还在为驱动点阵连接复杂的接线烦恼吗?还在为 Arduino 控制器屈指可数的 I/O
+
还在为驱动点阵连接复杂的接线烦恼吗?还在为 Arduino 控制器屈指可数的 I/O 资源犯愁吗?2013 最新推出的 8X8  LED  Matrix  Module  v1.0 点阵模块是哈尔滨奥松机器人科技有限公司研发的一款易安装、易连接、可拓展的 8X8 点阵模块。此模块采用高速的 74HC595 串并转换芯片。SPI 接口,仅需要 3 根信号线即可驱动多块 8x8 点阵屏,最大限度的节省您宝贵的 Arduino 控制器 I/O 资源。行列信号全部传输完毕后再更新显示,显示亮丽,可靠性高。适合于 Arduino 控制器、STC 单片机、AVR 单片机等。
源犯愁吗?2013 最新推出的 8X8  LED  Matrix  Module  v1.0 点阵模块是哈尔滨奥松机器
+
 
人科技有限公司研发的一款易安装、易连接、可拓展的 8X8 点阵模块。此模块采用高
+
速的 74HC595 串并转换芯片。SPI 接口,仅需要 3 根信号线即可驱动多块 8x8 点阵屏,
+
最大限度的节省您宝贵的 Arduino 控制器 I/O 资源。行列信号全部传输完毕后再更新显
+
示,显示亮丽,可靠性高。适合于 Arduino UNO328 控制器、STC 单片机、AVR 单片
+
机等。
+
 
==规格参数==
 
==规格参数==
 
# 产品名称:8*8点阵模块  
 
# 产品名称:8*8点阵模块  
# 产品货号:RB-05L009
+
# 产品货号:RB - 05L009
# 工作电压:DC5V
+
# 工作电压:DC 5V
 +
# 接口类型:SPI
 
# 产品类型:显示输出  
 
# 产品类型:显示输出  
 
# 制作工艺:FR4双面喷锡  
 
# 制作工艺:FR4双面喷锡  
# 固定孔尺寸:3.2mm
+
# 固定孔尺寸:3.2 mm
# 对角固定孔间距:22.67mm
+
# 对角固定孔间距:22.67 mm
# 固定孔距板边缘:7.93mm
+
# 固定孔距板边缘:7.93 mm
 
# 人性化设计:可级联应用显示
 
# 人性化设计:可级联应用显示
# 作温度:10℃-30℃
+
# 工作温度:10℃-30℃
# 作湿度:10%~90% 无凝结
+
# 工作湿度:10%~90% 无凝结
# 量:12g
+
# 重量:12g
# 品尺寸:32mm x 32mm x 23mm  
+
# 产品尺寸:32mm x 32mm x 23mm
 +
 
 
==使用方法==
 
==使用方法==
:通过 SPI 通信方式中的 DIN、CLK、LTH 对 LED 点阵进行控制。DIN 为数据,CLK
+
===工作原理===
为时钟,LTH 为锁存。
+
通过 74HC595 移位寄存器连接 8*8 点阵液晶模块,模块与单片机之间使用 SPI 进行通信,只需要占用三个IO接口,两片 74HC595 模块使用级联的方式连接,实现串行输入并行输出,来控制点阵液晶。
==应用例程==
+
===编程原理===
:8X8 LED Ma trix  Module 8X8 点阵 模块的测试
+
本例子程序中需要使用一个扩展程序语句,介绍如下:<br/>
:我们使用 Arduino 控制器来做个测试,要用到硬件设备如下:
+
* shiftOut()语句
# Arduino 控制器×1
+
描述:将一个数据的一个字节一位一位的移出。从最高有效位(最左边)或最低有效位(最右边)开始。依次向数据脚写入每一位,之后时钟脚被拉高或拉低,指示刚才的数据有效。<br/>
# Arduino 传感器扩展板 v5.0×1
+
语法:<br/>
# 8X8 LED Matrix Module v1.0×1
+
shiftOut(dataPin, clockPin, bitOrder, value)<br/>
3P 通用连接线×1
+
参数:<br/>
2P 电源线×1
+
* dataPin:输出每一位数据的引脚(int)
# USB 数据通信线×1
+
* clockPin:时钟脚,当dataPin有值时此引脚电平变化(int)
:8X8 点阵模块的 DIN、CLK、LTH 分别连接到 Arduino 传感器扩展板的数字 4、
+
* bitOrder:输出位的顺序,最高位优先或最低位优先
5、6 引脚,VCC、GND 分别连接到传感器扩展板的任意一个 V、G 端口。最后连接
+
* value: 要移位输出的数据(byte)
Arduino 控制器至计算机。  
+
注意:<br/>
:Arduino 实验代码如下:
+
dataPin和clockPin要用pinMode()配置为输出。 shiftOut目前只能输出1个字节(8位),所以如果输出值大于255需要分两步。<br/>
 +
<pre style='color:blue'>
 +
//最高有效位优先串行输出
 +
int 数据= 500;
 +
//移位输出高字节
 +
shiftOut(dataPin, clock, MSBFIRST, (data >> 8));  
 +
//移位输出低字节
 +
shiftOut(data, clock, MSBFIRST, data);
 +
//最低有效位优先串行输出
 +
data = 500;
 +
//移位输出低字节
 +
shiftOut(dataPin, clock, LSBFIRST, data); 
 +
//移位输出高字节
 +
shiftOut(dataPin, clock, LSBFIRST, (data >> 8));
 +
</pre>
 +
===实验例程===
 +
====使用硬件====
 +
* [http://www.alsrobot.cn/goods-546.html Carduino UNO R3 控制器] * 1个
 +
* [http://www.alsrobot.cn/goods-147.html Carduino UNO 传感器扩展板 v5.0] * 1个
 +
* [http://www.alsrobot.cn/goods-107.html 8 * 8 LED Matrix Module v1.0] * 1个
 +
* [http://www.alsrobot.cn/goods-107.html 3P 通用连接线] * 1条
 +
* 2P 电源线 * 1组
 +
* [http://www.alsrobot.cn/goods-90.html USB 数据通信线] * 1条
 +
====接线方法====
 +
通过 SPI 通信方式中的 DIN、CLK、LTH 对 LED 点阵进行控制。DIN 为数据,CLK为时钟,LTH 为锁存。
 +
8 * 8 点阵模块的 DIN、CLK、LTH 分别连接到 Arduino 传感器扩展板的数字 4、5、6 引脚,VCC、GND 分别连接到传感器扩展板的任意一个 V、G 端口。最后连接Arduino 控制器至计算机。 如下图所示:
 +
整体连接图:
 +
[[文件:02L00901.png|500px|有框|居中]]
 +
接线细节图:
 +
[[文件:02L00902.png|700px|有框|居中]]
  
<pre style='color:blue'>const int DINPin = 4;             // 数据引脚  连接到数字 4 口
+
====例子程序1====
const int CLKPin = 5;             // 时钟引脚  连接到数字 5 口
+
<pre style='color:blue'>
const int LTHP in = 6;             //锁存引脚  连接到数字 6 口
+
//Pin connected to ST_CP of 74HC595
byte LieScan[16] = {                                   //列扫描,点阵只点亮一行
+
int latchPin = 6;//定义LTH引脚为D6
0xFE,0xFD,0xFB,0xF 7,0xEF,0xDF,0xBF,0x7F
+
//Pin connected to SH_CP of 74HC595
};  
+
int clockPin = 5;//定义CLK引脚为D5
byte HanZi_1[] = {  
+
//Pin connected to DS of 74HC595
0x1c,0x3e,0x7e,0xfc,0xfc,0x7e,0x3e,0x1c            //心形图案
+
int dataPin = 4;//定义DIN引脚为D4
};  
+
int tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
byte HanZi_2[] = {
+
void setup() {
0x1c,0x3e,0x7e,0xfc,0xfc,0x7e,0x3e,0x1c            //心形图案
+
  //set pins to output because they are addressed in the main loop
};  
+
  pinMode(latchPin, OUTPUT);
byte HanZi_3[] = {  
+
  pinMode(clockPin, OUTPUT);
0x1c,0x3e,0x7e,0xfc,0xfc,0x7e,0x3e,0x1c            //心形图案
+
  pinMode(dataPin, OUTPUT);
};  
+
}
void setup() {  
+
 
pinMode(DINPin,OUTPUT);         //设置数据引脚为输出
+
void loop() {
pinMode(CLKPin,OUTPUT);         //设置锁存引脚为输出
+
  for(int i = 0; i < 8; i++){
pinMode(LTHPin,OUTPUT);         //设置时钟引脚为输出
+
    for(int j = 0; j < 8; j++){
 +
      digitalWrite(latchPin, LOW);
 +
      shiftOut(dataPin, clockPin, LSBFIRST, tab[i]);//扫描显示每一列
 +
      shiftOut(dataPin, clockPin, LSBFIRST, 0xff); //将行显示设置为低电平
 +
      digitalWrite(latchPin, HIGH);
 +
      delay(50); 
 +
    }
 +
  }
 +
    for(int i = 0; i < 8; i++){
 +
    for(int j = 0; j < 8; j++){
 +
      digitalWrite(latchPin, LOW);
 +
      shiftOut(dataPin, clockPin, LSBFIRST, 0x00);//将列显示设置为高电平
 +
      shiftOut(dataPin, clockPin, LSBFIRST, tab[i]); //扫描显示每一行
 +
      digitalWrite(latchPin, HIGH);
 +
      delay(50); 
 +
    }
 +
  }
 
}  
 
}  
void loop() {
+
</pre>
for(unsigned char times_1 = 0;times_1 <250;t imes_1++) {  //持续刷新 250 次
+
====程序1效果====
for(char x = 0;x <9;x++) {
+
点阵液晶分别以行扫描和列扫描显示
}
+
shiftOut( DI NP in, CLKP in, MSBFIRST, LieScan[x]);    // 先选择列
+
shiftOut( DI NP in, CLKP in, MSBFIRST, HanZi_1[x]);  // 再送行数据
+
digit alWr ite(LTHP in, LOW);      //刷新显示
+
digit alWr ite(LTHP in, HIGH); 
+
  
 +
====例子程序2====
 +
<pre style='color:blue'>
 +
const int DINPin = 4;        //数据引脚 连接到数字P4口
 +
const int CLKPin = 5;        //时钟引脚 连接到数字P5口
 +
const int LTHPin = 6;        //锁存引脚 连接到数字P6口
  
 +
byte LieScan[16] = {                        //列扫描,点阵只点亮一列
 +
  0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F
 +
};
 +
byte HanZi_1[] = {
 +
  0x1c,0x7c,0x7e,0x3f,0x3f,0x7e,0x7c,0x1c    //显示心形图案
 +
};
 +
void setup() {
 +
  pinMode(DINPin,OUTPUT);      //设置数据引脚为输出
 +
  pinMode(CLKPin,OUTPUT);      //设置锁存引脚为输出
 +
  pinMode(LTHPin,OUTPUT);      //设置时钟引脚为输出
 +
}
 +
void loop() {
 +
  for(unsigned char times_1 = 0;times_1 <250;times_1++) {  //持续刷新250次
 +
    for(char x = 0;x <8;x++) {
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]);  //再送行数据
 +
      digitalWrite(LTHPin, LOW);    //刷新显示
 +
      digitalWrite(LTHPin, HIGH);
 +
    }
 +
  }
 +
}
 +
</pre>
  
}
+
====程序2效果====
for(unsigned char times_2 = 0;times_2 <250;t imes_2++) {  //持续刷新 250 次
+
点阵液晶屏显示为心形图案
for(char x = 0;x <8;x++) {
+
shiftOut( DI NP in, CLKP in, MSBFIRST, LieScan[x]);    // 先选择列
+
shiftOut( DI NP in, CLKPin, MSBFIRST, HanZi_2[x]);    // 再送行数据
+
digit alWr ite(LTHP in, LOW);      //刷新显示
+
digit alWr ite(LTHP in, HIGH); 
+
}
+
}
+
for(unsigned char times_3 = 0;times_3 <250;t imes_3++) {  //持续刷新 250 次
+
for(char x = 0;x <8;x++) {
+
shiftOut( DI NP in, CLKP in, MSBF IRST, LieS can[x]);    //先选择列
+
shiftOut( DI NP in, CLKP in, MSBFIRST, HanZi_3[x]);  // 再送行数据
+
digit alWr ite(LTHP in, LOW);      //刷新显示
+
digit alWr ite(LTHP in, HIGH); 
+
}
+
}
+
  
 +
====例子程序3====
 +
<pre style='color:blue'>
 +
const int DINPin = 4;        //数据引脚 连接到数字P4口
 +
const int CLKPin = 5;        //时钟引脚 连接到数字P5口
 +
const int LTHPin = 6;        //锁存引脚 连接到数字P6口
 +
 +
byte LieScan[16] = {                        //列扫描,点阵只点亮一行
 +
  0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F
 +
};
 +
byte HanZi_1[] = {
 +
  0x04,0xFA,0x89,0xBA,0xC0,0x1C,0x40,0xFF    //创
 +
};
 +
byte HanZi_2[] = {
 +
  0x4A,0xAE,0xFB,0x2E,0x4A,0xFC,0x0A,0xF9    //新
 +
};
 +
byte HanZi_3[] = {
 +
  0x04,0x02,0x24,0x40,0x40,0x24,0x02,0x04    //^_^
 +
};
 +
void setup() {
 +
  pinMode(DINPin,OUTPUT);      //设置数据引脚为输出
 +
  pinMode(CLKPin,OUTPUT);      //设置锁存引脚为输出
 +
  pinMode(LTHPin,OUTPUT);      //设置时钟引脚为输出
 +
}
 +
void loop() {
 +
  for(unsigned char times_1 = 0;times_1 <250;times_1++) {  //持续刷新250次
 +
    for(char x = 0;x <8;x++) {
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]);  //再送行数据
 +
      digitalWrite(LTHPin, LOW);    //刷新显示
 +
      digitalWrite(LTHPin, HIGH);
 +
    }
 +
  }
 +
  for(unsigned char times_2 = 0;times_2 <250;times_2++) {  //持续刷新250次
 +
    for(char x = 0;x <8;x++) {
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_2[x]);  //再送行数据
 +
      digitalWrite(LTHPin, LOW);    //刷新显示
 +
      digitalWrite(LTHPin, HIGH);
 +
    }
 +
  }
 +
  for(unsigned char times_3 = 0;times_3 <250;times_3++) {  //持续刷新250次
 +
    for(char x = 0;x <8;x++) {
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
 +
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_3[x]);  //再送行数据
 +
      digitalWrite(LTHPin, LOW);    //刷新显示
 +
      digitalWrite(LTHPin, HIGH);
 +
    }
 +
  }
 +
}
 
</pre>
 
</pre>
[[文件:ewg2.jpg|500px|有框|居中]]
+
====程序3效果====
 +
在 8 * 8 LED Martix Module模块上轮流显示“创 新 ^_^”
 +
 
 
==产品相关推荐==
 
==产品相关推荐==
 
[[文件:erweima.png|230px|无框|右]]
 
[[文件:erweima.png|230px|无框|右]]
 
===购买地址===
 
===购买地址===
 
[http://www.alsrobot.cn/goods-107.html 8*8点阵模块]
 
[http://www.alsrobot.cn/goods-107.html 8*8点阵模块]
=====周边产品推荐===
+
===周边产品推荐===
 
[http://www.alsrobot.cn/goods-128.html Arduino LCD12864 点阵液晶扩展板 12864液晶屏]
 
[http://www.alsrobot.cn/goods-128.html Arduino LCD12864 点阵液晶扩展板 12864液晶屏]
 
<br/>
 
<br/>
 
[http://www.alsrobot.cn/goods-127.html Arduino 12864点阵液晶 51单片机]
 
[http://www.alsrobot.cn/goods-127.html Arduino 12864点阵液晶 51单片机]
 
===相关问题解答===
 
===相关问题解答===
 
+
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=3052&highlight=%E7%82%B9%E9%98%B5 8*8点阵模块桃心呼吸灯效果 求助]<br/>
 +
[http://www.makerspace.cn/forum.php?mod=viewthread&tid=2762&highlight=%E7%82%B9%E9%98%B5 8x8点阵程序烧进去,显示的图案没有规律]
 
===相关学习资料===
 
===相关学习资料===
 
[http://pan.baidu.com/s/13jrx3 用户手册]<br/>
 
[http://pan.baidu.com/s/13jrx3 用户手册]<br/>
 
[http://www.makerspace.cn/portal.php 奥松机器人技术论坛]
 
[http://www.makerspace.cn/portal.php 奥松机器人技术论坛]

2016年4月5日 (二) 16:47的最后版本


Ewg1.jpg

目录

产品概述

还在为驱动点阵连接复杂的接线烦恼吗?还在为 Arduino 控制器屈指可数的 I/O 资源犯愁吗?2013 最新推出的 8X8 LED Matrix Module v1.0 点阵模块是哈尔滨奥松机器人科技有限公司研发的一款易安装、易连接、可拓展的 8X8 点阵模块。此模块采用高速的 74HC595 串并转换芯片。SPI 接口,仅需要 3 根信号线即可驱动多块 8x8 点阵屏,最大限度的节省您宝贵的 Arduino 控制器 I/O 资源。行列信号全部传输完毕后再更新显示,显示亮丽,可靠性高。适合于 Arduino 控制器、STC 单片机、AVR 单片机等。

规格参数

  1. 产品名称:8*8点阵模块
  2. 产品货号:RB - 05L009
  3. 工作电压:DC 5V
  4. 接口类型:SPI
  5. 产品类型:显示输出
  6. 制作工艺:FR4双面喷锡
  7. 固定孔尺寸:3.2 mm
  8. 对角固定孔间距:22.67 mm
  9. 固定孔距板边缘:7.93 mm
  10. 人性化设计:可级联应用显示
  11. 工作温度:10℃-30℃
  12. 工作湿度:10%~90% 无凝结
  13. 重量:12g
  14. 产品尺寸:32mm x 32mm x 23mm

使用方法

工作原理

通过 74HC595 移位寄存器连接 8*8 点阵液晶模块,模块与单片机之间使用 SPI 进行通信,只需要占用三个IO接口,两片 74HC595 模块使用级联的方式连接,实现串行输入并行输出,来控制点阵液晶。

编程原理

本例子程序中需要使用一个扩展程序语句,介绍如下:

  • shiftOut()语句

描述:将一个数据的一个字节一位一位的移出。从最高有效位(最左边)或最低有效位(最右边)开始。依次向数据脚写入每一位,之后时钟脚被拉高或拉低,指示刚才的数据有效。
语法:
shiftOut(dataPin, clockPin, bitOrder, value)
参数:

  • dataPin:输出每一位数据的引脚(int)
  • clockPin:时钟脚,当dataPin有值时此引脚电平变化(int)
  • bitOrder:输出位的顺序,最高位优先或最低位优先
  • value: 要移位输出的数据(byte)

注意:
dataPin和clockPin要用pinMode()配置为输出。 shiftOut目前只能输出1个字节(8位),所以如果输出值大于255需要分两步。

//最高有效位优先串行输出
int 数据= 500;
//移位输出高字节
shiftOut(dataPin, clock, MSBFIRST, (data >> 8));  
//移位输出低字节
shiftOut(data, clock, MSBFIRST, data);
//最低有效位优先串行输出
data = 500;
//移位输出低字节
shiftOut(dataPin, clock, LSBFIRST, data);  
//移位输出高字节
shiftOut(dataPin, clock, LSBFIRST, (data >> 8)); 

实验例程

使用硬件

接线方法

通过 SPI 通信方式中的 DIN、CLK、LTH 对 LED 点阵进行控制。DIN 为数据,CLK为时钟,LTH 为锁存。 将 8 * 8 点阵模块的 DIN、CLK、LTH 分别连接到 Arduino 传感器扩展板的数字 4、5、6 引脚,VCC、GND 分别连接到传感器扩展板的任意一个 V、G 端口。最后连接Arduino 控制器至计算机。 如下图所示: 整体连接图:

02L00901.png

接线细节图:

02L00902.png

例子程序1

//Pin connected to ST_CP of 74HC595
int latchPin = 6;//定义LTH引脚为D6
//Pin connected to SH_CP of 74HC595
int clockPin = 5;//定义CLK引脚为D5
//Pin connected to DS of 74HC595
int dataPin = 4;//定义DIN引脚为D4
int tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void setup() {
  //set pins to output because they are addressed in the main loop
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
}

void loop() {
  for(int i = 0; i < 8; i++){
    for(int j = 0; j < 8; j++){
      digitalWrite(latchPin, LOW); 
      shiftOut(dataPin, clockPin, LSBFIRST, tab[i]);//扫描显示每一列
      shiftOut(dataPin, clockPin, LSBFIRST, 0xff); //将行显示设置为低电平
      digitalWrite(latchPin, HIGH); 
      delay(50);  
    }
  }
    for(int i = 0; i < 8; i++){
    for(int j = 0; j < 8; j++){
      digitalWrite(latchPin, LOW);
      shiftOut(dataPin, clockPin, LSBFIRST, 0x00);//将列显示设置为高电平
      shiftOut(dataPin, clockPin, LSBFIRST, tab[i]); //扫描显示每一行
      digitalWrite(latchPin, HIGH); 
      delay(50);  
    }
  }
} 

程序1效果

点阵液晶分别以行扫描和列扫描显示

例子程序2

const int DINPin = 4;         //数据引脚 连接到数字P4口
const int CLKPin = 5;         //时钟引脚 连接到数字P5口
const int LTHPin = 6;         //锁存引脚 连接到数字P6口

byte LieScan[16] = {                         //列扫描,点阵只点亮一列
  0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F
};
byte HanZi_1[] = {
  0x1c,0x7c,0x7e,0x3f,0x3f,0x7e,0x7c,0x1c    //显示心形图案
};
void setup() {
  pinMode(DINPin,OUTPUT);      //设置数据引脚为输出
  pinMode(CLKPin,OUTPUT);      //设置锁存引脚为输出
  pinMode(LTHPin,OUTPUT);      //设置时钟引脚为输出
}
void loop() {
  for(unsigned char times_1 = 0;times_1 <250;times_1++) {  //持续刷新250次
    for(char x = 0;x <8;x++) {
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]);  //再送行数据
      digitalWrite(LTHPin, LOW);    //刷新显示
      digitalWrite(LTHPin, HIGH);
    }
  }
}

程序2效果

点阵液晶屏显示为心形图案

例子程序3

const int DINPin = 4;         //数据引脚 连接到数字P4口
const int CLKPin = 5;         //时钟引脚 连接到数字P5口
const int LTHPin = 6;         //锁存引脚 连接到数字P6口

byte LieScan[16] = {                         //列扫描,点阵只点亮一行
  0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F
};
byte HanZi_1[] = {
  0x04,0xFA,0x89,0xBA,0xC0,0x1C,0x40,0xFF    //创
};
byte HanZi_2[] = {
  0x4A,0xAE,0xFB,0x2E,0x4A,0xFC,0x0A,0xF9    //新
};
byte HanZi_3[] = {
  0x04,0x02,0x24,0x40,0x40,0x24,0x02,0x04    //^_^
};
void setup() {
  pinMode(DINPin,OUTPUT);      //设置数据引脚为输出
  pinMode(CLKPin,OUTPUT);      //设置锁存引脚为输出
  pinMode(LTHPin,OUTPUT);      //设置时钟引脚为输出
}
void loop() {
  for(unsigned char times_1 = 0;times_1 <250;times_1++) {  //持续刷新250次
    for(char x = 0;x <8;x++) {
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_1[x]);  //再送行数据
      digitalWrite(LTHPin, LOW);    //刷新显示
      digitalWrite(LTHPin, HIGH);
    }
  }
  for(unsigned char times_2 = 0;times_2 <250;times_2++) {  //持续刷新250次
    for(char x = 0;x <8;x++) {
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_2[x]);  //再送行数据
      digitalWrite(LTHPin, LOW);    //刷新显示
      digitalWrite(LTHPin, HIGH);
    }
  }
  for(unsigned char times_3 = 0;times_3 <250;times_3++) {  //持续刷新250次
    for(char x = 0;x <8;x++) {
      shiftOut(DINPin, CLKPin, MSBFIRST, LieScan[x]);  //先选择列
      shiftOut(DINPin, CLKPin, MSBFIRST, HanZi_3[x]);  //再送行数据
      digitalWrite(LTHPin, LOW);    //刷新显示
      digitalWrite(LTHPin, HIGH);
    }
  }
}

程序3效果

在 8 * 8 LED Martix Module模块上轮流显示“创 新 ^_^”

产品相关推荐

Erweima.png

购买地址

8*8点阵模块

周边产品推荐

Arduino LCD12864 点阵液晶扩展板 12864液晶屏
Arduino 12864点阵液晶 51单片机

相关问题解答

8*8点阵模块桃心呼吸灯效果 求助
8x8点阵程序烧进去,显示的图案没有规律

相关学习资料

用户手册
奥松机器人技术论坛