Gutes Forum Bin gerade an meiner Diplomarbeit dran und ein Teil davon besteht darin die Frequenz eines Light-to Frequency Converter (Lichtsensor) mit dem Capture Modul des PIC16F876A zu messen. Die Taktfrequenz des PIC betraegt 4MHz. Der Frequenzbereich des Lichtsensors betraegt 1- 100Khz. Das 16 bittige Ergebnis der Frequenzmessung wird dann an das PWM Modul weitergegeben an die Variable PR2, welche das Tastverhaeltnis bestimmt. Die Werte werden mittels Wertetabelle uebergeben, da PR2 nur 8 Bit betraegt. Das Signal des PWM wird danach ueber einen Tiefpass demoduliert um eine Spannung von 0-5V zu bekommen. Momentan sieht es so aus, dass es mir nur moeglich ist Frequenzen von 1KHz- 10Khz mit dem Capture Modul zu messen, da die anderen Frequenzen so schlecht am PWM ankommen, dass sie nicht demodulierbar ist. Der Timer des PWM ist ohne Prescaler eingestellt um eine hohe Ausgangsfrequenz zu bekommen, welche momentan bei 3,9 KHz im Maximum liegt. Habe den schlimmen Verdacht, dass es an der Taktfrequenz liegen koennte und deshalb nur niedrigere Frequenzen messen kann. Wuerde mich freuen, wenn jemand eine Idee haette. Gruesse Clemens
>Habe den schlimmen Verdacht, dass es an der Taktfrequenz liegen koennte >und deshalb nur niedrigere Frequenzen messen kann. Das ist gut möglich. Wenn der PIC Takt 4MHz ist, dann läuft er intern mit nur 1MHz. Deine Messung und Ausgabe müsste also bei 100kHz in 10 CPU Clocks fertig sein
Hallo Holger Danke dir fuer die schnelle Antwort auf meine Frage.Nun glaube ich auch, dass es an der Taktfrequenz liegen koennt. Gruesse
>Das 16 bittige Ergebnis der Frequenzmessung wird dann an das PWM Modul >weitergegeben an die Variable PR2, welche das Tastverhaeltnis bestimmt. Öhm, Moment mal. PR2 bestimmt die PWM Frequenz und nicht das Tastverhältnis. 1. Set the PWM period by writing to the PR2 register. 2. Set the PWM duty cycle by writing to the CCPR1L register and CCP1CON<5:4> bits. Irgendwie kam mir das gleich so komisch vor. Das mit der Frequenzmessung und Ausgabe per PWM sollte eigentlich auch funktionieren. Die PWM muss ja nicht nach jeder Periode der 100kHz upgedatet werden.
Hallo Holger Ich stelle indirekt das Tastverhaeltnis ueber PR2 ein da: Tastverhaeltnis = CCPR1L / PR2 Somit kann ich das Tastverhaeltnis durch Aenderung von PR2 beeinflussen. Werde nun einen Frequenzteiler benutzen um das Problem zu loesen. Gruesse
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.