8x8矩陣顯示器實習(3)-字母左移跑馬燈
8x8矩陣顯示器實習(3)-字母左移跑馬燈 接續" 8x8矩陣顯示器實習(2)-跑跑小藍人 "的觀念,接著讓字母像 跑馬燈左移。 這裡特別一提左移的觀念 觀念速記 程式裡有這一段,白話一點解釋 //白話解釋:設一個temp為暫存器,剩下的7排led往前推進,例如 //character[0]排被character[0+1]排取代,依此類推,迴圈跑 //完後最後一個被推到最前一排再被存入暫存器 temp=character[0]; for (byte i = 0; i < 7; i++){ character[i]=character[i+1]; } character[7]=temp; 程式碼 # include <SPI.h> byte temp; // 定義 MAX7219 暫存器值 const byte NOOP = 0x0; // 不運作 const byte DECODEMODE = 0x9; // 解碼模式 const byte INTENSITY = 0xA; // 顯示強度 const byte SCANLIMIT = 0xB; // 掃描限制 const byte SHUTDOWN = 0xC; // 停機 const byte DISPLAYTEST = 0xF; // 顯示器檢測 byte character[8]={0x00,0xfc,0x12,0x11,0x11,0x12,0xfc,0x00}; void max7219(byte reg, byte data){ digitalWrite(SS, LOW); SPI.transfer(reg); SPI.transfer(data); digitalWrite(SS,HIGH); } void setup(){ SPI.begin(); max7219(SCANLIMIT, 7); // 設定掃描 8 行 max7219(DECODEMODE, 0); // 不使用 BCD 解碼 max7219(INTENSITY, 8); // 設定成中等亮度