PIC E DISPLAY A 7 SEGMENTI CON

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PIC E DISPLAY A 7 SEGMENTI CON"

Transcript

1 Steve Blackbird (TardoFreak) PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 12 September 2010 Display a 7 segmenti I display a LED a 7 segmenti fecero apparizione più di 30 anni fa nelle prime calcolatrici tascabili, prima dell' avvento dei display a cristalli liquidi, i cosiddetti LCD. Prima dei display a LED si utilizzavano i display elettroluminescenti (VFD), sicuramente più belli dal punto di vista estetico (sono utilizzati ancora oggi in alcune autoradio) ma più difficili da pilotare. I display VFD non erano modulari, come anche gli odierni LCD se escludiamo qualche eccezione. I display a LED sono invece modulari, si possono affiancare per ottenere un visualizzatore con il numero di cifre che si desiderano. Per l' hobbista sono un semplice e comodo sistema per visualizzare numeri, per realizzare sveglie digitali, strumenti e quant' altro. I microcontrollori odierni hanno i pin delle porte di uscita in grado di pilotare direttamente i LED senza bisogno di interporre circuiti di potenza. I problemi iniziano a sorgere quando si ha bisogno di pilotare un visualizzatore composto da più cifre. Collegando direttamente i display alle uscite si fa in fretta ad esaurirle visto che ogni display a 7 segmenti necessita di almeno 7 uscite per pilotare i rispettivi segmenti (8 se si considera anche il punto decimale). Per ridurre il numero di pin di uscita si utilizza una tecnica chiamata multiplexing. Si tratta, in buona sostanza, di accendere un display per volta, per un tempo breve, trascorso il quale il display verrà spento e verrà acceso il successivo. Se la velocità di scansione è sufficientemente elevata si avrà l' impressione di vedere tutti i display accesi contemporaneamente. Questo breve articolo descrive un software che ho realizzato per implementare il multiplexing sui microcontrollori PIC della Microchip. Il software è scritto in modo da adattarsi ai display a catodo o ad anodo comune, permette la scelta dei piedini del micro deputati alle varie funzioni ed è facilmente adattabile alla maggior parte delle esigenze di visualizzazione. Il Multiplexing Lo schema elettrico qui sotto è un classico esempio di come vengono collegati i displays per realizzare un visualizzatore multiplexato a 8 digit (se ne vedono di meno perchè l' immagine è tagliata). Si tratta una basetta che ho costruito per sviluppare PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 1

2 un' applicazione con una logica programmabile. Ho dovuto inserire dei buffer perché la CPLD che usavo non è in grado di pilotare direttamente i display ma analizzandola si capisce bene il principio di funzionamento. Gli otto display sono ad anodo comune con tutti i segmenti dello stesso nome collegati insieme. Per far comparire un "1" nel display DL8 si imposta il dato sulle linee che vanno da SEGa a SEGdp (rispettivamene a , lo zero attiva il segmento) che, per così dire, collegheranno i segmenti (catodi) a massa attraverso le resistenze da 100R, poi si comanda il transistor Q8 mandando a livello 0 la linea AN7. Attraverso la resistenza R8 il transistor Q8 andra' in saturazione collegando di fatto tutti gli anodi dei 7 segmenti all' alimentazione. Il display si accende ed indica il numero "1". Disp8_t.jpg Questo procedimento (impostare i segmenti ed accendere il display corrispondente) viene eseguito parecchie volte al secondo. Per evitare lo sfarfallìo la scansione completa di tutti i display deve avvenire in almeno 40ms. Una frequenza maggiore è preferibile perché si ottiene una visione più stabile e confortevole. In questo caso specifico abbiamo un multiplexing con rapporto 1/8 (8 sono i display) ed è un limite che è meglio non superare per non pilotare i displays con correnti troppo elevate che rischierebbero di di distruggerli. Infatti la corrente di pilotaggio è più alta di quella utilizzata per un pilotaggio diretto. Che lo si voglia o no il multiplexing diminuisce la luminosità ma permette un notevole risparmio di pin di uscita del micro. PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 2

3 Il Firmware Il firmware è scritto in C per MPLAB per il microcontrollore PIC18F4685 (ma si adatta a tutti i microcontrollori) quindi semplice da capire. Oltre a fare quello che deve fare, cioè gestire un display multiplexato, può essere un valido esempio di come scrivere del software riutilizzabile in altre applicazioni. Analizziamolo quindi nel dettaglio. La prima cosa che si nota è una riga di commento che indica un' inclusione di un file. Per motivi di analisi e per per capirlo meglio avendolo tutto sott' occhio l' ho scritto in un unico file ma la prima parte suggerisco di separarla e conservarla in un file a se per i eventuali futuri utilizzi. La seconda parte è la definizione dell' hardware. Questo è il classico esempio di come scrivere un modulo software molto flessibile. In passato si tendeva (e lo si fa ancora oggi ma di meno) a raggruppare le linee di pilotaggio dei displays in una unica porta per scrivere un firmware più compatto e veloce. Oggi, fortunatamente, i micro hanno parecchia ROM e sono molto più veloci. Il signore su cui gira questo software funziona con un clock a 32MHz. ed ha ben 96 kb di flash e non ha problemi di velocità o di spazio in memoria. Quindi è preferibile fare moduli facilmente adattabili. Nel nostro caso l' adattabilità è massima. Si scelgono le linee una per una. Possono anche essere mischiate fra di loro ed il sotware funzionerà sempre egregiamente. Il prezzo che si paga è un codice più lungo e più lento ma non rappresenta affatto un problema. Nel sorgente vediamo che ho assegnato, ad esempio, il comando dell' anodo del display 0 al pin RA0, quindi DISPLAY0 sara assegnato con una #define al bit 0 del LAT relativo alla porta A. Per ogni segnale è poi necessario definire il suo bit che indica la direzione (input o output) e quindi troviamo DISPLAY0_DIR (il DIR sta per "direzione") assegnato al bit 0 del TRIS della porta A. Lo stesso si fa per le linee di pilotaggio dei segmenti. Questa parte di defines è quella che dovrà poi essere modificata per adattarla all' hardware. Alla fine di questa sezione troviamo l' assegnazione dei livelli di pilotaggio dei displays e dei segmenti. Dopo incontriamo la funzione di inizializzazione che va chiamata all' inizio del programma almeno una volta. Questa prepara opportunamente le linee di pilotaggio e disattiva tutto il display in modo da non lasciare niente di acceso. Infine troviamo la funzione che serve per accendere il display indicato dalla variabile disp7_pt e che mette sulle linee di pilotaggio dei segmenti il suo valore. Questa funzione deve essere chiamata continuamente aggiornando di volta in volta la variabile disp7_pt affinchè punti al display successivo o, arrivata all' ultimo display, che si riporti a 0. Subito dopo troviamo la routine di servizio delle interrupt a priorità alta. Il software vero e proprio per la gestione del miultiplexing fa solo tre cose: aggiorna la variabile disp7_pt, chiama la funzione di scan e ricarica il timer che genererà l' interrupt. Ho PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 3

4 scritto le due routines (quella ad alta e quella a bassa priorità) in modo che siano già presenti nello scheletro del programma pronte per essere ampliate ed utilizzate. Il compilatore richiede anche l' impostazione dei vettori per la chiamata alle routines di gestione dell' interrupt. Questi vettori sono definiti subito dopo le routines di servizio. Arriviamo infine alla main function. Che dire? Molto semplice. Inzializza il display, interrupts e timer. Quindi carica dei numeri di prova per il display ed esegue il loop di funzionamento che in questo esempio è vuoto, o meglio, deve essere riempito con tutto il software dell' applicazione, quello cha da il vero senso al programma! Esempio.jpg Il programma in c Download #include <p18f4685.h> // #include "disp7_mux.c" // Array contenente i codici dei segmenti dei displays. // Per accendere il segmento // il bit corrispondente deve essere messo a 1. // Corrispondenza dei segmenti // Bit Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 // Segmento (punto) G F E D C B A unsigned char disp7_dig[8]; PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 4

5 // Variabile utilizzata per la scansione. // Punta al display attualmente acceso // NON VIENE INCREMENTATA IN AUTOMATICO // ma va impostata prima di chiamare la // funzione scan_disp7() char disp7_pt; // Array per la decodifica dei numeri da 0 a 10 in 7 segmenti. //All' occorrenza si possono aggiungere anche i simboli da A ad F //per avere la decodifica esadecimale rom unsigned char disp7_decode[10]=\ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x27,0x7f,0x6f; // Definizione dell' hardware // defines delle linee di pilotaggio dei displays. // Queste dipendono dal circuito. // Si possono usare qualsiasi pin di qualsiasi porta a patto che possa // essere configurato come pin di uscita #define DISPLAY0 LATAbits.LATA0 #define DISPLAY0_DIR TRISAbits.TRISA0 #define DISPLAY1 LATAbits.LATA1 #define DISPLAY1_DIR TRISAbits.TRISA1 #define DISPLAY2 LATAbits.LATA2 #define DISPLAY2_DIR TRISAbits.TRISA2 #define DISPLAY3 LATAbits.LATA3 #define DISPLAY3_DIR TRISAbits.TRISA3 #define DISPLAY4 LATAbits.LATA4 #define DISPLAY4_DIR TRISAbits.TRISA4 #define DISPLAY5 LATAbits.LATA5 #define DISPLAY5_DIR TRISAbits.TRISA5 #define DISPLAY6 LATEbits.LATE0 #define DISPLAY6_DIR TRISEbits.TRISE0 PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 5

6 #define DISPLAY7 LATEbits.LATE1 #define DISPLAY7_DIR TRISEbits.TRISE1 // Defines delle linee di pilotaggio dei segmenti. // Queste dipendono dal circuito. // Si possono usare qualsiasi pin di qualsiasi porta a patto che possa // essere configurato come pin di uscita #define SEG_A LATDbits.LATD0 #define SEG_A_DIR TRISDbits.TRISD0 #define SEG_B LATDbits.LATD1 #define SEG_B_DIR TRISDbits.TRISD1 #define SEG_C LATDbits.LATD2 #define SEG_C_DIR TRISDbits.TRISD2 #define SEG_D LATDbits.LATD3 #define SEG_D_DIR TRISDbits.TRISD3 #define SEG_E LATDbits.LATD4 #define SEG_E_DIR TRISDbits.TRISD4 #define SEG_F LATDbits.LATD5 #define SEG_F_DIR TRISDbits.TRISD5 #define SEG_G LATDbits.LATD6 #define SEG_G_DIR TRISDbits.TRISD6 #define SEG_dp LATDbits.LATD7 #define SEG_dp_DIR TRISDbits.TRISD7 // Definizione del tipo di pilotaggio del dispay. In questo caso // usiamo display ad ANODO comune, quindi questi saranno // accesi con uno 0 logico. #define SEG_ON 0 #define SEG_OFF 1 // Nel caso si usino displays a catodo comune usare queste due // defines e mettere come commento le due precedenti //#define SEG_ON 1 //#define SEG_OFF 0 PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 6

7 // Definizione del tipo di pilotaggio dei comuni dei displays. // Nel nostro caso il display avra' il comune collegato quando // in uscita si avra' uno 0 perche' usiamo un transistor PNP // e display ad ANODO comune. #define DISP_ON 0 #define DISP_OFF 1 // Fine della definizione dell' hardware // Inizializzazione display a 7 segmenti void disp7_init(void) // Inizializzazione dei pin che pilotano i segmenti SEG_A_DIR = 0; SEG_A = SEG_OFF; SEG_B_DIR = 0; SEG_B = SEG_OFF; SEG_C_DIR = 0; SEG_C = SEG_OFF; SEG_D_DIR = 0; SEG_D = SEG_OFF; SEG_E_DIR = 0; SEG_E = SEG_OFF; SEG_F_DIR = 0; SEG_F = SEG_OFF; SEG_G_DIR = 0; SEG_G = SEG_OFF; SEG_dp_DIR = 0; SEG_dp = SEG_OFF; // Inizializzazione dei pin che comandano il comune dei displays DISPLAY0_DIR = 0; DISPLAY0 = DISP_OFF; DISPLAY1_DIR = 0; DISPLAY1 = DISP_OFF; DISPLAY2_DIR = 0; DISPLAY2 = DISP_OFF; DISPLAY3_DIR = 0; DISPLAY3 = DISP_OFF; DISPLAY4_DIR = 0; DISPLAY4 = DISP_OFF; DISPLAY5_DIR = 0; PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 7

8 DISPLAY5 = DISP_OFF; DISPLAY6_DIR = 0; DISPLAY6 = DISP_OFF; DISPLAY7_DIR = 0; DISPLAY7 = DISP_OFF; disp7_pt = 0; // Step di scansione dei displays // Questa funzione accende il display indicato // dalla variabile disp7_pt ed accende opportunamente // i segmenti corrispondenti alla cifra puntata void scan_disp7(void) unsigned char dato; // Spegne tutti i displays. Questa operazione va fatta subito // per evitare di visualizzare dei segmenti "fantasma" dovuti // alla commutazione DISPLAY0 = DISPLAY1 = DISPLAY2 = DISPLAY3 = DISPLAY4 \ = DISPLAY5 = DISPLAY6 = DISPLAY7 = DISP_OFF; // Imposta i segmenti dato = disp7_dig[disp7_pt]; // Analizza ogni bit per vedere se accendere il segmento // corrispondente e' necessario farlo bit per bit per poter // avere la possibilita' di scegliere arbitrariamente le uscite // del micro ed i livello di accensione // quindi prima di tutto spegne tutti i segmenti SEG_A = SEG_B = SEG_C = SEG_D = SEG_E \ = SEG_F = SEG_G = SEG_dp = SEG_OFF; // e poi accende quelli da accendere if (dato & 0x01) SEG_A = SEG_ON; if (dato & 0x02) SEG_B = SEG_ON; if (dato & 0x04) SEG_C = SEG_ON; if (dato & 0x08) SEG_D = SEG_ON; if (dato & 0x10) SEG_E = SEG_ON; if (dato & 0x20) SEG_F = SEG_ON; PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 8

9 if (dato & 0x40) SEG_G = SEG_ON; if (dato & 0x80) SEG_dp = SEG_ON; // Attiva il nuovo display // In questa parte si sceglie quale linea attivare switch (disp7_pt) case 0: DISPLAY0 = DISP_ON; break; case 1: DISPLAY1 = DISP_ON; break; case 2: DISPLAY2 = DISP_ON; break; case 3: DISPLAY3 = DISP_ON; break; case 4: DISPLAY4 = DISP_ON; break; case 5: DISPLAY5 = DISP_ON; break; case 6: DISPLAY6 = DISP_ON; break; case 7: DISPLAY7 = DISP_ON; break; // fine file disp7_mux.c // Routines di servizio delle interrupts // Routine di servizio livello alto #pragma interrupt interrupt_high void interrupt_high(void) // Per riconoscere quale dispositivo ha generato l' interrupt // e' necessario leggere lo stato del bit associato. Questo // perche' c'e' una sola routine di servizo dell' interrupt e // qui dentro tutto deve essere fatto // Timer0 interrupt sull' overflow. if (INTCONbits.TMR0IF) // Una volta verificato che e' il Timer0 a richiedere e' necessario // resettare il bit che ha generato l' interrupt per prevenire // ulteriori chiamate INTCONbits.TMR0IF = 0; // Da qui in poi bisogna scrivere il software vero e proprio che // deve essere eseguito. PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 9

10 // Per prima cosa incrementa il puntatore alla cifra che dovra' // essere accesa if (disp7_pt <7) disp7_pt++; else disp7_pt = 0; // Chiama ora la funzione che effettua il refresh del display scan_disp7(); // Infine ricarica il Timer0. Questo andra' ad incrementarsi. // Quando andra' in overflow questa routine verra' // nuovamente chiamata. TMR0H = 0xF0; TMR0L = 0x00; #pragma code // Routine di servizio livello basso #pragma interruptlow interrupt_low void interrupt_low(void) #pragma code // Definizione dei vettori di interrupt // Queste due funzioni servono esclusivamente a dirottare il // programma su quelle che sono le effettive funzioni di gestione // delle interrupts // Vettore per livello alto #pragma code InterruptVectorHigh = 0x08 void InterruptVectorHigh (void) _asm goto interrupt_high _endasm //jump to interrupt routine // Vettore per livello basso #pragma code InterruptVectorLow = 0x18 void InterruptVectorLow (void) _asm goto interrupt_low _endasm //jump to interrupt routine #pragma code // Main Function PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 10

11 void main(void) ADCON1 = 0x0F; // Tutti ingressi digitali // Inizializza il display disp7_init(); // Inizializza le interrupts ed il timer 0 che servira' per la scansione INTCON = 0x20; //disable global and enable TMR0 interrupt INTCON2 = 0x84; //TMR0 high priority RCONbits.IPEN = 1; //enable priority levels TMR0H = 0; //clear timer TMR0L = 0; //clear timer T0CON = 0x80; //set up timer0 - prescaler 1:2 INTCONbits.GIEH = 1; //enable interrupts // Per provare il software il display indichera' " " disp7_dig[0] = disp7_decode[7]; disp7_dig[1] = disp7_decode[6]; disp7_dig[2] = disp7_decode[5]; disp7_dig[3] = disp7_decode[4]; disp7_dig[4] = disp7_decode[3]; disp7_dig[5] = disp7_decode[2]; disp7_dig[6] = disp7_decode[1]; disp7_dig[7] = disp7_decode[0]; // loop infinito principale while(1) Estratto da " index.php?title=userspages:tardofreak:picmux7seg" PIC E DISPLAY A 7 SEGMENTI CON MULTIPLEXING 11

Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio.

Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio. Lampeggio di 8 led Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio. Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1

Dettagli

Architettura dei Microcontrollori Microchip PIC18F

Architettura dei Microcontrollori Microchip PIC18F Architettura dei Microcontrollori Microchip PIC18F A. Romani Elettronica dei Sistemi Digitali L-A Cos è un microcontrollore? Differenza tra Microprocessore e Microcontrollore à Microprocessore: normalmente

Dettagli

Davide Gennaretti, Matteo Nicolini

Davide Gennaretti, Matteo Nicolini Seminario sui Microcontrollori Davide Gennaretti, Matteo Nicolini AA 2003-04 II Facoltà di Ingegneria Elettronica Cesena Cosa sono i microcontrollori? Piccoli computer concentrati in un chip Un Datapath

Dettagli

Corso introduttivo sui microcontrollori. Un sistema tastierino a matrice 4x4 da collegare alla nostra demoboard AnxaPic.

Corso introduttivo sui microcontrollori. Un sistema tastierino a matrice 4x4 da collegare alla nostra demoboard AnxaPic. Corso introduttivo sui microcontrollori Un sistema tastierino a matrice 4x4 da collegare alla nostra demoboard AnxaPic Nicola Amoroso namoroso@mrscuole.net na_16f88_key4x4 1 Colleghiamo un tastierino a

Dettagli

Guida alla Quarta Esercitazione

Guida alla Quarta Esercitazione Obiettivi Guida alla Quarta Esercitazione curata da Ilaria Casale Dopo aver svolto questa esercitazione si sarà appreso come: Utilizzare una breadboard Verificare la presenza dell'alimentazione della scheda

Dettagli

Corso di programmazione Arduino DI MALVEZZI DAVIDE

Corso di programmazione Arduino DI MALVEZZI DAVIDE Corso di programmazione Arduino DI MALVEZZI DAVIDE Argomenti Pin digitali e pin analogici Gestione di timer e bottoni Utilizzo della porta seriale Oggetto String Controllo di schermi LCD Utilizzo dell

Dettagli

Corso di Informatica Applicata. Lezione 7. Università degli studi di Cassino

Corso di Informatica Applicata. Lezione 7. Università degli studi di Cassino Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 7 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39

Dettagli

"Centrale per risparmio energetico Mod. R01"

Centrale per risparmio energetico Mod. R01 SCHEDA TECNICA "Centrale per risparmio energetico Mod. R01" La presente relazione descrive le caratteristiche ed il funzionamento hardware e software del prototipo in oggetto, atto a limitare gli sprechi

Dettagli

Contatore asincrono esadecimale

Contatore asincrono esadecimale Contatore asincrono esadecimale Il contatore asincrono è un circuito composto da un generatore di onde quadre (clock), quattro Flip Flop JK con Preset e Clear attivi a fronte logico basso. Preset, J e

Dettagli

Facciamo lampeggiare un led

Facciamo lampeggiare un led Facciamo lampeggiare un led Passiamo a fare qualche esercizio, il più semplice per iniziare a programmare con Arduino è il canonico esercizio blink, che trovate anche negli esempi del programma. Si tratta

Dettagli

Applicazioni dei microcontrollori PIC

Applicazioni dei microcontrollori PIC Applicazioni dei microcontrollori PIC In questa unità vengono esposte le modalità di realizzazione di un circuito hardware con il microcontroller PIC16C84 (o PIC16F84), per la prova dei programmi presentati

Dettagli

Esercitazione : REALIZZAZIONE IMPIANTO SEMAFORICO

Esercitazione : REALIZZAZIONE IMPIANTO SEMAFORICO Esercitazione : REALIZZAZIONE IMPIANTO SEMAFORICO Strumenti utilizzati Strumento Marca e modello Caratteristiche Alimentatore Scheda ALTERA Fotocamera digitale Topward electronics TPS- 4000 ALTERA Max

Dettagli

DISPOSITIVO PER LA LETTURA DI UN ENCODER INCREMENTALE

DISPOSITIVO PER LA LETTURA DI UN ENCODER INCREMENTALE DISPOSITIVO PER LA LETTURA DI UN ENCODER INCREMENTALE Si propone l'uso di un microcontrollore pic16f84 della Microchip. Si acquisiscono i segnali di un encoder con due canali in quadratura con la possibilità

Dettagli

FONDAMENTI DI ARDUINO

FONDAMENTI DI ARDUINO FONDAMENTI DI ARDUINO LEZIONE 1: LE BASI 8 novembre 2016 presso POLIFACTORY il makerspace del Politecnico di Milano PROGRAMMA DEL CORSO 8/11 Le basi, corrente elettrica, led, resistenze 10/11 Ingressi

Dettagli

Fagor Automation S. Coop. MANV-I/O. Manuale di installazione e funzionamento. Manual code: Manual version: 0404

Fagor Automation S. Coop. MANV-I/O. Manuale di installazione e funzionamento. Manual code: Manual version: 0404 Fagor Automation S. Coop. MANV-I/O Manuale di installazione e funzionamento Manual code: 14460006 Manual version: 0404 1. OPZIONE: INGRESSI /USCITE (X2) Con questa opzione viene offerto un connettore addizionale

Dettagli

Pilotare un motore passo-passo, in questo caso il modello della Sanyo le cui caratteristiche principali sono quelle di figura1.

Pilotare un motore passo-passo, in questo caso il modello della Sanyo le cui caratteristiche principali sono quelle di figura1. 10. Pilotaggio unipolare di un motore passo-passo Scopo della prova Pilotare un motore passo-passo, in questo caso il modello 103-547-52500 della Sanyo le cui caratteristiche principali sono quelle di

Dettagli

Versione N 1.0. LaurTec. Orologio con display 7 segmenti. 4 Digits Clock. Autore : Ivo Colleoni ID: UP0012-IT. Copyright 2016 Mauro Laurenti 1/19

Versione N 1.0. LaurTec. Orologio con display 7 segmenti. 4 Digits Clock. Autore : Ivo Colleoni ID: UP0012-IT. Copyright 2016 Mauro Laurenti 1/19 Versione N 1.0 LaurTec Orologio con display 7 segmenti 4 Digits Clock Autore : Ivo Colleoni ID: UP0012-IT Copyright 2016 Mauro Laurenti 1/19 INFORMATIVA Come prescritto dall'art. 1, comma 1, della legge

Dettagli

AUTOMAZIONE CANCELLO SCORREVOLE A MICROCONTROLLORE con ARDUINO

AUTOMAZIONE CANCELLO SCORREVOLE A MICROCONTROLLORE con ARDUINO AUTOMAZIONE CANCELLO SCORREVOLE A MICROCONTROLLORE con ARDUI DATI DI PROGETTO Un sistema a microcontrollore controlla un dispositivo automatico di apertura e chiusura di un cancello scorrevole, mediante

Dettagli

perror: individuare l errore quando una system call restituisce -1

perror: individuare l errore quando una system call restituisce -1 perror: individuare l errore quando una system call restituisce -1 Quando una system call (o una funzione di libreria) non va a buon fine, restituisce come valore -1 Come si fa a sapere più precisamente

Dettagli

Indice. Introduzione 15. L hardware 24. Il software 43. Introduzione al linguaggio di Arduino 60. Basi del linguaggio di Arduino 65

Indice. Introduzione 15. L hardware 24. Il software 43. Introduzione al linguaggio di Arduino 60. Basi del linguaggio di Arduino 65 Indice Introduzione 15 1.1 - Un po di storia 15 1.2 - Le vecchie schede 18 1.3 - La filosofia open 23 L hardware 24 2.1 - La scheda Arduino UNO 24 2.1.1 - Avvertenze sull uso della scheda 27 2.2 - Il microcontrollore

Dettagli

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Processori per sistemi di controllo Prof. Carlo Rossi DEIS - Università di Bologna Tel: 051 2093020 email: crossi@deis.unibo.it Classificazione Processori

Dettagli

Corso Arduino Maggio Riccardo Binetti Lezione 1 - Blinking LEDs with style

Corso Arduino Maggio Riccardo Binetti Lezione 1 - Blinking LEDs with style Corso Arduino 2014 21 Maggio 2014 Riccardo Binetti punkerbino@gmail.com Lezione 1 - Blinking LEDs with style Riccardo Binetti Arduino 2014 Lezione 1 1 / 24 Fate domande Riccardo Binetti Arduino 2014 Lezione

Dettagli

STRUTTURE DI CONTROLLO DEL C++

STRUTTURE DI CONTROLLO DEL C++ STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto

Dettagli

HP LED Driver Shield. EtherMania di Signorini Marco Via Cadore 9 21046 MALNATE (VA) P.I. 03111760124 REA VA-324137 http://www.ethermania.

HP LED Driver Shield. EtherMania di Signorini Marco Via Cadore 9 21046 MALNATE (VA) P.I. 03111760124 REA VA-324137 http://www.ethermania. HP LED Driver Shield Introduzione Lo HPLEDDriverShield e' uno shield per Arduino (UNO e Mega 2560) che permette di pilotare fino a 4 stringhe di LED High Power. Ogni canale e' dotato di un preciso generatore

Dettagli

CTU Presenta. Contest Automation con Arduino. IK0XBX - Francesco

CTU Presenta. Contest Automation con Arduino. IK0XBX - Francesco CTU Presenta Contest Automation con Arduino IK0XBX - Francesco Arduino cosa è??? Arduino Uno lo standard Arduino Mega più in/out e 4 seriali Arduino Nano quello tascabile Arduino è una piattaforma open-source

Dettagli

LO HAI MAI REALIZZATO CON UN PIC? LA LAMPADA SIBILLA! 1

LO HAI MAI REALIZZATO CON UN PIC? LA LAMPADA SIBILLA! 1 Paolo Rognoni (Paolino) LO HAI MAI REALIZZATO CON UN PIC? LA LAMPADA SIBILLA! 28 October 2010 Voglio raccontare la storia che mi ha portato a realizzare una lampada segna passo, una lampada notturna di

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Programma di simulazione per Arduino

Programma di simulazione per Arduino Programma di simulazione per Arduino Un interessante simulatore di circuiti elettronici che possono impiegare Arduino (ma non solo) si può usare online all indirizzo circuits.io Per utilizzare questo servizio

Dettagli

Componenti e connessioni. Capitolo 3

Componenti e connessioni. Capitolo 3 Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura

Dettagli

Circuiti antirimbalzo

Circuiti antirimbalzo Circuiti antirimbalzo La figura seguente mostra una semplice applicazione di un latch SR per l'accensione o lo spegnimento di un LED mediante due pulsanti "con ritorno": Le due resistenze R sono resistenze

Dettagli

Interfacciamento di periferiche I/O al μp 8088

Interfacciamento di periferiche I/O al μp 8088 Interfacciamento di periferiche I/O al μp 8088 5.1 Principali segnali della CPU 8086 5.2 Periferiche di I/O e loro gestione 5.3 Collegamento di periferiche di input 5.4 Collegamento di periferiche di output

Dettagli

Caratteri e stringhe

Caratteri e stringhe Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un

Dettagli

Le sintonie elettroniche per l ATV

Le sintonie elettroniche per l ATV Le sintonie elettroniche per l ATV II Meeting ATV Magenta 18/04/2004 IW2LFD Luciano Arrigoni iw2lfd@libero.it http://digilander.libero.it/iw2lfd A.R.I. Sezione di Gallarate IQ2GM - http://www.qsl.net/iq2gm/

Dettagli

PRIMI PASSI CON ARDUINO

PRIMI PASSI CON ARDUINO PRIMI PASSI CON ARDUINO 1) Accensione e spegnimento del led presente sulla scheda Arduino. La scheda Arduino presenta, a bordo, alcuni led uno dei quali può essere controllato dal pin digitale 13; quando

