Forum: Mikrocontroller und Digitale Elektronik PIC18F4553 & Input PORTB Analog/Digital setzen wo?


von No Y. (noy)


Lesenswert?

Hi,

also folgendes Problem ich bin mit einem PIC18F4553 am spielen und habe 
mir das Debug-Express Board mit dem genannten PIC nachgebaut.
An PORTB PIN 0 ist ein Switch angeschlossen mit externem PULLUP hab 
daher die internen abgeschaltet und den PORTB als INPUT gesetzt. 
Zusätzlich habe ich in der Config PBADEN=off gesetzt damit der PORTB 
beim reset als Digitale eingänge gesetzt werden.

Mein Frage ist nun wenn ich mir die Lessons anschau wird in einem ANSEL 
Register oder so der PORTB als Digital gesetzt. Dieses Register gibt es 
nur bei meinem PIC nicht und ich finde auch nichts in den ganzen 
Handbüchern, womit ich das bei meinem PIC setzten kann. Habe nur eine 
"Warnung" gefunden:

2:Analog levels on any pin defined as a digital
input may cause the digital input buffer
to consume current out of the device’s
specification limits.

3: The PBADEN bit in Configuration
Register 3H configures PORTB pins to
reset as analog or digital pins by controlling
how the PCFG3:PCFG0 bits in
ADCON1 are reset.


Kann mir jemand sagen wo ich den PORTB zwischen Analog und Digital 
wechseln kann oder wird das nur über PBADEN eingestellt?

von Dieter W. (dds5)


Lesenswert?

Felix Siebel schrieb:
> Kann mir jemand sagen wo ich den PORTB zwischen Analog und Digital
> wechseln kann oder wird das nur über PBADEN eingestellt?

Steht doch (etwas verklausuliert) unter Punkt 3.

Die Konfiguration Analog oder Port erfolgt durch die Bits PCFG3 bis 
PCFG0 im ADCON1 Register.
Leider hat man da nicht die freie Auswahl, sondern ist auf ein paar 
vorgegebenen Möglichkeiten festgelegt (gibts im DB eine Tabelle für).

Das PBADEN Config-Bit legt nur fest, wie die genannten 4 Bit nach einem 
Reset stehen, danach kann man die beliebig ändern.

Zitat:
The POR value of the PCFG bits depends on the value of the PBADEN 
configuration bit. When PBADEN = 1, PCFG<3:0> = 0000; when PBADEN = 0,
PCFG<3:0> = 0111.

von No Y. (noy)


Lesenswert?

Vielen Dank, hat funktioniert :)

CLOSED

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.