Ich bauch mal wieder Hilfe von den Profis, in meinem Programm wird mit zwei Tastern durch die verschiedenen Menüebenen von meinem Display durchgetrippt. Nun hat mein Display eine Hintergrundbeleuchtung die ich einschalten will. Das ganze soll so funktionieren, immer wenn Taster1 oder Taster2 benützt wird um das Menüe zu betätigen soll die Hintergrundbeleuchtung (Ausgang auf High) gesetzt werden, so ca 1min lang. Immer wenn einer der beiden Taster betätigt wird soll die Zeit wieder von vorn anfangen. Hier ein paar teile von meinem Programm das es bischen verständlicher wird: int tasterabfrage1() { if (PINB & (1<<0)) { while (!(PINB & (1<<0))); taster1++; while ((PINB & (1<<0))); } return(0); } int tasterabfrage2() { if (PINB & (1<<1)) { while (!(PINB & (1<<1))); taster2++; while ((PINB & (1<<1))); } return(0); } switch (taster1) { case 1: case 2: switch (taster2) { case 1: case 2: } } ja und so weiter.. Ich hoffe ich hab das einigermasen vertändlich rüber gebracht. Hoffe von euch hat da einer ne gute Idee. Danke schonmal im voraus Gruß Mucky
Wenn du nen Timer interrupt hast, kannst du einen Zählwert in eine Veriable laden, die du bei jedem Interrupt um 1 runterzählst. Ist sie Null, wird das Backlight ausgemacht, ansosnten an. Nun einfach im Programm bei jedem Tasterdruck die Variable mit dem Startwert belegen.
Hallo Flo, könntest du das für mich als Beispiel ganz grob als C-Code schreiben?? Gruß solo
Was benutzt du den für einen AVR? Hast du schon mal mit Interrupts gearbeitet, wenn nein, kannste dich hier mal einlesen http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Programmieren_mit_Interrupts Wenn du mal deinen bereits vorhandenen Code hier als File hochlädst, lässt sich schauen, ob der ganz einfach zu modifizieren ist. :D
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.