Heißer Draht bei dem hilfe von zwei Servomatoren die Zeit und die Fehler angezeigt werden.
#include <Servo.h>
int startstopp = 0 ;
int fehler = 0 ;
int zeit = 0 ;
int servo = 0 ;
int start = 0 ;
Servo servo_pin_9;
Servo servo_pin_11;
void Unterprogramm1();
void Unterprogramm3();
void setup()
{
 pinMode( 3 , INPUT);
 pinMode( 2 , INPUT);
 digitalWrite(3, HIGH);
 digitalWrite(2, HIGH);
 pinMode( 7 , OUTPUT);
 servo_pin_11.attach(11);
 servo_pin_9.attach(9);
 Serial.begin(9600);
 pinMode( 7 , OUTPUT);
 startstopp = 0 ;
fehler = 0 ;
zeit = 1000 ;
servo = 5 ;
start = 0 ;
digitalWrite( 7 , LOW );
servo_pin_9.attach(9);
 servo_pin_11.attach(11);
 servo_pin_11.write( 0 );
servo_pin_9.write( 5 );
delay( 1000 );
servo_pin_9.detach();
servo_pin_11.detach();
}
void loop()
{
 Serial.print("startstopp");
 Serial.print(startstopp);
 Serial.println();
 if (!( digitalRead(2) ))
 {
 startstopp = ( startstopp + 1 ) ;
 delay( 1000 );
 Serial.print("startstopp");
 Serial.print(startstopp);
 Serial.println();
 }
 if (( ( startstopp ) == ( 1 ) ))
 {
 servo_pin_9.attach(9);
 long current=millis();
 while(current+6000>=millis())
 { 
 if (( ( 180 ) >= ( servo ) ))
 {
 servo_pin_9.attach(9);
 servo_pin_9.write( servo );
 }
 if (( ( 181 ) <= ( servo ) ))
 {
 digitalWrite( 7 , HIGH );
 delay( 2000 );
 digitalWrite( 7 , LOW );
 startstopp = ( startstopp + 1 ) ;
 delay( 500 );
 Serial.print("startstopp");
 Serial.print(startstopp);
 Serial.println();
 }
 if (!( digitalRead(2) ))
 {
 startstopp = ( startstopp + 1 ) ;
 delay( 1000 );
 Serial.print("startstopp");
 Serial.print(startstopp);
 Serial.println();
 }
 if (!( digitalRead(3) ))
 {
 servo = ( servo + 5 ) ;
 fehler = ( fehler + 1 ) ;
 Unterprogramm1();
 }
 }
 servo = ( servo + 6 ) ;
 Serial.print("servo");
 Serial.print(servo);
 Serial.println();
 }
 if (( ( startstopp ) == ( 2 ) ))
 {
 servo_pin_11.detach();
 servo_pin_9.detach();
 digitalWrite( 7 , LOW );
 }
 if (( ( ( startstopp ) == ( 3 ) ) || ( ( ( startstopp ) == ( 4 ) ) || ( ( startstopp ) == ( 5 ) ) ) ))
 {
 startstopp = 0 ;
 fehler = 0 ;
 zeit = 1000 ;
 servo = 5 ;
 start = 0 ;
 digitalWrite( 7 , LOW );
 servo_pin_9.attach(9);
 servo_pin_11.attach(11);
 servo_pin_11.write( 0 );
 servo_pin_9.write( 5 );
 delay( 500 );
 servo_pin_9.detach();
 servo_pin_11.detach();
 }
}
void Unterprogramm3()
{
 digitalWrite( 7 , HIGH );
 delay( 1000 );
 digitalWrite( 7 , LOW );
 servo_pin_11.detach();
}
void Unterprogramm1()
{
 if (( ( fehler ) == ( 1 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 18 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 2 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 36 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 3 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 54 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 4 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 72 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 5 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 90 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 6 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 108 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 7 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 126 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 8 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 144 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 9 ) ))
 {
 servo_pin_11.attach(11); 
 delay( 5 );
 servo_pin_11.write( 162 );
 Unterprogramm3();
 }
 if (( ( fehler ) == ( 10 ) ))
 {
 digitalWrite( 7 , HIGH );
 delay( 2000 );
 digitalWrite( 7 , LOW );
 servo_pin_11.attach(11); 
 delay( 10 );
 servo_pin_11.write( 180 );
 delay( 1000 );
 servo_pin_11.detach();
 fehler = 0 ;
 startstopp = 3 ;
 }
}


