Hallo!
Ich habe folgende Frage:
In einem Hauptarray
1 | const unsigned int tabelle[10]=
|
2 | {
|
3 | 1,2,3,4,5,6,7,8,9,10
|
4 | }
|
habe ich 10 Werte. Über 6 Taster werden die Tastendrücke (rauf oder
runter) gezählt und pro Tastendruck soll der Taste a, b oder c der
entsprechende Wert im Hauptarray zugewiesen und am jeweiligen Port
ausgegeben werden.
Ich möchte aber nur ein einziges Hauptarray verwenden. Wie kann ich das
am Besten lösen?
1 | while (1)
|
2 | {
|
3 | if (!(PINC & (1<<PINC7)) && i<=9) // if Button on PC7 = low
|
4 | {
|
5 | PORTA = tabelle[i]; // aufwärts zählen
|
6 | _delay_ms(10);
|
7 | i++;
|
8 | }
|
9 | if(!(PINC & (1<<PINC6)) && i>=0) // if Button on PC6 = low
|
10 | {
|
11 | PORTA= tabelle[i]; // abwärts zählen
|
12 | _delay_ms(10);
|
13 | i--;
|
14 | }
|
15 |
|
16 | if (!(PINC & (1<<PINC5)) && i<=9) // if Button on PC5 = low
|
17 | {
|
18 | PORTB = tabelle[i]; // aufwärts zählen
|
19 | _delay_ms(10);
|
20 | i++;
|
21 | }
|
22 | if(!(PINC & (1<<PINC4)) && i>=0) // if Button on PC4 = low
|
23 | {
|
24 | PORTB= tabelle[i]; // abwärts zählen
|
25 | _delay_ms(10);
|
26 | i--;
|
27 | }
|
28 |
|
29 | if (!(PINC & (1<<PINC3)) && i<=9) // if Button on PC3 = low
|
30 | {
|
31 | PORTD = tabelle[i]; // aufwärts zählen
|
32 | _delay_ms(10);
|
33 | i++;
|
34 | }
|
35 | if(!(PINC & (1<<PINC2)) && i>=0) // if Button on PC2 = low
|
36 | {
|
37 | PORTD= tabelle[i]; // abwärts zählen
|
38 | _delay_ms(10);
|
39 | i--;
|
40 | }
|
41 | }
|