sync: initial commit

This commit is contained in:
2026-06-08 22:36:21 +02:00
commit 9b272b93e8
9 changed files with 486 additions and 0 deletions

120
segman.cc Normal file
View File

@@ -0,0 +1,120 @@
#include "segman.hh"
#include <Arduino.h>
void writeDigit(int digit, unsigned char value) {
digitalWrite(PIN_D1, HIGH);
digitalWrite(PIN_D2, HIGH);
digitalWrite(PIN_D3, HIGH);
digitalWrite(PIN_D4, HIGH);
switch (value) {
case 0:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, HIGH);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, LOW);
break;
case 1:
digitalWrite(PIN_SA, LOW);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, LOW);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, LOW);
digitalWrite(PIN_SG, LOW);
break;
case 2:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, LOW);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, HIGH);
digitalWrite(PIN_SF, LOW);
digitalWrite(PIN_SG, HIGH);
break;
case 3:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, LOW);
digitalWrite(PIN_SG, HIGH);
break;
case 4:
digitalWrite(PIN_SA, LOW);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, LOW);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, HIGH);
break;
case 5:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, LOW);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, HIGH);
break;
case 6:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, LOW);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, HIGH);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, HIGH);
break;
case 7:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, LOW);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, LOW);
digitalWrite(PIN_SG, LOW);
break;
case 8:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, HIGH);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, HIGH);
break;
case 9:
digitalWrite(PIN_SA, HIGH);
digitalWrite(PIN_SB, HIGH);
digitalWrite(PIN_SC, HIGH);
digitalWrite(PIN_SD, HIGH);
digitalWrite(PIN_SE, LOW);
digitalWrite(PIN_SF, HIGH);
digitalWrite(PIN_SG, HIGH);
break;
}
switch (digit) {
case 1:
digitalWrite(PIN_D1, LOW);
break;
case 2:
digitalWrite(PIN_D2, LOW);
break;
case 3:
digitalWrite(PIN_D3, LOW);
break;
case 4:
digitalWrite(PIN_D4, LOW);
break;
}
delay(6);
}