hi,
nur mal so als ansatz, ist sicher verbesserungswürdig.
wichtig: vom taster auf input pin einen widerstand (z.b 750ohm) und vom input pin auf gnd einen kondensator von 100nF legen, zwecks der entprellung, sonst zählt jeder tastendruck evtl. mehrmals obwohl nur 1x gedrückt.
dim ZAEHLER as byte (o. word o. long, soviel eben gezählt werden soll)
ZAEHLER = 0 ' erstmal leeren, nix dem zufall überlassen
do
if pina.0 = 1 then ' spannung liegt an, taster gedrückt
incr ZAEHLER
bitwait porta.0, reset ' warten solange taste gedrückt
end if
lcd "Zaehlerstand: " ; ZAEHLER ' auf display ausgeben
loop
feddich, schon zählts, das is jetzt die super-simpel-variante für z.b. taste-abfragen-demo, eleganter wird's über interrupt, bei steigender flanke ausgelöst, im int: incr ZAEHLER - return, dann läuft dein restlicher prog weiter, auch wenn die papp- und teignasen stundenlang auf der taste stehenbleiben.
für die 5 sekunden kannste ja noch 'ne zählschleife oder 'nen timer einbauen, der mit jedem tastendruck 'genullt' wird ODER, wenn mehr als 5 sekunden vergangen sind -> weiterverarbeitung
grüssens & immer fröhliches probieren, harry
Lesezeichen