Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:informatik:ffprg2017:l1:l1 [2017/08/11 15:20] Ivo Blöchliger |
lehrkraefte:blc:informatik:ffprg2017:l1:l1 [2017/08/11 16:03] (current) Ivo Blöchliger [Aufgaben] |
||
---|---|---|---|
Line 10: | Line 10: | ||
* Drücken Sie " | * Drücken Sie " | ||
* Die Onboard-LED sollte jetzt blinken. | * Die Onboard-LED sollte jetzt blinken. | ||
- | * Speichern Sie den Code unter anderem Namen an einem geeigneten Ort (wo Sie Ihre Codes liegen haben). | + | |
+ | | ||
* Verändern Sie den Code so, dass die LED schneller blinkt. | * Verändern Sie den Code so, dass die LED schneller blinkt. | ||
Line 18: | Line 19: | ||
===== Serial: Kommunikation mit dem Computer ===== | ===== Serial: Kommunikation mit dem Computer ===== | ||
+ | * Legen Sie einen neuen Sketch an und speichern Sie diesen unter dem Namen " | ||
+ | Beispiel-Sketch live. | ||
+ | |||
+ | ===== Coding Conventions ===== | ||
+ | * Es wird eingerückt | ||
+ | * für jede öffnende geschweifte Klammer | ||
+ | * die entsprechende schliessende geschweifte Klammer steht unter dem ersten Buchstenben der Zeile mit der öffnenden Klammer. | ||
+ | * Nach if werden grundsätzlich geschweifte Klammern gesetzt. | ||
+ | * Die öffnende geschweifte Klammer kommt als letztes Zeichen hinter das öffnende Statement. | ||
+ | * Variablen beginnen mit Kleinbuchstaben. | ||
+ | * Klassen beginnen mit einem Grossbuchstaben. | ||
+ | * Globale Variablen haben einleuchtende Name (besser ' | ||
+ | * #define Konstanten werden vollständig mit Grossbuchstaben geschrieben. | ||
+ | |||
+ | <code c++> | ||
+ | // Port auf dem die LED hängt | ||
+ | #define LED 2 | ||
+ | |||
+ | void setup() { | ||
+ | pinMode(LED, | ||
+ | } | ||
+ | |||
+ | // globale Variable | ||
+ | int counter=0; | ||
+ | |||
+ | void loop() { | ||
+ | counter++; | ||
+ | if (counter> | ||
+ | digitalWrite(LED, | ||
+ | } else if (counter> | ||
+ | digitalWrite(LED, | ||
+ | counter=0; | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Zusammenfassung ===== | ||
+ | Übersicht: https:// | ||
+ | |||
+ | * void setup() { ... } Programmstart, | ||
+ | * void loop() { ... } Wird danach wiederholt. | ||
+ | * pinMode(// | ||
+ | * digitalWrite(// | ||
+ | * Serial, siehe https:// | ||
+ | * Serial.begin(// | ||
+ | * Serial.print(// | ||
+ | * Serial.println(// | ||
+ | * for(// | ||
+ | * if (// | ||
+ | * if (// | ||
+ | * if (// | ||
+ | * int (Ganzzahlen, | ||
+ | * long (Ganzzahlen, | ||
+ | |||
+ | ===== Aufgaben ===== | ||
+ | === Primzahlen === | ||
+ | Schreiben Sie einen Sketch, der Primzahlen ausgibt (ohne obere Grenze). | ||
+ | |||
+ | Studieren Sie dazu die Arduino-Dokumentation zum for-loop, der if-Schleife und dem Modulo-Operator %. | ||
+ | === LED dimmen === | ||
+ | Eine LED kann gedimmt werden, indem man diese ganz schnell ein- und ausschaltet. Je nach Anteil der Zeit, während der die LED angeschaltet ist, erscheint diese heller oder dunkler. | ||
+ | |||
+ | Schreiben Sie ein Programm, das die LED schön "an- und ausdimmt" | ||
+ | |||
+ | Beachten Sie, dass unser Helligkeitsempfinden nicht linear ist. Eine gute Variante besteht darin, den Anteil der " |