Forum: Mikrocontroller und Digitale Elektronik GPIO am LPC2378


von Herbert (Gast)


Lesenswert?

Hallo,

ich werde nicht ganz schlau aus der Beschreibung im Datenblatt.
Wann muss ich IODIR0 und wann FIO0DIR benutzen?
Muss das noch irgendwo konfiguriert werden?
(IODIR0 etc. sind in der LPC23XX.h definiert)

Was mich weiter verwundert ist folgender Code einer Touchauswertung, die 
so auch funktioniert. Jedoch liegt beispielsweise PINY1 an P0.25, es 
wird aber im define nur 24 mal geshiftet.

    #define PINY1 (1UL<<24) // P0.25
    #define PINY2 (1UL<<24) // P0.28
    #define PINX1 (1UL<<25) // P0.24
    #define PINX2 (1UL<<31) // P0.27

    #define DIRY1 IODIR0
    #define DIRY2 FIO3DIR
    #define DIRX1 IODIR0
    #define DIRX2 IODIR1

    #define SETY1 IOSET0
    #define SETY2 FIO3SET
    #define SETX1 IOSET0
    #define SETX2 IOSET1

Bei anderen IOs im Code steht zum Bleistift folgendes:
    #define SED1335_uSel_PIN    (u32)(1UL<<28) // P4.28
    #define SED1335_uSel_DIR    FIO4DIR
    #define SED1335_uSel_CLR    FIO4CLR
    #define SED1335_uSel_SET    FIO4SET

Nun hat sich die Belegung geändert:
PINY1 bleibt auf P0.25
PINY2 nun auf    P1.31
PINX1 bleibt auf P0.24
PINX2 nun auf    P3.24

Ich habe folgendes ohne Erfolg probiert:
    #define PINY1 (1UL<<25)
    #define PINY2 (1UL<<31)
    #define PINX1 (1UL<<24)
    #define PINX2 (1UL<<24)

    #define DIRY1 IODIR0
    #define DIRY2 IODIR1
    #define DIRX1 IODIR0
    #define DIRX2 FIO3DIR

    #define SETY1 IOSET0
    #define SETY2 IOSET1
    #define SETX1 IOSET0
    #define SETX2 FIO3SET

Kann mir jemand auf die Sprünge helfen?
Danke.

Gruß
Herbert

von Herbert (Gast)


Lesenswert?

Ich habe gerade noch folgendes gefunden:
    #define SELECTY1IO PINSEL1&=~((1UL<<16)|(1UL<<17))
    #define SELECTX1IO PINSEL1&=~((1UL<<18)|(1UL<<19))
    #define SELECTY1AD PINSEL1|= (1UL<<16)
    #define SELECTX1AD PINSEL1|= (1UL<<18)

    #define SELECTY2IO PINSEL7&=~((1UL<<16)|(1UL<<17))
    #define SELECTX2IO PINSEL3&=~((1UL<<30)|(1UL<<31))

Das muss wohl auch angepasst werden und enthält vermutlich die gesuchten 
Pinkonfigurationen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.