laboratorio di sistemi e reti
Transcript
laboratorio di sistemi e reti
I.I.S. “L. COSTANZO” DECOLLATURA Istituto Tecnico Industriale Allievo Garofalo Edoardo Soveria Mannelli (CZ) Classe e Sez. 3° A LABORATORIO DI SISTEMI E RETI ESERCITAZIONE N° 8 Gruppo N. 2 ANNO SCOLASTICO 2014/2015 Data 08/05/2015 TEMA DELL’ESERCITAZIONE Gestione di un display LCD con Arduino SCHEMI - E - DISEGNI Schema di montaggio Schema elettrico MATERIALI E STRUMENTI ADOPERATI Scheda Arduino, breadboard, potenziometro, display LCD e i fili elettrici. TABELLE DATI E CALCOLI #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); const int switchPin = 6; int switchState = 0; // Inizializzare la libreria con i numeri dei pin di interfaccia // Impostare una costante per il switchPin // Variabile per mantenere il valore della switchPin int prevSwitchState = 0; // Variabile per tenere il valore precedente del switchpin int reply; // Una variabile di scegliere quale risposta dalla sfera di cristallo void setup() { lcd.begin(16, 2); // Impostare il numero di colonne e righe sull'LCD pinMode(switchPin,INPUT); // Impostare il pin interruttore come ingresso lcd.print("Ask the"); // Stampa un messaggio al display LCD. // Imposta il cursore colonna 0, la linea 1 // Linea 1 è la seconda fila, dato che il conteggio inizia da 0 lcd.setCursor(0, 1); lcd.print("Crystal Ball!"); // Stampare la seconda linea } void loop() { switchState = digitalRead(switchPin); // Controllare lo stato dell'interruttore if (switchState != prevSwitchState) { // Confrontare il switchState al suo stato precedente if (switchState == LOW) { // Si sa che la palla è stato inclinato da una direzione all'altra reply = random(8); // Ha scelto una risposta a caso lcd.clear(); // Pulire lo schermo prima di stampare una nuova risposta lcd.setCursor(0, 0); // Imposta il cursore colonna 0, linea 0 lcd.print("the ball says:"); // Stampa del testo lcd.setCursor(0, 1); // Sposta il cursore sulla seconda linea switch(reply){ // Scegliere un modo di dire sul valore in risposta case 0: lcd.print("Yes"); break; case 1: lcd.print("Most likely"); break; case 2: lcd.print("Certainly"); break; case 3: lcd.print("Outlook good"); break; case 4: lcd.print("Unsure"); break; case 5: lcd.print("Ask again"); break; case 6: lcd.print("Doubtful"); break; case 7: lcd.print("No"); break; } } } prevSwitchState = switchState; // Salvare lo stato dell'interruttore corrente come ultimo stato } GRAFICI Questa è la foto in cui si vede il funzionamento del display LCD con Arduino RELAZIONE In questa esperienza abbiamo visto come fare funzionare il display LCD tramite Arduino. Per prima cosa si monta lo schema di montaggio che si trova nella prima pagina. In questa esperienza sono stati utilizzati dei nuovi materiali che sono il display e il potenziometro. Il potenziometro serve per fare girare il servomotore manualmente e gli fornisce tutti gli angoli da 0 a 180 gradi. Dopo che si è collegato tutto il circuito al PC e viene caricato il programma possiamo vedere che il tutto funziona. CONCLUSIONI In questa esperienza abbiamo imparato come utilizzare un display LCD con Arduino. Dopo abbiamo modificato il programma traducendo le parole che deve chiedere la sfera di cristallo. VALUTAZIONE DOCENTI ___________________________________ ___________________________________ ___________________________________