Hi Leute, ich möchte 5 Taster an den AVR anschliessen. Der AVR hat aber nur zwei Interrupts. Nun möchte ich aber, dass ein Interrupt ausgelöst wird, wenn eine der Tasten gedrückt wird und dann erst die Auswertung (welche Taste) laufen lassen. Hat jemand eine Idee, wie man soetwas hardwaretechnisch realisieren kann? Würd mich über Hilfe freuen, MfG Willi
Hallo Willi, schau mal in der Application Note 240 von Atmel: http://www.atmel.com/dyn/resources/prod_documents/doc1232.pdf Gruß Fiffi
Überleg mal: Wie wärs mit 5 "Sperrdioden" und einem sechsten Eingang, der auch ein Interrupt auslösen kann. Das Ganze so verschaltet, dass die 5 "normalen" Eingänge auf "normale" Pins gehen und der zusätzliche an einen Eingang mit Interruptfähigkeit. Dieser sechsten Eingang sollte dann mit allen anderen parallel geschaltet werden, dann wird immer der Interrupt ausgelöst. Hier kommen dann noch die Dioden ins Spiel. Gruß Martin
Extra Hardware ist völlig unnötig, nimm einfach einen Timerinterrupt. Beispiele in C und Assembler findest Du hier haufenweise von mir. Ist quasi eine Standardroutine, die in fast jedem meiner Codebeispiele drin ist. Peter
geht jetzt ein encoder auch oder nicht? schließlich würde man sich da einige I/O leitungen sparen
Hi, falls es doch mal mehr Tasten werden sollen .... Es gibt sogenannte I/O Expander mit Interrupt Pin. Einfach dann nur noch diesen Pin mit dem Intetrupt Pin verbinden. Das IC heisst PCF8574 . Mfg Dirk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.