Gast
#6984555
Hallo,
ich habe eine Schaltung entworfen, welche einen Komparator besitzt (s.
Bild "Schaltung"). Der Komparator wandelt mir eigentlich nur ein
Sinussignal mit 5 kHz in ein Rechtecksignal mit passender Spannung um.
Von diesem Ausgangssignal ("s. Bild "Ausgang Komparator") würde ich nun
gerne die Frequenz bestimmen. Dazu gebe ich das Ausgangssignal auf einen
externen Interrupt Pin meines PIC's (PIC24FJ48GA002). Hierbei verwende
ich den Pin 16 (RB7, INT0)(s. Bild PIC).
Die Konfiguration des Interrupts könnt ihr im Bild "INT0_Setup" sehen,
die dazugehörige ISR im Bild "ISR".
Die Zeit zwischen zwei Interrupts will ich über den Timer2 messen.
Das heißt, ich bilde die Differenz der Timer2 Werte von zwei Interrupts.
Hier tritt nun das Problem auf, dass die Differenz immer völlig
unterschiedliche Werte aufweist. Die Werte wiederholen sich auch nicht,
es sind immer andere.
Um einen Fehler meiner "Berechnung" auszuschließen, habe ich die
Berechnung mal in meinem Timer1 Interruput eingesetzt, welcher alle 1 ms
passiert. Hier bekomme ich dann immer dieselben Werte, welche ich auch
auf 1 ms wieder umrechnen kann.
Es hat also den anschein, dass mit meinem externen Interrupt irgendwas
nicht stimmt. Hat jemand eine Idee, warum dieser auf mein Rechtecksignal
nicht richtig reagiert? Fehler in der Beschaltung? Konfiguration falsch?
Hier noch das Datenblatt des PIC'S.
https://eu.mouser.com/datasheet/2/268/39881e-277964.pdf
Grüße