Dettagli

..a cura di Cammisuli Chiara

..a cura di Cammisuli Chiara I ISTITUTO D ISTRUZIONE SUPERIORE Michelangelo Bartolo di PACHINO..a cura di Cammisuli Chiara Il radiocomando è un dispositivo utilizzato per comandare a distanza un'apparecchiatura usando le onde radio

Dettagli

Il Theremin con il microcontrollore

Il Theremin con il microcontrollore Il Theremin con il microcontrollore Possiamo costruire uno strumento simile al Theremin utilizzando un dispositivi programmabile come il microcontrollore e un sensore di distanza (ultrasuoni). A secondo

Dettagli

Tutorial Display LCD e PIC

Tutorial Display LCD e PIC Tutorial Display LCD e PIC Si fa presente per coloro che sono a "digiuno" con la programmazione dei PIC di leggersi il tutorial in questo link http://www.grix.it/viewer.php?page=429 Descrizione Questo

Dettagli

Cappa con unità sensore

Cappa con unità sensore Cappa con unità sensore SENSORI Sensore di umidità Sensore di temperatura Cavo di collegamento Sensore di bassa temperatura 2 POSIZIONE DEI SENSORI Sensore di temperatura (nella parte superiore della cappa)

Dettagli

INTRODUZIONE ALLE LOGICHE PROGRAMMABILI

