source: t29-www/physical-computing/zweidim-array/zweidim-array.ino @ 1178

Last change on this file since 1178 was 1178, checked in by heribert, 7 years ago

Sketch eingefügt

File size: 1.8 KB
Line 
1
2// Hochzaehlen einer 7-Segment-Anzeige, Aufgabe 1, Blatt 4
3
4//zweidimensionales Array. Die Elemente des "aeusseren" Arrays sind selbst Arrays.
5
6int segmente[10][7] = {{1, 1, 1, 1, 1, 1, 0},  // 0    Segmente in der Reihenfolge a,b,c,d,e,f,g
7                       {0, 1, 1, 0, 0, 0, 0},  // 1
8                       {1, 1, 0, 1, 1, 0, 1},  // 2
9                       {1, 1, 1, 1, 0, 0, 1},  // 3
10                       {0, 1, 1, 0, 0, 1, 1},  // 4
11                       {1, 0, 1, 1, 0, 1, 1},  // 5
12                       {1, 0, 1, 1, 1, 1, 1},  // 6
13                       {1, 1, 1, 0, 0, 0, 0},  // 7
14                       {1, 1, 1, 1, 1, 1, 1},  // 8
15                       {1, 1, 1, 1, 0, 1, 1}}; // 9
16                       
17int pinArray[] = {2, 3, 4, 5, 6, 7, 8};                       
18
19void setup(){                                 // ueberlege selbst, was das setup hier bewirkt
20  for(int i = 0; i < 7; i++)
21    pinMode(pinArray[i], OUTPUT); 
22}
23
24void loop(){                                 
25    for(int i = 0; i < 10; i++)               // zunaechst wird die Ziffer ausgewaehlt (Index "i")
26  {
27    for(int pin = 0; pin < 7; pin++)          // dann werden aus dem inneren Array nacheinander
28    {                                         // die pinWerte ausgelesen. Dazu wurde eine neue Index-Variable "pin"
29      if(segmente[i][pin]==1)                 // eingefuehrt.  Die Elemente von Arrays beginnen immer mit "0",
30      {                                       // also steht Pin2 auf dem Nullten Platz, Pin3 auf dem ersten usw.
31        digitalWrite(pinArray[pin],LOW);      // Mit "LOW" leuchtet das entsprechende Segment (gemeinsame Anode = +5V)
32      }
33      else
34      {
35        digitalWrite(pinArray[pin], HIGH);
36      }
37    }   
38    delay(1000);                              // Pause von einer Sekunde
39  }
40}
41 
42
43
Note: See TracBrowser for help on using the repository browser.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License