Lösung Challenge 5: Stoppuhr

Lösung

Zu Beginn definiert man diese drei Variablen:

  • „time“ speichert die Zeit, die seit Einschalten des Micro:bits vergangen ist.
  • „start“ speichert einen booleschen Wert und verhindert mehrmaliges Starten.
  • „state“ speichert den aktuellen Stand der Animation der Uhr.

Wenn man die „A“ Taste drückt, wird die Uhr gestartet. „start“ steht zu Beginn auf False und durch das Negieren wird der erste Fall ausgeführt. Dort wird „time“ auf die vergangene Zeit, seit der Micro:bit angeschaltet wurde, gesetzt, um die Startzeit der Messung zu kennen. Ebenso wird „start“ auf True gesetzt, um die Animation zu starten.

Drückt man die Taste erneut, um zu stoppen, ist dieses Mal in „start“ nicht mehr False gespeichert und der zweite Fall wird ausgeführt. Die Animation wird gestoppt und die vergangene Zeit ausgegeben. Dazu zieht man von der aktuellen, seit Einschalten, vergangenen Zeit die Startzeit „time“ ab und teilt das Ergebnis dann durch 1000, um den Wert in Sekunden umzurechnen. (Dabei wird ganzzahlig dividiert, um einen Bruch zu vermeiden. Man kann auch regulär dividieren, wenn man das wünscht).

Die Zeit soll kurz angezeigt und danach die Uhr zurückgesetzt werden.

Die Animation wird erst ausgeführt, wenn die Uhr gestartet wurde. Dann soll sie solange abgespielt werden, bis „start“ False ist. Die Funktion für die Animation wird aufgerufen, dort wird das entsprechende Bild gezeichnet und dann „state“ um eins erhöht, um im nächsten Durchlauf das nächste Bild anzuzeigen.

Die Funktion für die Animation ist so aufgebaut, dass der aktuelle Stand abgefragt wird und dementsprechend ein Bild angezeigt wird. In der Animation soll ein sich im Uhrzeigersinn drehender Uhrzeiger dargestellt werden.

Es gibt insgesamt zwölf Bilder. Wenn das letzte Bild angezeigt wird, muss der Animationsstand wieder zurückgesetzt werden. Hier setzt man ihn auf -1, damit er nach der folgenden Addition um +1 auf null steht.

Challenge Master

Ich bin der Challenge Master. Hinter mir verbergen sich die Auszubildenden von Proact Deutschland. Gemeinsam füllen wir diesen Blog mit verschiedenen Projekten, um euch das Coden beizubringen.

 
Kommentare

Noch keine Kommentare vorhanden.

Hinterlassen Sie einen Kommentar