INTRODUZIONE ALLE LOGICHE PROGRAMMABILI INTRODUZIONE ALLE LOGICHE PROGRAMMABILI TEMA: L DESCRIZIONE: Introduzione al linguaggio VHDL per la descrizione dell hardware e sintesi di un circuito logico. LUOGO: Laboratori Nazionali di Legnaro (PD)

Dettagli

C:\ProgrammiC\Dino18\dino.c

C:\ProgrammiC\Dino18\dino.c 1 /* ////////////////////////////////////////////////////////////////////////////////////// 2 ** File: Dino.c 3 */ 4 #define Ver "Dino 18 ver 2.51\r by Guiott" 5 /* Autore: Guido Ottaviani-->g.ottaviani@mediaprogetti.it

Dettagli

C: panoramica. Violetta Lonati

C: panoramica. Violetta Lonati C: panoramica Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010 Violetta Lonati

Dettagli

Elettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti

Elettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti Elettronica dei Sistemi Programmabili A.A. 2013-2014 Microcontrollori Introduzione allo sviluppo di progetti Premessa Qualunque sistema basato su microcontrollore deve eseguire un codice memorizzato in

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria

Dettagli

GESTIONE DEI TEMPI CON IL TIMER1 DEL PIC16F876

GESTIONE DEI TEMPI CON IL TIMER1 DEL PIC16F876 GESTIONE DEI TEMPI CON IL TIMER1 DEL PIC16F876 6.0 TIMER1 MODULE The Timer1 module is a 16-bit timer/counter consisting of two 8-bit registers (TMR1H and TMR1L), which are readable and writable. The TMR1

