Guten Tag,
Wir verwenden in unserer Berufsschule die Lucas Nülle - Controllerboards. Diese sind mit einem PIC16F84A bestückt.
Jetzt haben wir in den Controller ein Programm geladen, welches nach Auslösen eines Interruptes (Fallende Flanke), Töne ausgeben soll. Dabei kommt es aber zu einem Problem:
Das Schalter-Board besitzt 4 Schalter, die mit PullUp-Widerständen versehen sind. Wird jetzt der Schalter betätigt, wird kein Interrupt ausgelöst. Wird die Leerlaufspannung gemessen(keine Verbindung zum Controller), sind 5V(nicht betätigt) und 0V(betätigt) messbar. Wird das Schalter-Board angeschlossen, so bricht die Spannung auf ca. 1V zusammen(nicht betätigt). Wird jetzt an den Interrupt-Pin 5V direkt angesteuert, so wird der Interrupt ausgelöst (Fallende Flanke ist aber eingestellt). Es scheint wohl ein Fehler im Controller vorzuliegen, denn andere Gruppen haben das gleiche Problem (jeder hat ein eigenes Programm geschrieben), oder die Last ist zu groß (es ist nur ein Lautsprecher angeschlossen)
Kennt Ihr noch mögliche Fehlerquellen
Anbei die Port/Interrupt-Initialisierung:
;PortB wird zugewiesen, B0 = Interrupt query
BANKSEL TRISB
movlw b'00000001'
movwf TRISB
BANKSEL PORTB
movlw b'00000000'
movwf PORTB
;PortA wird zugewiesen
BANKSEL TRISA
movlw b'00000'
movwf TRISA
BANKSEL PORTA
movlw b'00000'
movwf PORTA
;Interrupt-Bedingungen werden eingestellt
BANKSEL OPTION_REG
movlw b'00000000'
movwf OPTION_REG
;Interrupt-Auslöser wird eingestellt
BANKSEL INTCON
movlw b'10010000'
movwf INTCON |