hi ho...

puh...also ich hab mal was aus dem programm ausgeschnitten...ich weiß aber nicht ob man da durchsteigt...tue ich nämlich selber nimmer weil das schon ne weile her is...müsste ich mich erst wieder reinfuchsen.

Code:
 while(1)
 {

  taster_abfrage();

  //Abfrage Status

  if((taster1==1) && (status==0))
  {
   taster1=0;
   status=1;
  }

  if((status==0) && (taster2==1))  //falls Status = nicht-menue Modus
  {
   index++;
   if(index==3)
   {
    index=0;
   }
  }


  if(status==1)  //falls Status = menue Modus
  {
   switch (menue_index) 
   {
    case 0:
			send_b(0x03);
			
  			strcpy(text, "Schaltbl.: ");
  			send_d(text);
  
  			send(48+schaltblitz_ztausend);
  			send(48+schaltblitz_tausend);
  			send(48+schaltblitz_hundert);
  			send(48);
  			send(48);

  			send_b(0xC0);
			if(einstellen==0)
			{
  			 strcpy(text, "Ok      Weiter >");
  			}
			else
			{
  			 strcpy(text, "Ziffer  erhoehen");
  			}
			send_d(text);

			taster_abfrage_menue();
			
  	break;
	
	case 1:
			send_b(0x03);
  			strcpy(text, "Impulse / U: ");
  			send_d(text);
  			if (takt==1) 
  			{
   			 strcpy(text, "  1");
   			 send_d(text);
 			}
  			else
  			{
 			 strcpy(text, "0.5");
  		 	 send_d(text);
  			}
  			send_b(0xC0);
  			strcpy(text, "Aendern Weiter >");
  			send_d(text);
			taster_abfrage_menue();
  	break;

	case 2:
			send_b(0x03);
  			strcpy(text, "Uhrzeit         ");
  			send_d(text);
  			send_b(0xC0);
  			strcpy(text, "Ok      Weiter >");
  			send_d(text);
			taster_abfrage_menue();
  	break;

	case 3:
			send_b(0x03);
  			strcpy(text, "Balken max ");
  			send_d(text);
  			umwandeln(balken_max);
  			send(48+ztausender);
  			send(48+tausender);
  			send(48+hunderter);
  			send(48+zehner);
  			send(48+einer);
  			send_b(0xC0);
  			strcpy(text, "Aendern Weiter >");
  			send_d(text);
			taster_abfrage_menue();
  	break;

	case 4:
			send_b(0x03);
  			strcpy(text, "Verlassen       ");
  			send_d(text);
  			send_b(0xC0);
  			strcpy(text, "Ok      Weiter >");
  			send_d(text);
			taster_abfrage_menue();
			menue_index=0;
			
    break;
   }
  }

 } //ende While
}  //ende Main

void taster_abfrage()
{
 //Taster Entprellung
  
  if((s1 == 0) && (gesperrt1 == 0))
  {
   taster1 = 1;
   gesperrt1 = 1;
   pause(10);
  }

  if(s1 == 1)
  {
   taster1 = 0;
   gesperrt1 = 0;
   pause(10);
  }

  if((s2 == 0) && (gesperrt2 == 0))
  {
   taster2 = 1;
   gesperrt2 = 1;
   pause(10);
  }

  if(s2 == 1)
  {
   taster2 = 0;
   gesperrt2 = 0;
   pause(10);
  }

}

void taster_abfrage_menue()
{
 taster1=0;
 if(einstellen==1)
 {
  taster1=1;  //ins einstellen springen
 }

 while((taster1==0) && (taster2==0))
 {
  taster_abfrage();
 }

 if(taster2==1)
 {
  taster2=0;
  menue_index++;
 }

 if(taster1==1)
 {
  taster1=0;
  
  switch(menue_index)
  {
  case 0:
  			if(einstellen==0)
			{
 			 einstellen=1;
			 break;
			}
  			send_b(0x0F); // 0000 1111 Cursor an; Blinken	
			switch(ziffer_aktiv)
            {
			case 0:
					send_b(0x8B);
					while((taster1==0) && (taster2==0))
 					{
  					 taster_abfrage();
 					}
 					if(taster1==1)
					{
					 ziffer_aktiv++;
					 taster1=0;
					}
					
					if(taster2==1)
 					{
					 taster2=0;
 					 schaltblitz_ztausend++;
					 if(schaltblitz_ztausend==3)
					 {
 					  schaltblitz_ztausend=0;
					 }
					}
					
			break;
			
			case 1:
					send_b(0x8C);
					while((taster1==0) && (taster2==0))
 					{
  					 taster_abfrage();
 					}
 					if(taster1==1)
					{
					 ziffer_aktiv++;
					 taster1=0;
					}
					
					if(taster2==1)
 					{
					 taster2=0;
 					 schaltblitz_tausend++;
					 if(schaltblitz_tausend==10)
					 {
 					  schaltblitz_tausend=0;
					 }
					}
					
			break;

			case 2:
					send_b(0x8D);
					while((taster1==0) && (taster2==0))
 					{
  					 taster_abfrage();
 					}
 					if(taster1==1)
					{
					 ziffer_aktiv++;
					 taster1=0;
					}
					
					if(taster2==1)
 					{
					 taster2=0;
 					 schaltblitz_hundert++;
					 if(schaltblitz_hundert==10)
					 {
 					  schaltblitz_hundert=0;
					 }
					}
			break;

			case 3:
					ziffer_aktiv=0;
					einstellen=0;
			break;
			}
		schaltblitz_drehzahl=schaltblitz_ztausend*10000 + schaltblitz_tausend*1000 + schaltblitz_hundert*100;
  break;



  case 4:
  			status=0;
  break;
 }
}
}
sorry, wenns net perfekt eingerückt ist.

mfg