Dettagli

Sistema EliminaCode mod. GESCO Digital Signage TOUCH SCREEN Con Display di Sportello mod. MONITOR LCD 7

Sistema EliminaCode mod. GESCO Digital Signage TOUCH SCREEN Con Display di Sportello mod. MONITOR LCD 7 Sistema EliminaCode mod. GESCO Digital Signage TOUCH SCREEN Con Display di Sportello mod. MONITOR LCD 7 Sistema EliminaCode mod. GESCO Digital Signage TOUCH SCREEN Con Premessa Il Monitor LCD da 7 viene

Dettagli

Embedded Software Sviluppo di uno Scheduler di base per PIC18. Tutorial. Embedded Software. Sviluppo di uno Scheduler di base per PIC18.

Embedded Software Sviluppo di uno Scheduler di base per PIC18. Tutorial. Embedded Software. Sviluppo di uno Scheduler di base per PIC18. Tutorial Embedded Software Sviluppo di uno Scheduler di base per PIC18 Pagina 1 Sommario 1. INTRODUZIONE... 3 2. COSA CI SERVE?... 3 3. UN PO DI TEORIA... 4 4. DALLA TEORIA ALLA PRATICA... 5 5. IMPLEMENTAZIONE...

Dettagli

mendiante un ciclo e finché il segnale rimane alto, si valuta il tempo T3 usando il timer del microcontrollore e una variabile di conteggio.

