1.工具 > 管理程式庫 >> 安裝Ledcontrol(by Eberhard Fahle)
2.Copilot >>Arduino MAX7219 8X8 顯示矩陣 循環顯示9-0 的倒數計時程式碼
3.程式碼如下
#include <LedControl.h> // MAX7219 控制函式庫
// DIN 接到 Arduino pin 12, CLK 接到 pin 11, CS 接到 pin 10
LedControl lc = LedControl(12, 11, 10, 1);
// 定義 0-9 的字型 (8x8)
byte digits[10][8] = {
{0x3C,0x66,0x6E,0x76,0x66,0x66,0x3C,0x00}, // 0
{0x18,0x38,0x18,0x18,0x18,0x18,0x7E,0x00}, // 1
{0x3C,0x66,0x06,0x0C,0x30,0x60,0x7E,0x00}, // 2
{0x3C,0x66,0x06,0x1C,0x06,0x66,0x3C,0x00}, // 3
{0x0C,0x1C,0x3C,0x6C,0x7E,0x0C,0x0C,0x00}, // 4
{0x7E,0x60,0x7C,0x06,0x06,0x66,0x3C,0x00}, // 5
{0x3C,0x66,0x60,0x7C,0x66,0x66,0x3C,0x00}, // 6
{0x7E,0x06,0x0C,0x18,0x30,0x30,0x30,0x00}, // 7
{0x3C,0x66,0x66,0x3C,0x66,0x66,0x3C,0x00}, // 8
{0x3C,0x66,0x66,0x3E,0x06,0x66,0x3C,0x00} // 9
};
void setup() {
lc.shutdown(0, false); // 啟動 MAX7219
lc.setIntensity(0, 8); // 設定亮度 (0-15)
lc.clearDisplay(0); // 清除顯示
}
void loop() {
for (int i = 9; i >= 0; i--) {
showDigit(i);
delay(1000); // 每秒更新一次
}
}
// 顯示數字
void showDigit(int num) {
for (int row = 0; row < 8; row++) {
lc.setRow(0, row, digits[num][row]);
}
}
留言
張貼留言