
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
alles klar, jetzt hats geschnackelt. Eben um das Auslesen ging es mir ja. Ich habe da immer gedacht, mit Freq kann ich nur die Torzeit einstellen und die Werte werden in irgendeinem internen Speicher abgelegt. Das steht nämlich in der Doku nicht drin, wie man da rangeht. Gut ich werde das so mal testen. Muss aber erstmal den Testaufbau machen. Dank Euch beiden erst mal - wer weiß wo es noch klemmt ;-) Andreas > Hallo, > > Ist Port 3 nicht host/run? Den habe ich bisher immer ausgeklammert und auf High gelegt.... > Das ist das kleine "Problem" bei der OM, wenn man den internen Zähler FREQ nutzen will, muß man dafür sorgen, daß beim Start auf High liegt. > > > Laut Doku wird die abfallende Flanke des angelegten Impulses am Port 3 gemessen über die voreingestellte Torzeit > > FREQ = 50 'Torzeit, bzw. Meßzeit: 1 Sekund > > Und nun ? Jetzt habe ich mit einer Torzeit von 1 Sekunde Impulse gezählt. > Das steht doch auch in der Doku. Hier nochmal der komplette Text: > > FREQ > Beschreibung > > Mit dieser internen Variable kann die Frequenz am FREQ-Pin (PORT[3]) abgefragt werden. Die Messung erfolgt im Hintergrund, parallel zur Programmausführung. Die Frequenzmessung wird erst aktiviert, nachdem die Torzeit (Meßzeit) eingestellt wurde. Die Torzeit wird in 20-ms-Schritten angegeben und wird erst nach Ablauf der vorherigen wirksam. Durch "FREQ=0" oder "FREQ=OFF" läßt sich die Frequenzmessung deaktivieren. Während BEEP, GET, INPUT und SLOWMODE werden alle Interrupts deaktiviert und deshalb wird auch FREQ nicht mehr aktualisiert. > > Zurückgeliefert wird die Anzahl der innerhalb der Meßzeit aufgetretenen Impulse. Und zwar wird bei jeder fallenden Flanke am KBI2-Pin (liegt am gleichen Pin wie PORT[3]) ein Interrupt ausgelöst. Die Frequenz, gezählt in Impulse pro Sekunde, läßt sich daraus berechnen zu > > f = FREQ / MESSZEIT. > > Achtung: Nach einem Reset muß PORT[3] auf High-Potential (5 Volt) liegen, sonst geht der Kontroller in den Hostmodus und arbeitet das BASIC-Programm nicht ab. > > Verfügbarkeit > > Open-Micro: an PORT[3] > Open-Mini: an PORT[3] > Open-Midi: an PORT[3] > > Syntax > > FREQ > FREQ1 > > Beispiel > > FREQ = 50 'Torzeit, bzw. Meßzeit: 1 Sekunde > PRINT FREQ > > Du mußt nur FREQ wieder auslesen ;-) Ist etwas verwirrend gemacht, hat aber mit Kompatibilität zu tun - probier es doch einfach mal aus - z.B. (wobei während der Ausgabe von print nicht gezählt wird, daher ist das Beispiel ungeschickt) > > freq = 50 > #loop > print freq > pause 50 > goto loop > > > Cu Rene |
| Antwort schreiben |