mendiante un ciclo e finché il segnale rimane alto, si valuta il tempo T3 usando il timer del microcontrollore e una variabile di conteggio. Svolgimento (a) Il sensore di temperatura ha un uscita digitale a 9 bit, emettendo un codice binario proporzionale al valore Temp richiesto. Possiamo pensare si tratti di un dispositivo 1-Wire. Un sistema

Dettagli

Siemens S.p.A Apparecchi di controllo SENTRON. Aggiornamento Catalogo SENTRON 02/2012

Siemens S.p.A Apparecchi di controllo SENTRON. Aggiornamento Catalogo SENTRON 02/2012 Siemens S.p.A. 2012 Apparecchi di controllo SENTRON 1 Caratteristiche generali L accensione contemporanea di più elettrodomestici e il conseguente sovraccarico di potenza, possono causare il distacco del

Dettagli

12 - timer da cucina display a 4 cifre

12 - timer da cucina display a 4 cifre 12 - timer da cucina display a 4 cifre Il display led da 4 cifre utilizzato in questo esercizio e il modello HS410561K-32. Questo modello, e caratterizzato da 4 anodi (uno per ogni cifra) e dai 8 catodi,

Dettagli

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} } ERRATA CORRIGE Pulizia del buffer di input: come fare? (1) Dopo aver richiamato getchar() per prelevare un carattere dal buffer di input, inseriamo una seconda chiamata a getchar(), senza assegnare il

