Forum: Mikrocontroller und Digitale Elektronik PIC 18F46K20: Problem mit PORT E


von Alexander U. (alexander_u)


Lesenswert?

Hallo Leute,

Ich habe hier einen PIC 18F46K20 an welchen vier Taster via Pull-ups 
angeschlossen sind. Drei Taster an Port A und einen Taster an Port E 
(E0). Die Taster an Port A funktionieren ohne Probleme. Ich kann sie 
normal abfragen (mit input(pin_a4) zb.).

Der Taster an E0 gibt aber mit diesem Befehl immer low zurück.
Was aber funktioniert ist die AD-Wandlung an E0! Das heisst Taster 
gedrückt --> 0, Taster nicht gedrückt --> 255.
Einen Hardwarefehler kann ich also ausschliessen.

Muss ich den PORT E speziell initialisieren damit das funktioniert?

Ich programmiere mit MPLAB v8.89 + CCS 4.08


mfg,

von Chris B. (dekatz)


Lesenswert?

Ja! Die initialiserung ob Analog oder Digital geschieht über die ANSEL 
und ANSELH Register (welche genau bei deinem Controller dafür zuständig 
sind steht im Datenblatt - habe keines für den 46K20, ist aber bei fast 
allen Pic18 mehr oder weniger ähnlich).

von Alexander U. (alexander_u)


Lesenswert?

Hallo Chris,

Ich glaube ANSEL war das richtige Stichwort. Hab jetzt nochmal das 
Datenblatt durchgeforstet.

Auszug aus Datenblatt:
Note: On a Power-on Reset, RE<2:0> are
configured as analog inputs.

Wenn ich das ANSEL Register explizit auf null setze funktionierts so wie 
es soll!


DANKE!

mfg,

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.