Forum: Compiler & IDEs Interrupt bei Taste?


von Divison (Gast)


Lesenswert?

Hallo,

ich habe hier an meine 8535 ein paar Tasten an Port A. Im verlauf des
Programmes soll die MCU in den Sleepmodus gehen.

Kann mir jemand sagen wie ich den da mit den Tasten wieder rausbekomme?
(Interrupt auslösen?)!!!

Wäre super wenn ihr mir helfen würdet.

Division

von leo (Gast)


Lesenswert?

Wenn die Tasten gegen GND schalten, von jeder Taste eine Diode (Anode
zum uP Kathode zur Taste) zum ext Int. 0 oder 1 plus pullup (10k) auf
den Int-Pin. Damit löst jede Taste einen Int aus und in der Int.Routine
kannst Du abfragen welche Taste es war.

grüße leo

von Oli K. (waldmeister)


Lesenswert?

@ leo

genau so wie du das beschrieben  hast, habe ich die schaltung aufgebaut. 
was ich allerdings nicht ganz verstehe ist, wie ich abfragen kann, 
welche taste ich gedrückt habe. zudem möchte ich für eine taste mehrere 
Befehle definieren. bin auch schon über peters code gestollpert, was mir 
aber nicht viel weitergeholfen hat.
Beitrag "Universelle Tastenabfrage"
mit meinen tasten spreche ich ein display an, was ohne interrupt auch 
funktioniert. da ich aber wie schon geschrieben, eine taste habe, bei 
der ich nach erstmaligem drücken ein unterprogramm öffnen möchte, möchte 
ich alles über timer/counter interrupt lösen. meine tasten sind an port 
a angeschlossen und die signale gehen zusätlich über eine diode zum 
externen interrupt(0).
wäre über jede hilfe und anregung dankbar!

von Karl heinz B. (kbucheg)


Lesenswert?

> was ich allerdings nicht ganz verstehe ist, wie ich abfragen kann,
> welche taste ich gedrückt habe

Die Tasten liegen doch am A-Port an.
Also: nach dem Aufwachen, den A Port befragen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.