Merkwürdiger Code in MSP430-LEDS Beispiel

Gast #217465
Lesenswert?

Hallo,

ich beziehe mich auf das "leds"-Beispiel im examples-Ordner des
MSPGCC-Compilers. Dort steht:


int main(void) {
    int i;
    int o = 0;

    WDTCTL = WDTCTL_INIT;               //Init watchdog timer

    P3OUT  = P1OUT_INIT;                //Init output data of port1

    P3SEL  = P1SEL_INIT;                //Select port or module
-function on port1

    P3DIR  = P1DIR_INIT;                //Init port direction register
of port1


    while (1) {                         //main loop, never ends...
        for (i=0; i<8; i++, o++) {
            P3OUT = (1<<i) | (0x80>>(o&7));
            delay(0x4fff);
        }
    }
}
----

Im Ausdruck "P3OUT = (1<<i) | (0x80>>(o&7));" ist das (o&7) doch
vollkommen überflüssig, oder? Weil o und o&7 doch vollkommen gleich
sind, solange o < 8...
Verstehe ich nicht, wer kann helfen?

Danke und Gruß
Stephan

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