Hallo, ich habe folgendes zu tun: Ich muss die Blinkfrequenz einer LED bestimmen (per PC und C#) Also: 1.Leucht-Info als digitales Signal erfassen (sagen wir in 1ms Abstand) 2.Information speichern (im Array/Liste) 3.1x pro Sekunde diese Daten durchpflügen und bestimmen, mit welcher Frequenz die LED leuchtet (dauernd an, dauernd aus, oder PeriodenDauer 10ms..500ms) 1+2 bekomme ich hin, aber wie mache ich 3. ? Danke im Voraus
du hast die daten in einem array gespeichert. wenn 5 mal low und 5 mal high kamen weißt du das bei 10ms pro messung 50ms high und 50ms low signal vorhanden war. und ob nun led an oder aus bestimmst du mit dem aktuellen wert
Ich finde deinen Ansatz eher ungünstig. Warum achtest du nicht einfach auf die ÄNDERUNGEN im Signal? Du könntest z.B. die Zeit zwischen dem Umschalten von high auf low und umgekehrt messen. Dann hast du schnell Frequenz und Duty Cycle ermittelt, brauchst keinen Speicher für große Arrays und musst auch nichts "durchpflügen" ;-)
Eugen W. schrieb: > 3.1x pro Sekunde diese Daten durchpflügen und bestimmen, mit welcher > Frequenz die LED leuchtet (dauernd an, dauernd aus, oder > PeriodenDauer 10ms..500ms) Was lauft denn sonst noch auf dem pc? Task scheduling zeiten sind auch irgendwo im ms bereich, da kann es ganz boese glitches geben, bei deiner messung.
>1+2 bekomme ich hin, aber wie mache ich 3. ? das schwierige am punkt 3, ist ja wohl nicht die Umsetzung, sondern (wie so oft) erstmal zu DEFINIEREN was Punkt 3 überhaupt macht in diesem Fall: zu definieren was/wann welches Ergebnis liefert was ist wenn die LED 1/2 sekunde leuchtet, dann 1/4 sekunde blinkt und dann 1/4 nicht leuchtet.. usw.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.