... Dennoch halte ich "sprechende Funktionsnamen" für besser lesbar, wenn "LedOn()" heißt ...
Da bin ich völlig Deiner Meinung, ich mache genau das mit meinen #define´s. Und ich zeige das jetzt nicht wegen der Besserwisserei - sondern nur um (m)eine Möglichkeit mit diesen gestuften #define´s aufzuzeigen. Ach so, die Taster schalten gegen GND.
Code:
// - - - - - - - - - - - - - - - -
// in der *.h so:
// . . .
#define PrtTAST PIND //
#define Tst_1 6 //
#define Tst_2 7 //
...
#define Taste1_an IsBitClr (PrtTAST, Tst_1) // Taster 1 gedrückt ??
#define Taste1_aus IsBitSet (PrtTAST, Tst_1) // Taster 1 gelöst ??
#define Taste2_an IsBitClr (PrtTAST, Tst_2) // Taster 2 gedrückt ??
#define Taste2_aus IsBitSet (PrtTAST, Tst_2) // Taster 2 gelöst ??
// - - - - - - - - - - - - - - - -
// Im Code so benutzt
// . . .
if (TasteA_an) // Wenn "A" gedrückt, dann hochzählen
{ //
wms ( 10); //
while (TasteA_an) {} // Weiter nur mit gelöster Taste
while (TasteA_aus) {} //
mnuptr ++; //
if (mnuptr == 9) mnuptr = 1;
} //
// . . .
// - - - - - - - - - - - - - - - -
Lesezeichen