Forum: Mikrocontroller und Digitale Elektronik Frage zu Lüfter Tachosignal mit Pin Change Interrupt Abfrage.


von AVRli (Gast)


Lesenswert?

Hallo zusammen,

ich habe derzeit einen PC Lüfter mit Tachosignal an einem ATmega 644 und 
ermittle über den Pin Change Interrupt die Drehzahl.

Ich denke das ich mit meinem Ergebnis soweit im grünen Bereich liege.
Angegeben ist der Lüfter mit einer Drehzahl von 500-1800, die Auswertung 
kommt auf 630-1920 Umdrehungen.

Nun möchte ich die Drehzahl von einem zweiten Lüfter oder gar irgendwann 
noch mehr abfragen. Kann man da bedenkenlos nun auf den PCINT 
zurückgreifen?

Dieser ist ja mehrfach belegt, das Tachosignal löst ihn ja immer aus, 
wenn es nach L gezogen wird. Der Zähler wird im Interrupt um 1 erhöht, 
wenn der Pegel an dem PIN L ist.

Kommt es nun zu Fehlern bei dieser Abfrage, wenn 2 PIN's den Interrupt 
auslösen???

Vielen Dank für Eure Antworten, AVRli...

von Gerd E. (robberknight)


Lesenswert?

Wenn Du Deinen Atmega mit normalen Quarzen betreibst, bewegen sich für 
den die Lüfter in Zeitlupe:

1920 Umdrehungen pro Minute = 32 pro Sekunde = 64 Pulse pro Sekunde.

Bei z.B. 16 MHz hat Dein Atmega jetzt 250000 Zyklen Zeit das abzufragen 
und zu verarbeiten. Das reicht also mehr als dicke.

Wenn Du mehrere Lüfter am selben Pinchange-Interrupt hast, musst Du halt 
immer den Port auslesen und schauen welcher sich jetzt verändert hat.

Theoretisch kannst Du dabei dann einen Pinchange verpassen. Du solltest 
aber eh einen Durchschnitt bilden, da die Lüftergeschwindigkeit vor 
allem im unteren Drehzahlbereich immer etwas schwankt. Und dabei kannst 
Du dann gleich z.B. zu weit außerhalb liegende Werte ignorieren.

von AVRli (Gast)


Lesenswert?

Danke Dir für Deine Antwort,

ich habe mir das auch nochmal aufgezeichnet was passiert, wenn man 2 
Lüfter mit unterschiedlicher Drehzahl im gleichen Pin Change Interrupt 
abfragt.

Ein reines Abfragen des Pegelzustandes führt in der Tat zu falschen 
Zählerständen. Man darf nur zählen wenn aktuell eine Pegeländerung am 
PIN vorliegt. Dann sollte es funktionieren.

Werde mir mal 2 Lüfter besorgen um das zu testen.

Habe derzeit nur einen dran.

Grüße AVRli...

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
Noch kein Account? Hier anmelden.