Dettagli

Corso introduttivo sui microcontrollori A. S. 2007 2008. Programmare i PIC in C. Timers Interrupts Prerequisiti: Lezione7 Lezione8.

Corso introduttivo sui microcontrollori A. S. 2007 2008. Programmare i PIC in C. Timers Interrupts Prerequisiti: Lezione7 Lezione8. Corso introduttivo sui microcontrollori A. S. 2007 2008 Programmare i PIC in C Prerequisiti: Lezione7 Lezione8 Nicola Amoroso namoroso@mrscuole.net NA L15 1 Timers - Interrupts I timers e gli Interrupts

Dettagli

Componenti principali

Componenti principali Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria

Dettagli

Bytronic s.r.l. via Como, Cairate (VA) Tel. 0331/ Fax. 0331/ Partita IVA SCHEDA TECNICA BY5165T

Bytronic s.r.l. via Como, Cairate (VA) Tel. 0331/ Fax. 0331/ Partita IVA SCHEDA TECNICA BY5165T BY5165T CARICABATTERIA INTELLIGENTE 2 x 12V/4A La presente documentazione è di proprietà esclusiva di Bytronic S.r.l. Via Como 55 21050 Cairate (VA) ITALY. Essa non può essere copiata, modificata o distribuita

Dettagli

Versione N 1.0c LaurTec Metro ad Ultrasuoni Autore : ID:

Versione N 1.0c LaurTec Metro ad Ultrasuoni Autore :   ID: Versione N 1.0c LaurTec Metro ad Ultrasuoni Autore : Mauro Laurenti email: info.laurtec@gmail.com ID: PJ6001-IT Copyright 2006 Mauro Laurenti 1/10 INFORMATIVA Come prescritto dall'art. 1, comma 1, della

Dettagli

Uno dei metodi più utilizzati e

Uno dei metodi più utilizzati e TEORIA MHZ RISORSE SPECIALE PRATICA Quinta parte n 257 - Novembre 2006 Realizzazione di un timer digitale programmabile Sesta parte n 258 - Dicembre 2006 Uso delle interfacce seriali Settima parte n 259

Dettagli

Scheda Didattica di Sperimentazione.

Scheda Didattica di Sperimentazione. Corso di BASCOM 8051 - (Capitolo 4 6 ) Corso Teorico/Pratico di programmazione in BASCOM 8051. Autore: DAMINO Salvatore. Scheda Didattica di Sperimentazione. La DEB 01 (Didactics Experimental Board) è

Dettagli

Logica cablata (wired logic)

Logica cablata (wired logic) Logica cablata (wired logic) Cosa succede quando si collegano in parallelo le uscite di più porte appartenenti alla stessa famiglia logica? Si realizza una ulteriore funzione logica tra le uscite Le porte

Dettagli

Anno scolastico Supervisore Prof. Giancarlo Fionda Insegnante di Elettronica

Anno scolastico Supervisore Prof. Giancarlo Fionda Insegnante di Elettronica A cura dell alunna Martina Covelli della classe IV sez. A Indirizzo Informatica Sperimentazione ABACUS Dell Istituto Tecnico Industriale Statele A. Monaco di Cosenza Supervisore Prof. Giancarlo Fionda

Dettagli

GENERAZIONE DI FUNZIONE LOGICA CON MULTIPLEXER

GENERAZIONE DI FUNZIONE LOGICA CON MULTIPLEXER GENERAZIONE I UNZIONE LOGICA CON MULTIPLEXER Spesso è conveniente utilizzare un multiplexer come generatore di funzione logica al fine di limitare il numero di circuiti integrati che bisognerebbe, altrimenti,

Dettagli

MDV-CCM03 CONTROLLO REMOTO

MDV-CCM03 CONTROLLO REMOTO MDV-CCM03 CONTROLLO REMOTO fino a 64 unità interne con programmazione giornaliera per impianti VRF Tekno Point Italia. CARATTERISTICHE GENERALI Il controller centralizzato CCM03 è in grado di gestire una

Dettagli

