Gast
#2705399
Hallo Leute, ich habe eine Interrupt On Change Funktion eingebaut und die funktioniert mit einem Taster. Sobald ich den Taster betätige, wird am Pin 3 eine positive Flanke erzeugt und mein Interrupt wird ausgelöst (kontrolliere mit einer Variable). Das funktioniert auch einwandfrei. Doch sobald ich in meinem Programm mein PWM Modul wieder einschalte, wird immer ein Interrupt ausgelöst, obwohl ich den Taster nicht betätige. Ich habe bis auf den Hauptinterruptschalter und den Interrupt On Change Schalter alle Interrupts ausgeschaltet (Peripherie etc.). Ich hab den Fehler eingegrenzt und es liegt am CCPR1L Register, sobald der Wert in diesem Register größer gleich 65 beträgt, wird mein Interrupt ausgelöst. Doch ich verstehe wirklich kein bisschen wieso bei einem Wert von ab 65??? mein Interrupt ausgelöst wird. Ich habe im Datenblatt gelesen, dass im Capture Mode durch Flanken Interrupts ausgelöst werden, aber ich habe ja PWM Mode gewählt und auch alle entsprechenden Interrupt enable bits ausgeschaltet. Ich benutze den PIC12F1822 und dieser µC hat nur eine Interrupt Funktion und dieser frage ich zusätzlich mit if ab, ob IOCIF == 1 ist. Ich hoffe, dass ihr mir helfen könnts. Mit freundlichen Grüßen Paarthurnax