Nach dem drücken des Tasters in eine Schleife gehen mit 1ms Pause und dann ne Variable hochzählen.
Danach die Variable auswerten und je nach Wert schalten oder eben nicht.
Und es heisst länger ALS!
hallo, ich würde gerne folgenden code so abändern das der ausgang nur schaltet wenn der eingang länger wie 50ms getastet wird.
Ich als anfänger hab keine idee das problem zu lösen.
danke im vorraus!Code:If Pina.0 = 0 Then 'wenn an pinb.0 eine 0 (GND) anliegt dann Waitms 200 'warte kurz Toggle Portb.0
Nach dem drücken des Tasters in eine Schleife gehen mit 1ms Pause und dann ne Variable hochzählen.
Danach die Variable auswerten und je nach Wert schalten oder eben nicht.
Und es heisst länger ALS!
länger als!
hört sich ja noch komplizierter an wie ich gedacht hab, hast du zufällig n beispielcode zur hand?*g
Komplizierter ALS ich gedacht hab!
Hab hier mal ein Beispiel gefunden http://www.mikrocontroller.net/attac...Timer-msec.bas
ich glaub es wird noch komplizierter als du denkst, den daraus kann ich nichts einziffern was soll man damit anfangen da is keine zeile code drin*g
mhhh nimm einfach ein timer, der im 50 ms sek takt zählt und darin eine if anweisung, das wenn der port auf high is, soll er in eine variable +1 speichern. naja und das solange, bis er 50 erreicht hat.
Wenn allerdings nicht, dann soll er die variable auf 0 setzen.
Alles kla, also das wäre mein vorschlag
Hallo voll-milch,
probier mal das:
Dabei musst du allerdings aufpassen, dass dir die Variable wait_taster nicht überläuft.Code:while pina.0 = 0 waitms 1 incr wait_taster wend if wait_taster >= 50 then 'länger als 50ms gedrückt 'tue irgendwas else 'kürzer als 50ms gedrückt 'tue was anderes endif wait_taster = 0
Gruß
Chris
Vielen Dank Che Guevara funktioniert perfekt und hat mein problem gelöst
Lesezeichen