// Pinbelegung für die Segmente
const int segmentPins[] = {2, 3, 4, 5, 6, 7, 8};
// Segmentmuster für die Zahlen 0-9
const byte numbers[10] = {
0b00111111, // 0
0b00000110, // 1
0b01011011, // 2
0b01001111, // 3
0b01100110, // 4
0b01101101, // 5
0b01111101, // 6
0b00000111, // 7
0b01111111, // 8
0b01101111 // 9
};
const int buttonPin = 9;
int count = 0;
void setup() {
for (int i = 0; i < 7; i++) {
pinMode(segmentPins[i], OUTPUT);
}
pinMode(buttonPin, INPUT_PULLUP);
showNumber(count);
}
void loop() {
if (digitalRead(buttonPin) == LOW) {
count = (count + 1) % 10;
showNumber(count);
delay(200);
}
}
void showNumber(int num) {
for (int i = 0; i < 7; i++) {
// Setze die Segmente basierend auf dem Muster
digitalWrite(segmentPins[i], (numbers[num] & (1 << i)) ? HIGH : LOW);
}
}Loading
esp32-c3-devkitm-1
esp32-c3-devkitm-1