Forum: Mikrocontroller und Digitale Elektronik I/O lässt sich nicht lesen


von Georg (Gast)


Lesenswert?

Hallo zusammen,

ich verzweifle gerade beim lesen eines I/O Pins auf einem PIC16F865.
http://ww1.microchip.com/downloads/en/DeviceDoc/41262A.pdf
Es geht um RC7. Das komische ist, dass genau das gleiche Vorgehen auf 
RB6 funktioniert. Im Datenblatt konnte ich keinen Hinweis finden. Muss 
ich für den Zugriff auf diesen Pin vielleicht irgendetwas bestimmtes 
tun? Das Signal kommt definitiv am Pin an, aber ich lese immer 0.

Alles, was ich mache, seht ihr unten. Das ANSELC Register beschreibe ich 
nicht. Der Compiler ist der XC8. Ich bin gespannt, ob jemand eine Idee 
hat, was hier schief läuft.
1
TRISC =  0b10111011;
2
if(RC7==0)
3
{
4
    LED=0; //Ich lande immer hier
5
}
6
else
7
{
8
    LED=1;
9
}

von Max H. (hartl192)


Lesenswert?

Georg schrieb:
> Das ANSELC Register beschreibe ich nicht.
Damit hast du den Fehler auch schon gefunden.

Zitat Datenbaltt Seite 66:
>> Note:
>> The ANSEL (11Eh) and ANSELH (11Fh)
>> registers must be initialized to configure
>> an analog channel as a digital input. Pins
>> configured as analog inputs will read ‘0’.

Jetzt musst du ihn nur noch beheben...

von Noch einer (Gast)


Lesenswert?

>Damit hast du den Fehler auch schon gefunden.

Der wird dich auf ewig verfolgen. Bei jedem Pic belegt ein anderes Modul 
deinen Pin.

von Max H. (hartl192)


Lesenswert?

Noch einer schrieb:
> Damit hast du den Fehler auch schon gefunden.
>
> Der wird dich auf ewig verfolgen. Bei jedem Pic belegt ein anderes Modul
> deinen Pin.
Zum Glück veröffentlicht Microchip zu jedem PIC ein Datenblatt und das 
kann man nicht nur verlinken sondern, auchtung jetzt kommt's, auch 
lesen.

von Georg (Gast)


Lesenswert?

Das hätte mir natürlich auffallen müssen. Genau das Kapitel habe ich 
gelesen. Da war es wohl schon etwas spät... Jetzt funktioniert es! :)
Vielen Dank!

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.