PIERIN COME MICRO GENERATORE DI SEGNALI 1

PIERIN COME MICRO GENERATORE DI SEGNALI 1 Fabio Bicciato (c1b8) PIERIN COME MICRO GENERATORE DI SEGNALI 13 September 2013 Introduzione In questo secondo articolo della serie "Pierin come Micro strumentino" proviamo a realizzare un semplice generatore

Dettagli

Lezione 21 e 22. Valentina Ciriani ( ) Laboratorio di programmazione. Laboratorio di programmazione. Lezione 21 e 22

Lezione 21 e 22. Valentina Ciriani ( ) Laboratorio di programmazione. Laboratorio di programmazione. Lezione 21 e 22 Lezione 21 e 22 - Allocazione dinamica delle matrici - Generazione di numeri pseudocasuali - Funzioni per misurare il tempo - Parametri del main - Classificazione delle variabili Valentina Ciriani (2005-2008)

Dettagli

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni Anno Accademico 2011/2012 Segnali: Interrupt software per la gestione di eventi asincroni Concetto di segnale Un segnale è un interrupt software Un segnale può essere generato da un processo utente o dal

Dettagli

Prof. Capuzzimati Mario - ITIS Magistri Cumacini - Como MICROCONTROLLORE

Prof. Capuzzimati Mario - ITIS Magistri Cumacini - Como MICROCONTROLLORE Microcontrollori MICROCONTROLLORE I Microcontrollori (MCU: MicroController Unit) sono dispositivi integrati su un singolo chip, che interagiscono direttamente col mondo esterno, grazie a un programma residente.

Dettagli

COMPONENTI PER L ELETTRONICA INDUSTRIALE E IL CONTROLLO DI PROCESSO. Misuratori ed indicatori digitali da pannello DAT9550, DAT8050 e SERIE DAT700

COMPONENTI PER L ELETTRONICA INDUSTRIALE E IL CONTROLLO DI PROCESSO. Misuratori ed indicatori digitali da pannello DAT9550, DAT8050 e SERIE DAT700 COMPONENTI PER L ELETTRONICA INDUSTRIALE E IL CONTROLLO DI PROCESSO Misuratori ed indicatori digitali da pannello DAT9550, DAT8050 e SERIE DAT700 La serie di misuratori e indicatori digitali è costituita

Dettagli

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori

Architettura degli elaboratori - CPU multiciclo A.A. 2016/17. Architettura degli elaboratori Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it Progetto

Dettagli

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli

Dettagli

M320 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

