Hallo
ich hab da nen Problem bei einem Programm,
wäre super wenn mir dabei jemand helfen könnte.
Ich verwende den MPLAP C18 kompiler und den PIC18F26K20
Bei PORTB sollen die unteren 4 bit Eingänge sein und die oberen
Ausgänge, welche auf High geschalten werden.
Das Problem liegt daran dass ich die unternen 4bits (Input) abfragen
möchte ob irgentwo High anliegt aber die Prüfung mit der if Anweisung
funktioniert nicht da der µC sie als immer erfüllt sieht trotz dass an
allen Eingängen Low ist.
Die Eingänge sind mit Pulldown Widerständen auf Masse geschlten.
Die Platine, µC funktioniernen und die Oberen 4 bits gehen auch auf High
nur
das Programm Lautet
1 | void PORT_Init(void);
|
2 |
|
3 | void main (void)
|
4 | {
|
5 | PORT_Init();
|
6 |
|
7 | while (1)
|
8 | {
|
9 | if(PORTB!=0xf0)
|
10 | {
|
11 | LATA=0x1;
|
12 | }
|
13 | Delay1KTCYx(50);
|
14 | }
|
15 |
|
16 | while(1);
|
17 | }
|
18 |
|
19 |
|
20 | void PORT_Init(void)
|
21 | {
|
22 | LATA=0x00;
|
23 | TRISA=0x00;
|
24 | LATA=0x00;
|
25 |
|
26 | LATB=0x00;
|
27 | TRISB=0x0f;
|
28 | LATB=0xf0;
|
29 | }
|
Hätte jemand nen Vorschlag wie ich das prüfen bzw. abfragen soll,
danke für jede Hilfe
mgf
alex