Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Drehzahlerfassung Kategorie: C-Control I V1.1 (von Henrik, Homepage - 10.04.2005 19:58)
 Als Antwort auf Re: Drehzahlerfassung von Peter - 10.04.2005 18:58
Hallo,

>  Könnten die Digitalports schnell genug zählen oder kann man an den Frequenzports auch
>  Impulse zählen ?

Bis zu 100 Hz (und darüber hinaus) ist das mit der V2.x überhaupt kein Problem.
Nutze den Timer und eine Konstante oder auch Variable für die Torzeit und ändere meine
untenstehende Routine um sie Deinen Bedürfnissen anzupassen (Basic++)

In  der Variable Hertz steht nach Aufruf der Routine und Ablauf der Torzeit die Anzahl der
aufgelaufenen Impulse. Umrechnen dann nach Bedarf.

function PULSCOUNTER_SUB()
timer = 0
hertz = 0

#WARTEN                                   'warten auf pos. Flanke

if keyboard = 0 then goto end_pc_sub
if timer >= tor then  goto end_pc_sub     'fertig oder Timeout?
if impuls = off then goto WARTEN

hertz = hertz + 1
if timer > (tor -1) then goto end_pc_sub  'Messung abgeschlossen?


#WARTEN1                                  'warten auf neg. Flanke
if timer > tor then goto end_pc_sub       'fertig oder Timeout?
if impuls = on then goto WARTEN1

goto WARTEN

#end_pc_sub

end function


Natürlich führt der µC in der Torzeit nix anderes aus, als eben die Frequenzmessung,
insoweit müsstest Du in der konkreten Anwendung entscheiden, ob das möglich ist.
Interruptgesteuert geht das auch, ist aber tricky und nur zuverlässig, wenn keine
anderen Interrupt lastigen Funktionen ausgeführt werden.

Grüße
Henrik


Meine Homepage: http://www.henrik-reimers.de/control/

 Antwort schreiben

Bisherige Antworten: