Gast
#3097164
Hallo zusammen, ich versuche gerade auf Keil mcb1700, einige Übungen mit GPIO hinzubekommen. z.B wenn ich den Joystick betätige soll eine bestimmte LED leuchten. Dabei habe ich auf eine Internetseite folgende Codefragmente gefunden: "For example, the five button joystick is connected to pins P1.20, P1.23, P1.24, P1.25 and P1.26. LPC_PINCON->PINSEL3 &= ~((3<< 8)|(3<<14)|(3<<16)|(3<<18)|(3<<20)); /* P1.20, P1.23..26 is GPIO (Joystick) */" Aber ich kann das absolut nicht nachvollziehen. Warum shiftet er ausgerechnet die 3 ? was hat die 3 hier zu bedeuten? und hier: For example, to read the joystick position, the following code can be used #define KBD_MASK 0x79 uint32_t kbd_val; kbd_val = (LPC_GPIO1->FIOPIN >> 20) & KBD_MASK; Was passiert hier genau? warum shift um 20? warum nach rechts? und was sagt mir die 0x79??... Hab die Doku von LPC1768 auch angeschaut. Leider ohne Erfolg. kann mir da einer vielleicht auf die Sprünge helfen? hier ist nochmal der komplette Link. https://ece.uwaterloo.ca/~yqhuang/labs/ece254/doc/MCB1700_Hardware.pdf