istruzioni e sequenze di istruzioni.
Istruzione termina con puntoe virgola.
Partire dalla funzione digitalWrite, modificare i tempi e ripetere: sequenze di istruzioni.
-Variabili: impostare i tempi con una variabile.
+Variabili: impostare i tempi con una variabile (falsa: e' una costante!)
Fare una funzione per rapido - lento, guardare loop() e setup()
impostare una nuova funzione per tempi e led: argomenti.
+Ora spiegare veramente la differenza tra costante e variabile,
+introdurre const.
Setup() symbolic constant /usr/share/arduino/hardware/arduino/cores/arduino/Arduino.h
Mettere funzioni in un file separato, senza estensione.
+Blink S.O.S: operazioni ripetitive.
+Fare un ciclo while per far brillare un LED 10 volte:
+Ciclo For.
Informatica: automatismi per operazioni ripetitive.
Introdurre un ciclo while() con un iteratore, ragionare sulla gestione dell'iteratore, scope, introdurre ciclo for (esercizio blinks/blink_4)
Descrivere variabili e costanti, l'operatore const.
- http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM
PWM, fatto con intervalli di un millisecondo, cenno a delayMicroseconds(), introdurre i PWM automatici: base con un byte per luminosita': cicli iterativi. Partire da while, variabile contatore e iteratore, e poi fori ternario.
+Elettronica: resistivity p (Greek: rho) Resistenza * (Area / lunghezza) - Conductivity sigma 1/p : serve per fare una resisteza da ~5k con due da 10 in parallelo.
+
+Fare pitch follower con calibrature.
+Input analogico: sensore di luminosita'. Lettura valori, calibrazione manuale, calibrazione automatica, map(), constrain(), smoothing. Sketch basic/analog_input[3,4,5,6]. trasformazione input -> output analogico di un piezo: poibilita' di percepire soglie e range non percepibili con i sensi umani. Smothing (semplificato), claibrazione automatica.
+
+- Introdurre gli operatori comparativi (>,<,=!) e booleani (&&, ||, !):
+Stato di un bottone: esercizi vari e operatori AND.
+
+- Array: knight rider - cicli loop
+
+- Piezo e bottoni in pull-up per keyboard
+Descrizione del funzionamento, melodie di esempio (mario tunes!).
+Arduino dev: utilizzare sketch su piu' tabs (include): percorsi <> ""
+
Tipi di dati: bit e int e long, signed and unsigned, long
- http://www.ladyada.net/learn/arduino/lesson4.html
Input analogico per impostare il PWM.
-- Introdurre gli operatori comparativi (>,<,=!) e booleani (&&, ||, !):
-Stato di un bottone poi Debouncing: grafico http://www.ladyada.net/learn/arduino/lesson5.html
+Debouncing con millis: grafico http://www.ladyada.net/learn/arduino/lesson5.html
Eventuale: fare il circuito Knight rider con 6 led per pratica con for loop, magai con un solo resistor. http://arduino.cc/en/Tutorial/ForLoop
Direttive per preprocesor: # define - # if defined - per DEBUG
Usare seriale per aritmetica.
-Input: bouncing e state: elettronica digitale. (serie di esercizi in "basic")
-http://www.ikalogic.com/de-bouncing-circuits/
-(guardare arduino for dummies)
-Analog input con un potenziometro.
-Usare map() per ricalibrare una lettura.
-Usare map() e poi una diffusuione *4 oer mappare un range 1024 -> 256 su PWM.
Seriali: scrivere e debugging. Interpretae input / caratteri da seriale per accendere un LED.
Memoria: controllare l'utilizzo della memoria con la libreria MemoryFree.
Usare constanti e bytes, rimuovere chiamate a Serial.println() (500bytes) con #IF DEBUG . Programmare arduino senza il bootloader salva un paio di KB.
-
+Arduino in potenza, slides: http://www.maffucci.it/2015/04/14/on-line-le-slide-alfabeto-di-arduino-lezione-5/