M320 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/2 Sessione ordinaria 2008 Seconda prova scritta M320 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: ELETTRONICA E TELECOMUNICAZIONI Tema di: ELETTRONICA (Testo valevole

Dettagli

D2x - Presentazione della lezione D2. D2a STADI DI USCITA

D2x - Presentazione della lezione D2. D2a STADI DI USCITA D2x - Presentazione della lezione D2 /- Obiettivi! conoscere diverse forme di stadi di uscita di dispositivi logici! saper calcolare resistori di pull-up per open collector! saper eseguire calcoli di fanout!

Dettagli

Per controllare un motore DC (funzionante in corrente continua) con Arduino, devi utilizzare il circuito integrato Ponte H (nel mio caso un L293NE

Per controllare un motore DC (funzionante in corrente continua) con Arduino, devi utilizzare il circuito integrato Ponte H (nel mio caso un L293NE Controllo di velocità e verso di un motore DC con Arduino con L293NE Per controllare un motore DC (funzionante in corrente continua) con Arduino, devi utilizzare il circuito integrato Ponte H (nel mio

Dettagli

Centralina controllo pompa

Centralina controllo pompa Centralina controllo pompa INDICE 1 Il progetto...4 2 Gestione...6 2.1 TaskA_Main...6 2.2 TaskB_CpuClock...8 2.3 TaskC_InOut...12 2.4 Task ausiliari...13 2.5 Parametri ritentivi...13 3 Sonar...14 3.1 TaskD_Sonar...17

Dettagli

Pilotaggio high-side

Pilotaggio high-side Interruttori allo stato solido Introduzione Il pilotaggio high-side è più difficile da realizzare del low-side in quanto nel secondo un capo dell interruttore è a massa Non sempre è possibile il pilotaggio

Dettagli

Scheda ProfiNET per SLVD-N

Scheda ProfiNET per SLVD-N Scheda ProfiNET per SLVD-N Rev.0.1 Ottobre 2014 1.SCHEDE PROFINET La (codice prodotto: OPPRONET) è costituita da due connettori RJ45 e da due selettori, i quali definiscono l indirizzo rappresentato da

Dettagli

Che cos è la barriera luminosa?

Che cos è la barriera luminosa? BARRIERA LUMINOSA Che cos è la barriera luminosa? Pezzi da contare Diodo IR o Laser (emittente) Pezzi contati Direzione del nastro trasportatore FOTODIODO (ricevitore) Direzione del nastro trasportatore

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Lezione 3 PWM e motori. Stefano Panichi e Giulio Fieramosca

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Lezione 3 PWM e motori. Stefano Panichi e Giulio Fieramosca CORSO ARDUINO Giulio Fieramosca Stefano Panichi Corso ASEV 2015 Lezione 3 PWM e motori PWM modulazione a larghezza d'impulso Formule e Dati Ton = 1/3 del periodo Toff = 2/3 del periodo Duty Cycle = Ton

Dettagli

Display numerico con i LED

Display numerico con i LED Display numerico con i LED Ferrari, Porti, Zannetti 1 febbraio 2016 1 Scheda Questo progetto prevede l unione di più caratteristiche prese dai vari progetti fatti in precedenza, per riuscire a formare

Dettagli

SVOLGIMENTO SECONDA PROVA 2017 SISTEMI AUTOMATICI: PARTE 1

SVOLGIMENTO SECONDA PROVA 2017 SISTEMI AUTOMATICI: PARTE 1 SVOLGIMENTO SECONDA PROVA 2017 SISTEMI AUTOMATICI: PARTE 1 Tema svolto Il testo non precisa l'estensione della rete sperimentale della fase di strong motion dei terremoti. Si può quindi ragionevolmente

Dettagli

5. Esercitazioni di laboratorio

5. Esercitazioni di laboratorio 5. Esercitazioni di laboratorio 5.1 Controllo di temperatura con LM335 Viene proposto il progetto di un attuatore, il quale avvii un dispositivo di potenza quando la temperatura misurata scende al di sotto

Dettagli

Corso di BASCOM (Capitolo 1 5 ) Corso Teorico/Pratico di programmazione in BASCOM Autore: DAMINO Salvatore. D I S P L A Y L C D (3).

Corso di BASCOM (Capitolo 1 5 ) Corso Teorico/Pratico di programmazione in BASCOM Autore: DAMINO Salvatore. D I S P L A Y L C D (3). Corso di BASCOM 8051 - (Capitolo 1 5 ) Corso Teorico/Pratico di programmazione in BASCOM 8051. Autore: DAMINO Salvatore. D I S P L A Y L C D (3). GESTIONE DI UNA SEMPLICE CALCOLATRICE. Questo programma

Dettagli

In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a

In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a Arduino lettore e trasmettitore di codici IR In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a distanza per

Dettagli

Modulo LCD: interfacciamento e gestione

Modulo LCD: interfacciamento e gestione Modulo LCD: interfacciamento e gestione Per visualizzare messaggi o i dati relativi a misure effettuate si puo usare un display LCD. In figura e rappresentato un LCD a 2 righe e 16 colonne. Il display

Dettagli

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii

CORSO ARDUINO. Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM Jacopo Belli Giulio Fieramosca Luca Mattii CORSO ARDUINO Jacopo Belli Giulio Fieramosca Luca Mattii GOLEM 2016 1 FAQ time domande e risposte? 2 Iterazioni: while Si usa per ripetere un blocco di codice finché una condizione è vera, ma senza tenere

Dettagli

Introduzione ai puntatori in C Definizione

Introduzione ai puntatori in C Definizione Introduzione ai puntatori in C Definizione Un puntatore è una variabile che contiene l indirizzo di un altra variabile Tramite i puntatori si può quindi accedere a un oggetto indirettamente (si usa il

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

MANUALE ISTRUZIONI CONTROLLER DIGITALE A SINGOLA PORTA PER LA GESTIONE DI 2048 LED PIXEL ALIMENTAZIONE 5V / 7,5-24V (T-1000S)

MANUALE ISTRUZIONI CONTROLLER DIGITALE A SINGOLA PORTA PER LA GESTIONE DI 2048 LED PIXEL ALIMENTAZIONE 5V / 7,5-24V (T-1000S) MANUALE ISTRUZIONI Versione 1.0 del 31 maggio 2013 CONTROLLER DIGITALE A SINGOLA PORTA PER LA GESTIONE DI 2048 LED PIXEL ALIMENTAZIONE 5V / 7,5-24V (T-1000S) 5971000 Leggere attentamente il presente manuale

Dettagli

Schema elettrico degli ingressi!

Schema elettrico degli ingressi! INGRESSI E USCITE Ingressi! Sono nella parte bassa del PLC e sono divisi in due gruppi. Ogni morsetto può ospitare al massimo due fili. Assicurarsi di non lasciare scoperto del filo di rame. Svitare a

Dettagli

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma. Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti

Dettagli

Circuito logico AND / AND Gate

Circuito logico AND / AND Gate Circuito logico AND / AND Gate Introduzione Lo scopo del progetto è creare un circuito elettrico che rappresenti la tabella di verità della porta logica AND. Il circuito logico preso in analisi restituisce

Dettagli

ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE. Indirizzo: Elettronica e Telecomunicazioni. Tema di Sistemi Elettronici Automatici TRACCIA 2

ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE. Indirizzo: Elettronica e Telecomunicazioni. Tema di Sistemi Elettronici Automatici TRACCIA 2 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Indirizzo: Elettronica e Telecomunicazioni Tema di stemi Elettronici Automatici TRACCIA 2 Quest anno la traccia ministeriale è stata suddivisa in due temi,

Dettagli

Progetto per il corso di Microcontrollori: Gestore Ambientale

Progetto per il corso di Microcontrollori: Gestore Ambientale UNIVERSITÀ DEGLI STUDI DELL INSUBRIA Corso di Laurea Magistrale in Informatica Progetto per il corso di Microcontrollori: Gestore Ambientale Studente: Bonizzi Mauro Matr. 711020 Anno Accademico 2013/2014

Dettagli

Domotica con Arduino. Prima di proseguire con la descrizione del progetto, elenco, di seguito, il materiale utilizzato:

Domotica con Arduino. Prima di proseguire con la descrizione del progetto, elenco, di seguito, il materiale utilizzato: Domotica con Arduino Questo progetto, che chiamo sinteticamente come da titolo, si occupa di gestire l accensione e lo spegnimento di elettrodomestici e illuminazione, attraverso una semplice interfaccia

Dettagli

TM1638 BOARD con ARDUINO

TM1638 BOARD con ARDUINO TM1638 BOARD con ARDUINO 8-Bit LED 8-Bit Digital 8-Bit Key TM1638. Ci sono solo tre linee di controllo.c'è una libreria e la scheda ha solo 3 pin di controllo, più alimentazione e la terra. I pin di controllo

Dettagli

Far lampeggiare un led o forse un semaforo?

Far lampeggiare un led o forse un semaforo? Far lampeggiare un led o forse un semaforo? Lezione 1 di Arduino Grazie per le slide a Giacomo Magisano, Duilio Peroni, Michele Maffucci Il circuito Un circuito è un percorso chiuso fatto da conduttore

Dettagli

Le Funzioni e la Ricorsione

Le Funzioni e la Ricorsione Aula V Dip. di Matematica G. Castelnuovo Univ. di Roma La Sapienza Le Funzioni e la Ricorsione Igor Melatti Slides disponibili (assieme ad altro materiale) in: http://www.dsi.uniroma1.it/ melatti/programmazione1.2007.2008.html

Dettagli

Programmatore serie DIG

Programmatore serie DIG Programmatore serie DIG Manuale d uso e di programmazione grammatore_serie_dig_ita.indd 1 12/07/12 14.4 1.1 INTERFACCIA UTENTE DESCRIZIONE DEL DISPLAY E DELLE ICONE L interfaccia utente della centralina

Dettagli

Esercitazione 11. Liste semplici

Esercitazione 11. Liste semplici Esercitazione 11 Liste semplici Liste semplici (o lineari) Una lista semplice (o lineare) è una successione di elementi omogenei che occupano in memoria una posizione qualsiasi. Ciascun elemento contiene

Dettagli

Introduzione al C++ (continua)

Introduzione al C++ (continua) Introduzione al C++ (continua) I puntatori Un puntatore è una variabile che contiene un indirizzo di memoria pi_greco 3.141592 pi_greco_ptr indirizzo di 3.141592 & DEREFERENZIAZIONE RIFERIMENTO * se x

Dettagli

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

MATLAB c. Lucia Gastaldi Dipartimento di Matematica  Lezione 4 (15 ottobre 2003) MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è

Dettagli