Eingänge in verschiedene Ports mit for-schleife abfragen

Gast #4634500
Lesenswert?
• ▲
▼
Hallo, ich habe mehrere Eingänge, die ich gerne in einer For-Schleife 
abfragen möchte. Leider war es nicht möglich, die alle auf einem Port zu 
legen.
Ist es trotzdem irgendwie möglich die Eingänge in einer For-Schleife 
abzufragen?
Die Eingänge sind bei einem Atmega328p bei
PC0-PC3 sowie PD4-PD6
Bis jetzt habe ich einfach alles untereinander geschrieben, was auch 
funktioniert. Da aber immer das selbe passiert (nur mit anderen 
PArametern, die ich mir dann aus einer Liste holen kann) wollte ich das 
kürzen.

Frank
Gast #4637611
Lesenswert?
• ▲
▼
Christopher B. schrieb:
> Brauch ich nicht, aber du solltest den Code nochmal genau lesen.
> Besonderes Augenmerk auf den Schleifenkopf.

Oo Style Diskussion incoming :)

Ich persönlich würde ja nichts in den Schleifenkopf stecken, was nicht 
unbedingt nötig ist. Das verringert die Lesbarkeit enorm( wie man 
sieht).
#4639893
Lesenswert?
• ▲
▼
nicht"Gast" schrieb:
> Ich persönlich würde ja nichts in den Schleifenkopf stecken, was nicht
> unbedingt nötig ist. Das verringert die Lesbarkeit enorm( wie man
> sieht).

Unbedingt nötig ist im Schleifenkopf gar nichts. Man könnte die Schleife 
ja auch so schreiben:
1
uint8_t i = 0;
2
for (;;)
3
{
4
    if (i < 8)
5
    {
6
        // Bit Nummer i auswerten
7
        bool bit = val & 1;
8

9
        i++;
10
        val >>= 1;
11
    }
12
    else
13
    {
14
        break;
15
    }
16
}

Ich hab es im Prinzip so geschrieben, weil val für mich quasi die 
Variable ist, über die iteriert wird. Nur hat mir ein Abbruchkriterium 
gefehlt, deshalb habe ich i noch dazu geschrieben.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren