arduino:seven-segment
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
arduino:seven-segment [2014/11/19 19:34] – angelegt ros | arduino:seven-segment [2014/12/03 07:48] (aktuell) – gelöscht ros | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== 7-Segmentanzeige: | ||
- | [[arduino: | ||
- | |||
- | Dieses Programm zählt auf einer 7-Segmentanzeige, | ||
- | <code c++> | ||
- | #define DELAY 1000 | ||
- | |||
- | // Aussehen der Ziffern | ||
- | const byte SEGMENT[10][7] = { | ||
- | // a | ||
- | /* 0 */ { HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW }, | ||
- | /* 1 */ { LOW, HIGH, HIGH, LOW, LOW, LOW, LOW }, | ||
- | /* 2 */ { HIGH, HIGH, LOW, HIGH, HIGH, LOW, HIGH }, | ||
- | /* 3 */ { HIGH, HIGH, HIGH, HIGH, LOW, LOW, HIGH }, | ||
- | /* 4 */ { LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH }, | ||
- | /* 5 */ { HIGH, LOW, HIGH, HIGH, LOW, HIGH, HIGH }, | ||
- | /* 6 */ { HIGH, LOW, HIGH, HIGH, HIGH, HIGH, HIGH }, | ||
- | /* 7 */ { HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW }, | ||
- | /* 8 */ { HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH }, | ||
- | /* 9 */ { HIGH, HIGH, HIGH, HIGH, LOW, HIGH, HIGH } | ||
- | }; | ||
- | |||
- | // Pinbelegung | ||
- | const byte SEGMENT_PIN[] = { 3, 4, 5, 6, 7, 8, 9 }; | ||
- | const byte SEGMENT_PIN_COUNT = sizeof(SEGMENT_PIN) / sizeof(byte); | ||
- | |||
- | int digit; | ||
- | |||
- | void setup() { | ||
- | for (int i = 0; i < SEGMENT_PIN_COUNT; | ||
- | pinMode(SEGMENT_PIN[i], | ||
- | } | ||
- | |||
- | digit = 0; | ||
- | } | ||
- | |||
- | void showDigit(int digit) { | ||
- | for (int i = 0; i < SEGMENT_PIN_COUNT; | ||
- | digitalWrite(SEGMENT_PIN[i], | ||
- | } | ||
- | } | ||
- | |||
- | void loop() { | ||
- | showDigit(digit); | ||
- | delay(DELAY); | ||
- | ++digit; | ||
- | if (digit > 9) { | ||
- | digit = 0; | ||
- | } | ||
- | } | ||
- | </ |
arduino/seven-segment.1416422081.txt.gz · Zuletzt geändert: 2020/10/13 14:25 (Externe Bearbeitung)