Forum: Mikrocontroller und Digitale Elektronik Pic18f1320 Eisenbahn


von Tobias Eggensberger (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe vor eine Eisenbahn (2 Kreise auf denen jeweil 2 Züge 
abwechselnd fahren) mit Pics zu steuern. Es ist jeweils 1 Pic18f1320 für 
jeden Kreis zuständig.
Jeder Pic hat Ausgänge für Weichen- und Fahrstrom- Steuerung (alle an 
Port A) und Eingänge für diverse Gleiskontakte und Schalter (alle an 
Port B)

Zum Problem:Auf dem Port B habe ich Pull-Ups eingeschaltet.
Wenn ich versuche den Port PB5 einzubinden liegt dieser aber nicht auf 
+5V...
Was muss ich im Programm noch ändern?
evtl. soll später eine Serielle Schnittstelle eingebaut werden... wie 
könnte ich die einstellen?


Hier die Initialisierung der Ports:
1
PORTB=0b00000000;             //clear portb
2
ADCON1 = 0b01111111;          //digital IO
3
TRISB=0b11111111;             //Eingänge
4
INTCON2bits.RBPU = 0;         //PullUp
5
6
7
TRISA = 0b00000000;           //Ausgänge
8
LATA = 0b00000000;            //clear porta

Danke schon im Voraus,
Tobias

von Dieter W. (dds5)


Lesenswert?

Dieses Verhalten liegt vermutlich an der config "LVP on", da hierfür der 
PB5 als Steuereingang benötigt wird und nicht mehr als Port verfügbar 
ist.

von Lehrmann M. (ubimbo)


Lesenswert?

Servus,

das ganze kann 1000 Gründe haben. Zuerst sollte man differenzieren, ob 
es ein Hardware- oder Softwareproblem ist.

Dazu braucht man:

+ Schaltplan (komplett)
+ Layout (wie es auf der Platine aussieht)
+ Kompletten Sourcecode

...

Es kann an allem liegen ... vielleicht bricht die Spannung zusammen oder 
oder ...

von GGast (Gast)


Lesenswert?

bit 7 RBPU: PORTB Pull-up Enable bit
1 =  All PORTB pull-ups are disabled
0 =  PORTB pull-ups are enabled by individual port latch values

gibts da nicht noch ein Pull-up register für jeden einzelnen Port???

Gruß

von GGast (Gast)


Lesenswert?

Port-Pin natürlich ....

von Tobais Eggensberger (Gast)


Lesenswert?

Hallo,
Danke für die Antworten!
Es lag im Endeffekt am LVP-on.

Tobias

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.