Video Tutorial Di GeekcClass.it
Link Articolo Originale: http://geekclass.it/category/lezioni/arduino-lezioni/
#1 – Introduzione ad Arduino
Introduzione al corso di Arduino: prima parte che comprende l’architettura e le basi per iniziare a farsi un’idea della piattaforma.
{youtube}Cw5idksKf1o{/youtube}
#2 – Altre informazioni su Arduino
Ulteriori informazioni preparatorie al corso: approfondimento al sito di Arduino e introduzione su Lilypad per applicazioni future. Da oggi potete anche discutere sul forum le lezioni.
{youtube}L2iNX-8DG5c{/youtube}
#3 – Installazione del Software
Terza lezione sull’installazione del software sui principali sistemi operativi. Inoltre abbiamo introdotto la musica di Gianluca Ghini nel video, leggi qui le info.
Update: per l’installazione dei driver su Windows che non sono citati nel video, seguite la guida su http://arduino.cc/it/Guide/Windows e chiedete pure nel forum per eventuali problemi!
{youtube}dQ-a0WZOy3o{/youtube}
#4 – Il primo programma
Il vostro primo programma con Arduino! Blink: accensione del LED sulla scheda Arduino, collegato al pin n°13. Buona visione!
{youtube}JguDbzbr1v4{/youtube}
#5 – Comunicazioni USB
Come comunicare con il nostro Arduino tramite la porta USB per aumentare le funzionalità dei nostri progetti e soprattutto per effettuare controlli e debug sul programma in corso.
{youtube}jRC_fRgv_tA{/youtube}
Ecco il codice del programma utilizzato:
UPDATE: LA PRIMA RIGA INDICATA NEL VIDEO E’ INUTILE AI FINI DEL FUNZIONAMENTO DEL PROGRAMMA E DUNQUE NEL CODICE SOTTOSTANTE E’ STATA RIMOSSA PER CHIAREZZA. SI E’ TRATTATO DI UN REFUSO.

void accenditi(int t);
void setup() {
Serial.begin(9600);
pinMode(13,OUTPUT);
}
void loop() {
if(Serial.available()){
char input = (char)Serial.read();
Serial.println(input);
if (input=='a') {
accenditi(1000);
}
else if (input=='b') {
accenditi(2000);
}
else if (input=='c') {
accenditi(4000);
}
else {
accenditi(16000);
}
}
}
void accenditi(int t){
digitalWrite(13,HIGH);
delay(t);
digitalWrite(13,LOW);
}
#6 – Ingressi digitali
Come utilizzare gli ingressi digitali per monitorare livelli logici esterni
{youtube}bDuWUbG8HEA{/youtube}
Ecco il codice utilizzato nel video. Provatelo, modificatelo e parliamone sul forum!

void setup(){
pinMode(13, OUTPUT);
pinMode(7, INPUT);
}
void loop(){
int i = digitalRead(7);
if(i == HIGH){
digitalWrite(13,HIGH);
}
else{
digitalWrite(13,LOW);
}
}
#7 – Il Linguaggio di Arduino
Importanti cenni al linguaggio C/C++ che vi serviranno per comprendere la struttura dei programmi utilizzati in passato e di quelli che verranno in futuro.
{youtube}iUu72bol-VM{/youtube}
#8 – Componenti e circuiti elettrici
Questa lezione è fondamentale per utilizzare dispositivi esterni alla scheda. Il corretto dimensionamento di tali componenti è indispensabile per evitare di danneggiare la scheda o i componenti stessi. Inoltre vengono affrontate le leggi di base per proseguire con il corso, leggi dalle quali non si può prescindere in un corso di questo tipo. Buona lezione e per ogni dubbio vi aspettiamo sul forum!
{youtube}p2pmrZB0eCg{/youtube}
#9 – Circuiti Esterni
Cominciamo ad utilizzare circuiti esterni alla scheda montati su bread board e conosciamo il tester che sarà utile per le misure su questi circuiti.
{youtube}Zgl7th2itPc{/youtube}
Il programma utilizzato è il seguente:

int led = 7;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH); // turn the LED on
delay(1000); // wait for a second
digitalWrite(led, LOW); // turn the LED off
delay(1000); // wait for a second
}
#10 – Segnali Analogici
Nell’ultima lezione del primo modulo impariamo come utilizzare gli ingressi analogici per misurare le tensioni con Arduino.
{youtube}DQ4T04gCGj8{/youtube}
Il programma utilizzato è il seguente:

void setup() {
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(A0);
Serial.println(sensorValue);
}
#11 – PWM – Pulse Width Modulation
Ecco la lezione numero 11, ricominciamo a parlare di Arduino con l’arrivo dell’autunno. Avevamo sospeso il corso lasciandovi con un fondamentale dubbio: come gestire un output analogico? Alfredo spiega come generare segnali PWM per “simulare” un’uscita che non sia banalmente un livello alto o basso.
{youtube}synTqpkOles{/youtube}
Il codice utilizzato, per riferimento, è il seguente.

int n = 0;
void setup() {
pinMode (9, OUTPUT);
}
void loop() {
analogWrite (9, n++);
delay (50);
if (n == 255) {
n = 0;
}
}
Per qualsiasi domanda, non esitate a chiedere su Geek Class!
#12 – Gestione delle Interruzioni
Ecco la nuova lezione su Arduino. Trattiamo la gestione delle interruzioni. Alfredo vi spiegherà cosa sono e a cosa servono.
{youtube}xoKUCzx971c{/youtube}
#13 – Le Librerie
Impariamo come funzionano le librerie e come usarle con Arduino. Scopriamo come scrivere le nostre librerie.
{youtube}GM5es4HdZWU{/youtube}
L’esempio usato nella lezione si trova su GitHub
#14 – Le Memorie
Scopriamo come gestire la memoria con arduino, come risparmiare spazio utilizzando la Flash e come salvare dati nella EEPROM.
{youtube}4nukPTKdMVk{/youtube}

