Arduino - LED計數器(LED Counter)
材料:
1.LED*4
2.電阻*4
3.開關*1
目的:
2進制計數器,開關按一次值+1,超過15歸0成果:
const byte LED[4] = { 8, 9, 10, 11 }; boolean lastState = LOW; byte time[4] = { 0 }; void setup() { Serial.begin(9600); pinMode(LED[0], OUTPUT); pinMode(LED[1], OUTPUT); pinMode(LED[2], OUTPUT); pinMode(LED[3], OUTPUT); pinMode(2, INPUT); digitalWrite(2, HIGH); } void loop() { boolean now = digitalRead(2); Serial.print(now); if (now == HIGH && lastState == LOW) { Serial.println(time[0]); time[0]++; for (int i = 0; i < 4; i++) { if (time[i] >= 2) { time[i] = 0; time[i + 1]++; if (time[3] >= 2) { for (int i = 0; i < 4; i++) { time[i] = 0; } } } } for (int i = 0; i < 4; i++) { if (time[i] == 1) { digitalWrite(LED[i], HIGH); } else if (time[i] == 0) { digitalWrite(LED[i], LOW); } } } delay(100); }
留言
張貼留言