Gast
#809408
Hallo Leute, ich arbeite mit dem PICDEM 2 Plus Demoboard von Microchip und dem PIC18F4550. Ich bin Neuling und möchte ein einfaches Programm schreiben, welches durch die 4 OnBoard LEDs anzeigt welche Zahl an einem BCD-Drehschalter (0-9) eingestellt wurde. Dürfte eigentlich nicht so schwer sein hab ich mir gedacht. Allerdings stimmen die LED Zustände überhaupt nicht mit der eingestellten Zahl überein und ändern sich meist auch gar nicht mehr wenn weiter geschaltet wird. Woran liegt das, was mach ich falsch? Irgendwelche Ideen? Bin dankbar für Hilfe. Gruß Mäx void main (void) { // Alle Pins sind digital ADCON1|=0x0F; // RA1..RA3 und RA5 sind Eingänge TRISAbits.TRISA1=1; TRISAbits.TRISA2=1; TRISAbits.TRISA3=1; TRISAbits.TRISA5=1; // Port B (LEDs) sind Ausgänge TRISB=0x0; PORTB=0x0; while(1) { // Ist die Stelle Acht aktiv leuchtet die LED D5 if(PORTAbits.RA5) { PORTBbits.RB3=1; } else { PORTBbits.RB3=0; } // Ist die Stelle Vier aktiv leuchtet die LED D4 if(PORTAbits.RA3) { PORTBbits.RB2=1; } else { PORTBbits.RB2=0; } // Ist die Stelle Zwei aktiv leuchtet die LED D3 if(PORTAbits.RA2) { PORTBbits.RB1=1; } else { PORTBbits.RB1=0; } // Ist die Stelle Eins aktiv leuchtet die LED D2 if(PORTAbits.RA1) { PORTBbits.RB0=1; } else { PORTBbits.RB0=0; } } // Ende while } // Ende main