Young Engineers TinkerCAD Circuits:  UNO-Multifunktionsshield - Zeitmessung
  1. unsigned long aktuelleZeit, letzteZeit=millis(), zeitDifferenz=100; 
    unsigned int zeit=0;
    void loop() {
      display_zahl(zeit);
      display1();
      aktuelleZeit=millis();
      if (letzteZeit+zeitDifferenz<=aktuelleZeit) {
        letzteZeit = aktuelleZeit;
        zeit=zeit+1;
      }  
      if (not digitalRead(S1)) {
          zeit=0;
      }
    }
  2. int zeit1=50, modus=0, zeitMerke=0;
    void loop1() {
      if (modus==0) 
        display_zahl(zeit);
      else 
        display_zahl(zeitMerke);
      display1();
      aktuelleZeit=millis();
      if (letzteZeit+zeitDifferenz<=aktuelleZeit) {
        letzteZeit = aktuelleZeit;
        zeit=zeit+1;
      }  
      if (not digitalRead(S1)) {
          zeit=0;
      }
      if (not digitalRead(S2)) {
          zeitMerke=zeit;
          modus=1;     
      }
      if (modus==1 && zeit>=zeitMerke+zeit1)
         modus=0; 
    }