Ich bin dankbar für jede Hilfe. Ich habe ein einfaches Programm fürn
16F887 geschrieben aber PORTA und PORTB lassen sich nicht beschalten.
Egal wo ich ein High-Pegel anlege es funktioniert nicht selbst im
Simulationsmodus von MPLap.
start:
BANKSEL ANSELH
CLRF ANSELH
BANKSEL ANSEL
CLRF ANSEL
BANKSEL PORTA
clrf PORTA
BANKSEL PORTB
clrf PORTB
BANKSEL PORTC
clrf PORTC
bsf STATUS,RP0
movlw b'01110000'
movwf OSCCON
movlw B'11111111'
movwf TRISA
movlw B'11111111'
movwf TRISB
movlw B'00000000'
movwf TRISC
clrf PORTA
clrf PORTB
clrf PORTC
bcf STATUS,RP0
main: btfsc PORTA,0
goto ziffer_0
btfsc PORTA,1
goto ziffer_1
btfsc PORTA,2
goto ziffer_2
btfsc PORTA,3
goto ziffer_3
btfsc PORTA,4
goto ziffer_4
btfsc PORTA,5
goto ziffer_5
btfsc PORTA,6
goto ziffer_6
btfsc PORTA,7
goto ziffer_7
btfsc PORTB,0
goto ziffer_8
btfsc PORTB,1
goto ziffer_9
goto main
;
------------------------------------------------------------------------
ziffer_0: movlw b'00011111'
movwf PORTC
call delay
clrf PORTC
movlw b'00101001'
movwf PORTC
call delay
clrf PORTC
movlw b'01001001'
movwf PORTC
call delay
clrf PORTC
movlw b'10001111'
movwf PORTC
call delay
clrf PORTC
btfsc PORTB,7
goto main
goto ziffer_0
Fehlt vielleicht irgentwo BANKSEL ?
1 | movlw B'11111111' |
2 | movwf TRISA |
3 | movlw B'11111111' |
4 | movwf TRISB |
5 | movlw B'00000000' |
6 | movwf TRISC |
7 | |
8 | clrf PORTA |
9 | clrf PORTB |
10 | clrf PORTC |
Hallo Christian, Du hast es weniger schwer, wenn Du Dich an die Initialisierungsroutinen hältst welche im Datenblatt vorgegeben sind. Schau mal dort: "EXAMPLE 4-1: INITIALIZING PORTA" Register OSCCON ist beim 16F877 nicht vorhanden! Du solltes auch einfachen Code kommentieren! mfG Ottmar
Ottmar K. schrieb: > Register OSCCON ist beim 16F877 nicht vorhanden! > > mfG Ottmar Kann ja sein. Hier geht es aber um einen 16F887 ;)
sorry.. typischer Fall von Betriebsblindheit :-) mfG Ottmar
Vielen Dank Jungs für die Hilfen und Anregungen (bin halt ein noob) aber ich hab dann doch das Problem gelöst. Es fehlt lediglich die Zeile. bcf STATUS,RP0 ; Registerbank 0 Ich finde es super wie schnell man mir hier helfen wollte. Klasse macht weiter so. Es gibt viele "Noch"-noobs da draußen die das ändern wolln. Danke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.