Tag zusammen,
der C-Code im Anhang etspricht der von mir gewünschten "Funktion".
Das ganze läuft auf den STK 500, die Funktion laufZeit () ist eine 
Zeitabfrage, die mittels DIPP-Schalter entsprechende Divisionen 
durchführt. Die DIPP-SChalter sind über den Expansion-Port in HardWare 
angeschlossen.( Das tut jedoch für meine Frage nichts zur Sache.)
Ürsprünglich war in Zeile 27
1  |  DDRB = ( 1<<DDB0 ) | ( 1<<DDB1 ) | ( 1<<DDB2 );
  | 
zu lesen .
Mein Wunsch ist es dass die LED an PORTB 1 ( a_hand ) nur dann aktiv 
ist,
solange die Taste "ein_hand" betätigt ist.
Was allerdings Passiert: ( altes Code Fragment )
1  |  
  | 
2  |     while (taster == 1 )
  | 
3  |     {
 | 
4  |       PORTB &= ~( a_pumpe );
  | 
5  |       sei();                      //STK500 LED Pumpe an
  | 
6  |       timer_an;
  | 
7  |       PORTB = ( a_hand ) //<-- Warum muss ich hier ins DDRegister einngreifen um den Ausgang abzuschalten??                
  | 
8  | 
  | 
9  | /***********Zusätzliches Blinken******************für bessere Erkennbarkeit*********/
  | 
10  | 
  | 
11  |       if ((( sekunde % 2 ) == 0 ) && (!( sekunde == 0 )))
  | 
12  |       {
 | 
13  |         PORTB = ( a_auto );            //STK -- LED aus
  | 
14  |       }
  | 
15  | 
  | 
16  |       else
  | 
17  |       {
 | 
18  |         PORTB &= ~( a_auto );
  | 
19  |       }
  | 
20  | 
  | 
21  | /******************************************Reset***************************************/
  | 
22  | 
  | 
23  |       if (( sekunde == laufZeit() ) || (!( ein_hand ))) // für STK 500 taste gedrückt
  | 
24  |       {  
 | 
25  |         taster = 0;
  | 
26  |         sekunde = 0;
  | 
27  |         timer_aus;
  | 
28  |         cli();
  | 
29  |       }
  | 
30  | 
  | 
31  |     }
  | 
Die LED an Port 0 " a_auto " leuchtet in der vorgegebene Zeit, und 
sobald die Zeitvorgabe " a_auto " abschalten soll, beginnt LED an Port 1 
" a_hand " zu leuchten " ?? ( obwohl sie nicht soll ) und die LED  " 
a_auto "  (eigentlich nun aus) flunkert auf gefühlter halber Leistung.
Das ganze kenne ich als, etwas wird im Programm irgenwo gesetzt, ist 
noch aktiv, es wird zurückgesetzt, und wärend der Zyklus abgearbeitet 
wird erweckt es den Eindruck, wie so halbaktiv (weil an und geleich 
wieder aus usw).
Warum auch immer die LED " a_hand  " überhaupt angesprochen wird bleibt 
für mich ein Mysterium.
Die einzige Abhilft schafft wirklich nur ein ein Eingriff ins DDRB.
So die Lösung im Anhang.
Irgenwie fühlt sich das jedoch nach dreckigem Code an.