用arduino做智能手表 (arduino点阵模块编程代码)

用arduino制作库,用arduino编程四位数码管

今天我要做一个跳动的心来拯救单身狗,我要拿起它,向心爱的女生表白!这个就是成品图。

所需材料

  • UNO R3主控版1个
  • 8*8点阵模块
  • 杜邦线若干

接线图

用arduino制作库,用arduino编程四位数码管

接线对照表

VCC — 5VGND — GNDDIN — D11 (MOSI)CS — D10 (SS)CLK — D13 (SCK)

程序代码

#include <SPI.h>
const byte sprite[2][8] = {
{ 0x00, 0x66, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x18 },
{ 0x00, 0x00, 0x24, 0x7E, 0x7E, 0x3C, 0x18, 0x00 }
};
const byte DECODEMODE = 0x09;
const byte INTENSITY = 0x0a;
const byte SCANLIMIT = 0x0b;
const byte SHUTDOWN = 0x0c;
const byte DISPLAYTEST = 0x0f;
void max7219(const byte reg, const byte data) {
digitalWrite(SS, LOW);
SPI.transfer(reg);
SPI.transfer(data);
digitalWrite(SS, HIGH);
}
void setup() {
SPI.begin();
max7219(SCANLIMIT, 7);
max7219(DECODEMODE, 0);
max7219(INTENSITY, 2);
max7219(DISPLAYTEST, 0);
max7219(SHUTDOWN, 1);
for(byte i=0; i<8; i++) {
max7219(i+1, 0);
}
}
void loop() {
for(byte j=0; j<2; j++) {
for(byte i=0; i<8; i++) {
max7219(i+1, sprite[j][i]);
}
delay(500);
}
}