Hallo,
also ich habe das mal durchgetestet und bin zu folgendem Ergebnis gekommen.
Syntax "pulsin"
pulsin pin, state, variable
pin > pin 0-7
state > 0 oder 1
variable > b1 oder w1
- länge eines Impulses kann gemessen werden
- keine Frequenzmessung
Syntax "readadc und readadc10"
readadc channel, variable
channel > pin
variable > b1 oder w1
- liest eine analoge Größe z. B. eine Spannung an einem pin ein
- keine Frequenzmessung
Syntax "count"
count pin, period, variable
pin > pin
periode > Zeitfenster
variable > b1 oder w1
- liest über einen Eingangspin die Frequenz ein
- legt die Impulsrate in eine Wortvariable (w0-w6)
- Wortvariable kann mit if - then weiterverabeitet werden
start:
count 1, 1000, w1 ‘ einlesen der Impulse für Zeitfenster 1 sec
pwmout 2, 255, w1 ` Ausgabe z. B. als Analogsignalwert
if w1 > 5 then led_ein ` Abfrage, wenn w1 > dann Entscheidung fällen
` hier kann man eine zweite if then Bedingung einbauen !!!
if pin1 = 0 then null_w1 ` Abfrage, wenn pin1 Null ist, dann Entscheidung fällen
`debug w1 ‘ augenblicklichen Wert der Wortvariable am Bildschirm anzeigen
goto start ‘ Rücksprung zum Hauptlabel
` Ab dieser Adresse kann eine weitere Operation erfolgen
led_ein: ` bei erreichen des if then Wertes hier her springen
high 4 ` Ausgang 4 auf high setzen (LED leuchtet)
pause 250 ` Pause einlegen
low 4 ` Ausgang 4 auf low
goto start ‘ Rücksprung zum Hauptlabel
null_w1: ` ist pin1 null, dann w1 null setzen
w1 = 0 ` setze w1 auf Null
goto start ‘ Rücksprung zum Hauptlabel
Ob Du nun mit einer Anlogwertverarbeitung oder digital weiter verfährst, ist Dir überlassen, Tatsache ist, daß man beide Funktionen für eine Entscheidungsabfrage verwenden kann.
Gruß Jon







Zitieren

Lesezeichen