#include <SPI.h>
#include <TimerOne.h>
const byte seg7_digit[10]={
//abcdefgh
B11111100, //數字0
B01100000, //數字1
B11011010,
B11110010,
B01100110,
B10110110,
B10111110,
B11100100, //7
B11111110, //8
B11110110};
#define SS 10
volatile int number = 0;
volatile bool chang = true;
void setup() {
pinMode(SS, OUTPUT);
digitalWrite(SS, HIGH);
SPI.begin();
Timer1.initialize(1000000);
Timer1.attachInterrupt(A123);
}
void loop() {
}
void A123() {
digitalWrite(SS, LOW);
SPI.transfer(seg7_digit[number]);
digitalWrite(SS, HIGH);
number += chang ? 1 : -1;
if (number == 9 || number == 0) {
chang = !chang;
}
}