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
Lesezeichen