arduino点阵屏显示五角星
时间: 2023-12-11 16:33:25 浏览: 196
显示五角星
以下是在Arduino点阵屏上显示五角星的代码和步骤:
1. 首先,需要连接Arduino和点阵屏。将点阵屏的VCC引脚连接到Arduino的5V引脚,GND引脚连接到Arduino的GND引脚,DIN引脚连接到Arduino的数字引脚11,CS引脚连接到数字引脚10,CLK引脚连接到数字引脚13。
2. 接下来,需要下载并安装LedControl库。在Arduino IDE中选择“工具”->“管理库”,搜索“LedControl”并安装。
3. 在Arduino IDE中打开一个新的空白文件,导入LedControl库并定义点阵屏的引脚:
```c++
#include <LedControl.h>
LedControl lc=LedControl(11,13,10,1); // DIN,CLK,CS,数量
```
4. 定义五角星的字模代码。这里我们可以使用一个在线字模生成器来生成五角星的字模代码,例如:https://maxpromer.github.io/LCD-Character-Creator/ 。将生成的字模代码复制到Arduino代码中。
5. 将五角星的字模代码写入CGRAM中。根据引用中的说明,我们需要将字模代码写入CGRAM中。代码如下:
```c++
byte star[8] = {0x04,0x0E,0x1F,0x0E,x04,0x00,0x00,0x00}; // 五角星的字模代码
for(int i=0;i<8;i++){
lc.setRow(0,i,star[i]); // 将字模代码写入CGRAM中
}
```
6. 在点阵屏上显示五角星。代码如下:
```c++
lc.clearDisplay(0); // 清空屏幕
for(int i=0;i<5;i++){
lc.setLed(0,i,2,true); // 在第0行的第i列上点亮LED
}
for(int i=1;i<4;i++){
lc.setLed(0,i,3,true);
lc.setLed(0,i+1,1,true);
}
lc.setLed(0,2,4,true);
```
完整代码如下:
```c++
#include <LedControl.h>
LedControl lc=LedControl(11,13,10,1); // DIN,CLK,CS,数量
void setup() {
lc.shutdown(0,false); // 关闭睡眠模式
lc.setIntensity(0,8); // 设置亮度
lc.clearDisplay(0); // 清空屏幕
byte star[8] = {0x04,0x0E,0x1F,0x0E,0x04,0x00,0x00,0x00}; // 五角星的字模代码
for(int i=0;i<8;i++){
lc.setRow(0,i,star[i]); // 将字模代码写入CGRAM中
}
for(int i=0;i<5;i++){
lc.setLed(0,i,2,true); // 在第0行的第i列上点亮LED
}
for(int i=1;i<4;i++){
lc.setLed(0,i,3,true);
lc.setLed(0,i+1,1,true);
}
lc.setLed(0,2,4,true);
}
void loop() {
// 程序运行完后不做任何事情
}
```
阅读全文