Hallo,
ich bin recht neu in Sachen Mikrocontroller und programmiere bzw. lese
mehr seit ca. 1 Woche.
Nun möchte ich ein Programm schreiben, dass folgedes tut:
Taster 1 schaltet LED 1 an bzw. aus
Taster 2 schaltet LED 2 an bzw. aus
Ist es sinnvoll die Abfrage der Taster in einem externen Interrupt zu
lösen? Oder hält dies das Programm (wegen der Entprellungsroutine nach
Christian Riggenbach) zu lange auf?
Im Moment habe ich dies mit if's gemacht, in denen ich eine Variable
Abfrage (Variable statusTaster 0=nicht gedrückt, 1=gedrückt):
1 | if (statusTaster==0)
|
2 | {
|
3 | // den Taster abfragen, Funktion kehrt zurück, wenn der Status stabil ist (Entprellung)
|
4 | debounce( (uint8_t*)&PINB, (1<<Taster1) );
|
5 |
|
6 | if ( !(PINB & (1 << Taster1)) ) //frägt den Zustand des Tasters ab
|
Aber irgendwie funktioniert das Programm nicht richtig/zuverlässig so.
Da ich Anfänger bin, weiß ich nicht so recht, ob ich Tasterzustände in
Interrupts oder in main Abfrage.