Hallo, ich möchte mir eine IR-Fernbedienung bauen. Habe auch schon ein Programm geschrieben zum Empfangen und Senden von Rc5, funktioniert soweit auch alles. Nun will ich natürlich möglichst wenig Strom verbrauchen, damit die Batterien auch lange halten, also ein Sleep modus benutzen. Ich habe schon gelesen, dass das durch ein externes Interupt an PIND 2,3 möglich ist. Nun ist mein Problem, dass ich keinen Taster benutzen will, nur um die Fernbedienung ersteinmal in Betrieb zu setzen. Ich möchte, dass die Fernbedienung durch alle Taster aufgeweckt werden kann. Allerdings gibt es ja nur 2 Interupt Pins. Wie kann ich das lösen? Ohne 2 polige Taster benutzn zu müssen? mfg
Ich geh mal davon aus, dass all deine Taster zu einem extra Pin gehen oder aber gemultiplexed werden. Die einfachste Lösung wäre wohl von jedem Taster eine zusätliche Leitung zu einem der Interrupt-Pins zu ziehen. Sobald du als einen Eingang des µC auf GND/VCC ziehst, wird automatisch der Interrupt mit ausgelöst. Im Interrupt den µC aufzuwecken und dann nachzusehen welcher taster überhaupt gedrückt wurde sollte in der Zeit eines Tastedrucks locker zu schaffen sein :-) Grüsse
nimm einen modernen mega/tiny und keinen steinalten. die haben alle pinchange-interrupts, mit denen das geht
@Stefan: Wie soll das dann mit der zusätzlichen Leitung aussehen? wenn ich alle Taster noch an einen Interupt-Pin verbinde, dann sind ja alle Taster miteinander verbunden und der Microcontroller kann nicht mehr feststellen, welcher taster gedrückt worden ist. @Michael: An was für einen modernen Atmega hast du gedacht? ich benutze momentan Atmega8-Controller
> Wie soll das dann mit der zusätzlichen Leitung aussehen? wenn ich alle mit odergattern. > Atmega8-Controller wunderbar. wechsel zum mega88. ist pinkompatibel
mooo_ wrote: > @Stefan: > Wie soll das dann mit der zusätzlichen Leitung aussehen? mit Dioden
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.