Hallo,
ich wollte zum o.g. Controller die driverlib ein wenig erweitern.
Bei den GPIOs wäre es mir hilfreich, gerade im Hinblick auf diverse
Bitoperationen, eine Funktion zu haben, welche mir die Werte eines
ganzen GPIO Ports ausgibt und nicht nur die Werte einzelner Pins.
Deshalb habe ich es mal so versucht:
1 | long
|
2 | GPIOPortRead(unsigned long ulPort)
|
3 | {
|
4 | //
|
5 | // Check the arguments.
|
6 | //
|
7 | ASSERT(GPIOBaseValid(ulPort));
|
8 |
|
9 | //
|
10 | // Return the port value(s).
|
11 | //
|
12 | return(HWREG(ulPort + (GPIO_O_DATA ))<<2);
|
13 | }
|
Setze ich für
z.B. die Adresse für den Port F (0x40025000 // GPIO Port F) ein, so
liefert die Funktion immer 0, obwohl ich alles korrekt konfiguriert
habe.
Hat jemand eine Ahnung woran das liegen könnte?