Angenommen, auf RA2 ist der Kofferraumschalter angeschlossen.
d.h. RA2 hängt mit ~10k auf +5V. Solange der Kofferraum zu ist, verbindet der Schalter RA2 mit Masse (GND). --> RA2 ist also normalerweise = 0.
Geht der Kofferraum auf, Schalter offen -> RA2 = 1
Erstmal PORTB RA2 als Eingang def.
Code:
; Port B - einstellen der Richtung und Art der Pins
banksel PORTB ;Bank0
clrf PORTB ;PortB "bereinigen"
;================================================ PicNick ===========================
banksel TRISB ;Bank1
movlw B'00000100' ; Port B.2 = RA2 = Eingang Kofferaum-Sensor
movwf TRISB ;Port schreiben
;====================================================================================
In der Hauptschleife: Solange der Kofferaum RA2 = 0, ist der Kofferraum zu, also wird normal die Geschwindigkeit angezeigt.
Ist RA = 1 , d.h der Schalter bzw. der Kofferraum ist offen, wird statt der Geschwindigkeit der Text "KR.Offen!" angezeigt. (Die Geschwindigkeit ist zu dem Zeitpunkt ja wohl hoffentlich eh NULL)
Code:
;Begin der Hauptschleife
Gesch
;================================================ PicNick ===========================
btfssc PORTB, 2 ; Test Kofferraum-Bit auf = 0 = überspringen
goto KofferAuf ; KofferraumBit=1 --> Offen
;====================================================================================
call showSpeed ;Unterroutine zur Geschwindigkeitsmessung aufrufen und Geschwindigkeit ausgeben
call delay_0.2_sec ;kleine Pause für das "Auge"
goto Gesch ; Wieder von Vorne
;================================================ PicNick ===========================
KofferAuf
movlw 'K' ; "KR.Offen!"
movwf CHAR1
movlw 'R' ; "R"
movwf CHAR2
movlw '.' ; "."
movwf CHAR3
movlw 'O' ; "O"
movwf CHAR4
movlw 'f' ; "f"
movwf CHAR5
movlw 'f' ; "f"
movwf CHAR6
movlw 'e' ; "e"
movwf CHAR7
movlw 'n' ; "n"
movwf CHAR8
movlw '!' ; "!"
movwf CHAR9
movlw ' ' ; " "
movwf CHAR10
call sendTIDText ; display on TID
goto Gesch ; Wieder von Vorne
;====================================================================================
Die Anzeige "KR.Zu !" würd' ich garnicht machen, das ist ja der Normalfall.
Versuch's mal.
Da Du offenbar noch recht am Anfang stehst, würd ich Dir aber empfehlen, erstmal die Lernbeispiele auf www.sprut.de durchzuarbeiten. Es ist besser, von Grund auf lernen.
Lesezeichen