From 17b4fe57f20ce15396a69ef7fdc87a7342ba0cb7 Mon Sep 17 00:00:00 2001 From: eaman Date: Wed, 5 Oct 2016 16:30:13 +0200 Subject: [PATCH] oggi --- .../blink_7.1_diode/blink_7.1_diode.ino | 107 ++++++++++++++++++ basic/blinks/blink_7_diode/blink_7_diode.ino | 44 +++++++ basic/buttons/button_1/button_1.ino | 2 +- 3 files changed, 152 insertions(+), 1 deletion(-) create mode 100644 basic/blinks/blink_7.1_diode/blink_7.1_diode.ino diff --git a/basic/blinks/blink_7.1_diode/blink_7.1_diode.ino b/basic/blinks/blink_7.1_diode/blink_7.1_diode.ino new file mode 100644 index 0000000..963233d --- /dev/null +++ b/basic/blinks/blink_7.1_diode/blink_7.1_diode.ino @@ -0,0 +1,107 @@ +/* + Blink v7: diodi + + Accensione e spegnimanto di 2 LED invertendo il verso di percorrenza + della corrente elettrica con un solo PIN di OUTPUT. + + +Schema: http://www.pighixxx.com/test/portfolio-items/light-two-leds/?portfolioID=610 + + Ricordarsi di usare una resistenza da ~320ohms per i LED. + Resistenza = (Voltaggio_Arduino - Forward_voltage_LED) / (ampere utilizzati) + R = (5v-1.8v) / 0.010a + R =320ohms + + This example code is in the public domain. + */ + + +int led = 2; // Pin per i LED +int pause = 200; // Variabile richiambile nel corso dell'esecuzione + + +void setup() { + pinMode(led, OUTPUT); // Abilitaiamo entrambi i LED, questo comporta + // collegarli dalla resistenza interna! +} + + +void loop() { + digitalWrite(led, HIGH); // turn the 1st LED on (HIGH is the voltage level) + delay(pause); // wait for a second + + digitalWrite(led, LOW); // turn the 2nd LED on by making the voltage LOW + delay(pause); // wait for a second +} + + +/* Domande + * + 1. Quanti stati sono disponibili per i LED ? + 2. Sarebbe possibile spegnere conemporaneamente entrambi i LED? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Risposte: + 1. Be' un digital out puo' essere a 0 oppure 5v. + + + + + + + + + + + + + + + + + + 2. Si: trasformando il PIN da OUTPUT a INPUT questo diventerebbe + ad alta impendenza impedendo anche il DRAIN di corrente. + Da un punto di vista fisico si potrebbe lavorare sul tempo di attivazione + del LED: facendo oscillare il pin a una frequenza superiore al periodo + necessario di attivazione del LED si potrebbe impedire l'accensione + anche come UOTPUT. + +*/ diff --git a/basic/blinks/blink_7_diode/blink_7_diode.ino b/basic/blinks/blink_7_diode/blink_7_diode.ino index 330206e..6ec0519 100644 --- a/basic/blinks/blink_7_diode/blink_7_diode.ino +++ b/basic/blinks/blink_7_diode/blink_7_diode.ino @@ -45,4 +45,48 @@ void loop() { } +/* Domande + * + 1. Quanti stati sono disponibili per i LED ? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Risposte: + 1. Quattro combinazione tra cui 3 stati differenti. + */ diff --git a/basic/buttons/button_1/button_1.ino b/basic/buttons/button_1/button_1.ino index 6ea60b2..f409028 100644 --- a/basic/buttons/button_1/button_1.ino +++ b/basic/buttons/button_1/button_1.ino @@ -40,6 +40,6 @@ void loop() { 2. Modificare il programma per far brillare il led cinque volte al secondo quando il bottone e' premuto. 3. Si potrebbe usare un ciclo iterativo while invece che - un ciclo condizonale if? Che differenza c'e' tra il ciclo while e for? + un ciclo condizonale if? Che differenza c'e' tra il ciclo while, if e for? 4. Domanda: cosa succede se il jumper input non e' collegato ne al +5 ne al ground? */ -- 2.39.2