Sistemi a Microcontrollore. 4E. I/O Analogico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sistemi a Microcontrollore. 4E. I/O Analogico"

Transcript

1 Sistemi a Microcontrollore 4E. I/O Analogico Anno Accademico 2018/2019

2 Indice Microcontrollore Utilizzato: ATmega328p Composizione del Kit Esercitazione

3 Indice Microcontrollore Utilizzato: ATmega328p Composizione del Kit Esercitazione

4 Microcontrollore Utilizzato Il microcontrollore utilizzato è l ATmega328p (datasheet) 131 istruzioni supportate (tra cui la moltiplicazione a 2 cicli) 32 kb di memoria flash, 1 kb di EEPROM, 2 kb di SRAM interna 2 contatori a 8 bit e 1 a 16 bit con prescaler separati ADC a 10 bit con 8 canali di input e misura di temperatura funzionalità speciali (sleep modes, interrupt)

5 Pinout del Microcontrollore 3 porte per I/O digitale parallelo (8 bit per porta) 6 pin per output analogico (digitale) con PWM 6 pin di input analogici per l ADC

6 Pinout della Scheda di Sviluppo Tensione di alimentazione: 5 V Corrente massima per pin: 40 ma (200 ma per tutto il chip) Frequenza di clock: 16 MHz

7 Banco di Registri L ATmega328p ha la particolarità di avere 160 registri di I/O aggiuntivi oltre ai 64 presenti in ogni AVR (solo questi ultimi sono accessibili con indirizzamento separato, ovvero con istruzioni in e 0x0000 out) 32 GPR 64 I/O registers 160 external I/O registers Internal SRAM (1048) 8 bit 0x001F 0x0020 0x005F 0x0060 0x00FF 0x0100 0x08FF

8 Banco di Registri di Interesse address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x23 PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0 0x24 DDRB DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0x25 PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0 0x26 PINC - PINC6 PINC5 PINC4 PINC3 PINC2 PINC1 PINC0 0x27 DDRC - DDRC6 DDRC5 DDRC4 DDRC3 DDRC2 DDRC1 DDRC0 0x28 PORTC - PORTC6 PORTC5 PORTC4 PORTC3 PORTC2 PORTC1 PORTC0 0x29 PIND PIND7 PIND6 PIND5 PIND4 PIND3 PIND2 PIND1 PIND0 0x2A DDRD DDRD7 DDRD6 DDRD5 DDRD4 DDRD3 DDRD2 DDRD1 DDRD0 0x2B PORTD PORTD7 PORTD6 PORTD5 PORTD4 PORTD3 PORTD2 PORTD1 PORTD0 0x35 TIFR OCF0B OCF0A TOV0 0x36 TIFR1 - - ICF1 - - OCF1B OCF1A TOV1 0x37 TIFR OCF2B OCF2A TOV2 0x3B PCIFR PCIF2 PCIF1 PCIF0 0x3C EIFR INT1 INT0 0x3D EIMSK INTF1 INTF0 0x44 TCCR0A COM0A1 COM0A0 COM0B1 COM0B0 - - WGM01 WGM00 0x45 TCCR0B FOC0A FOC0B - - WGM02 CS02 CS01 CS00

9 Banco di Registri di Interesse address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x46 TCNT0 Timer/Counter0 (8 bit) 0x47 OCR0A Timer/Counter0 - output compare register A 0x48 OCR0B Timer/Counter0 - output compare register B 0x5D SPL SP10 SP9 SP8 0x5E SPH SP7 SP6 SP5 SP4 SP3 SP2 SP1 SP0 0x5F SREG I T H S V N Z C 0x60 WDTCSR WDIF WDIE WDP3 WDCE WDE WDP2 WDP1 WDP0 0x69 EICRA ISC11 ISC10 ISC01 ISC00 0x6E TIMSK OCIE0B OCIE0A TOIE0 0x6F TIMSK1 - - ICIE1 - - OCIE1B OCIE1A TOIE1 0x70 TIMSK OCIE2B OCIE2A TOIE2 0x78 ADCL ADC data register low byte 0x79 ADCH ADC data register high byte 0x7A ADCSRA ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 0x7B ADCSRB - ACME ADTS2 ADTS1 ADTS0 0x7C ADMUX REFS1 REFS0 ADLAR - MUX3 MUX2 MUX1 MUX0 0x80 TCCR1A COM1A1 COM1A0 COM1B1 COM1B0 - - WGM11 WGM10

10 Banco di Registri di Interesse address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x81 TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10 0x82 TCCR1C FOC1A FOC1B x84 TCNT1L Timer/Counter1 - counter register low byte 0x85 TCNT1H Timer/Counter1 - counter register high byte 0x86 ICR1L Timer/Counter - input capture register low byte 0x87 ICR1H Timer/Counter1 - input capture register high byte 0x88 OCR1AL Timer/Counter1 - output compare register A low byte 0x89 OCR1AH Timer/Counter1 - output compare register A high byte 0x8A OCR1BL Timer/Counter1 - output compare register B low byte 0x8B OCR1BH Timer/Counter1 - output compare register B high byte 0xB0 TCCR2A COM2A1 COM2A0 COM2B1 COM2B0 - - WGM21 WGM20 0xB1 TCCR2B FOC2A FOC2B - - WGM22 CS22 CS21 CS20 0xB2 TCNT2 Timer/Counter2 (8 bit) 0xB3 OCR2A Timer/Counter2 - output compare register A 0xB4 OCR2B Timer/Counter2 - output compare register B

11 Indice Microcontrollore Utilizzato: ATmega328p Composizione del Kit Esercitazione

12 Contenuto del Kit

13 Contenuto del Kit Scheda di sviluppo Arduino con microcontrollore AVR ATmega328p Cavo di alimentazione/programmazione USB tipo B Tester Breadboard Jumper Componenti Resistenza Fotoresistenza Led Bottone Display a 7 segmenti

14 Tester Il tester (o multimetro) permette di misurare tensioni, correnti e valori di resistenza Tramite il tester è possibile verificare che il circuito sia nelle condizioni desiderate o se invece vi sono dei problemi, ad esempio di connessione o di dimensionamento

15 Breadboard e Jumper La breadboard è un banco di lavoro in cui, con dei fori e delle piste, si connettono diversi componenti I jumper servono a creare ulteriori connessioni nella breadboard, a connetterla con dispositivi esterni e a connettere tra loro altri dispositivi (es. Arduino)

16 Resistenza Il valore R di una resistenza è pari a: R=V/I A seconda del colore delle bande stampate sopra la resistenza si hanno diversi valori di R

17 Led Il LED (Light Emitting Diode) è un diodo (la corrente può passare solo in un verso) in grado di emettere luce Il LED è caratterizzato da una tensione di soglia (oltre cui emette luce) e da una corrente massima (per evitare rotture) + - color threshold voltage + - max current red 1.8 V 20 ma yellow 1.9 V 20 ma orange 2.0 V 20 ma green 2.0 V 20 ma blue 3.5 V 20 ma 3.6 V 20 ma

18 Fotoresistenza Le fotoresistenze sono resistenze il cui valore cambia a seconda della quantità di luce da cui sono irradiate La resistenza è spesso inversamente proporzionale alla luce

19 Bottone Il bottone permette di aprire e chiudere un circuito attraverso la pressione di un pulsante A seconda del bottone, il circuito può essere normalmente aperto (con la pressione si chiude) o normalmente chiuso (con la pressione si apre) normally open normally closed

20 Display a 7 Segmenti Il display a 7 segmenti è formato da un insieme di led con cui si possono visualizzare lettere e numeri Ha un elettrodo (catodo o anodo) comune e un elettrodo dedicato al singolo segmento (A, B, C, D, E, F, G, Dp) common electrode MAN6960 anode TDSR1350 anode voltage 2.5 V 2.4 V max current 30 ma 50 ma typical current 10 ma 10 ma aspect

21 Indice Microcontrollore Utilizzato: ATmega328p Composizione del Kit Esercitazione

22 Esercizio A Far lampeggiare un led connesso a un pin di una delle porte di output digitale. Generare il ritardo necessario al lampeggiamento attraverso un loop software nel programma principale. address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x23 PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0 0x24 DDRB DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0x25 PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0 0x26 PINC - PINC6 PINC5 PINC4 PINC3 PINC2 PINC1 PINC0 0x27 DDRC - DDRC6 DDRC5 DDRC4 DDRC3 DDRC2 DDRC1 DDRC0 0x28 PORTC - PORTC6 PORTC5 PORTC4 PORTC3 PORTC2 PORTC1 PORTC0 0x29 PIND PIND7 PIND6 PIND5 PIND4 PIND3 PIND2 PIND1 PIND0 0x2A DDRD DDRD7 DDRD6 DDRD5 DDRD4 DDRD3 DDRD2 DDRD1 DDRD0 0x2B PORTD PORTD7 PORTD6 PORTD5 PORTD4 PORTD3 PORTD2 PORTD1 PORTD0

23 Esercizio A address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x23 PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0 0x24 DDRB DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0x25 PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0

24 Esercizio A Vdd = VL + VS VS = Vdd + VL R (VS VL)/I = (5 2)/0.02 = 150 Ω I = (VS VL)/R = (5 2)/ A Vdd = 5 V 0 V VR = 3 V 0 V R 220 Ω < 14 ma

25 Esercizio A int main(void) { volatile int* PORTB = (volatile int*) 0x0025; volatile int* DDRB = (volatile int*) 0x0024; long int i; char state = 0x00; *DDRB = 0x02; // declare and initialize PORTB pointer // declare and initialize DDRB pointer // declare index i // declare and initialize led state // set port B as output } while(1) { // infinite loop i = 0; // initialize index i while(i< ) { // wait counting up to 1 million i = i + 1; } *PORTB = state; // update led on PORTB if(state == 0x00) { // update led state (if it was 0, set 1; state = 0x02; // if it was 1, set 0) } else { state = 0x00; } }

26 Esercizio B Far variare ciclicamente (durata degli intervalli a piacere) la luminosità del led attraverso l utilizzo di un uscita PWM (ad esempio si possono utilizzare 4 diverse intensità luminose) far variare l intensità del led in base alla pressione di un bottone connesso a un pin su una porta configurata come input digitale (a ogni pressione cambia intensità) address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 0x44 TCCR0A COM0A1 COM0A0 COM0B1 COM0B0 - - WGM01 WGM00 0x45 TCCR0B FOC0A FOC0B - - WGM02 CS02 CS01 CS00 0x46 TCNT0 Timer/Counter0 (8 bit) 0x47 OCR0A Timer/Counter0 - output compare register A 0x48 OCR0B Timer/Counter0 - output compare register B

27 Esercizio B address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x29 PIND PIND7 PIND6 PIND5 PIND4 PIND3 PIND2 PIND1 PIND0 0x2A DDRD DDRD7 DDRD6 DDRD5 DDRD4 DDRD3 DDRD2 DDRD1 DDRD0 0x2B PORTD PORTD7 PORTD6 PORTD5 PORTD4 PORTD3 PORTD2 PORTD1 PORTD0

28 Esercizio B Vdd = VL + VS VS = Vdd + VL R (VS VL)/I = (5 2)/0.02 = 150 Ω I = (VS VL)/R = (5 2)/ A VPWM = 5-0 V ~ VR = 3-0 V ~ R 220 Ω < 14 ma

29 Esercizio B

30 TCCR0 nell ATmega328p COM0A1 COM0A0 COM0B1 COM0B0 - - WGM01 WGM Timer/Counter Control Register A (TCCR0A) COM0A/B1 COM0A/B0 Output Mode 0 0 normal operation (OC0A/B PWM disconnected) 0 1 RISERVATO 1 0 non inverted PWM 1 1 inverted PWM

31 TCCR0 nell ATmega328p FOC0A FOC0B - - WGM02 CS02 CS01 CS Timer/Counter Control Register B (TCCR0B) CS02 CS01 CS00 descrizione nessun clock (timer/counter stoppato) clki/o (no prescaling) clki/o/8 (prescaling) clki/o/64(prescaling) clki/o/256(prescaling) clki/o/1024(prescaling) external clock from T0, clock on falling edge external clock from T0, clock on rising edge

32 TCCR0 nell ATmega328p COM0A1 COM0A0 COM0B1 COM0B0 - - WGM01 WGM00 FOC0A FOC0B WGM02 Timer/Counter Control Register A/B (TCCR0A/B) 3 CS02 CS01 CS00 mode WGM02 WGM01 WGM00 operation mode TOP OCR upd TOV set normal 0XFF immediate MAX phase correct PWM 0XFF TOP BOTTOM CTC OCR0A immediate MAX fast PWM 0XFF BOTTOM MAX reserved phase correct PWM OCR0A TOP BOTTOM reserved fast PWM OCR0A BOTTOM MAX 2 1 0

33 Esercizio B int main(void) { volatile int* DDRD = (volatile int*) 0x002A; volatile int* TCCR0A= (volatile int*) 0x0044; volatile int* TCCR0B = (volatile int*) 0x0045; volatile int* OCR0A= (volatile int*) 0x0047; long int i; char value = 0; *DDRD = 0x40; *TCCR0A = 0x83; *TCCR0B = 0x01; while(1) { i = 0; *OCR0A = value; while(i< ) { i = i + 1; } // declare and initialize DDRB pointer // declare and initialize TCCR0A pointer // declare and initialize TCCR0B pointer // declare and initialize OCR0A pointer // declare index i // declare and initialize analog value // set port D as output // configure timer/counter0: Fast PWM // non inverted, no prescaling // infinite loop // initialize index i // update PWM duty cycle // wait counting up to 1 million

34 Esercizio B } } if (value < 192) { value = value + 64; } else { value = 0; } // update analog value

35 Esercizio B con Pulsante Pull Down Resistor (e.g. 220 Ω) VPWM = 5-0 V ~ VR = 3-0 V ~ R 220 Ω < 14 ma

36 Esercizio B con Pulsante int main(void) { volatile int* PIND = (volatile int*) 0x0029; volatile int* DDRD = (volatile int*) 0x002A; volatile int* TCCR0A = (volatile int*) 0x0044; volatile int* TCCR0B= (volatile int*) 0x0045; volatile int* OCR0A= (volatile int*) 0x0047; long int i; char value = 0; *DDRD = 0x40; *TCCR0A = 0x83; *TCCR0B = 0x01; while(1) { i = 0; *OCR0A = value; while(i< ) { i = i + 1; } // declare and initialize PIND pointer // declare and initialize DDRD pointer // declare and initialize TCCR0B pointer // declare and initialize TCCR0A pointer // declare and initialize OCR0A pointer // declare index i // declare and initialize analog value // set port D as output // configure timer/counter0: Fast PWM // non inverted, no prescaling // infinite loop // initialize index i // update PWM duty cycle // wait counting up to 1 million

37 Esercizio B con Pulsante if ( *(PIND) & 0x80 ) { if (value < 192) { value = value + 64; } else { value = 0; } // update analog value only if the button is pressed // update analog value } } }

38 Esercizio C Far variare la luminosità del led in base alla luminosità presente nella stanza utilizzando un ingresso analogico connesso ad una fotoresistenza pilotare il display a 7 segmenti in modo da visualizzare il livello di luminosità della stanza acquisito dalla fotoresistenza address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 0x78 ADCL ADC data register low byte 0x79 ADCH ADC data register high byte 0x7A ADCSRA ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 0x7B ADCSRB - ACME ADTS2 ADTS1 ADTS0 0x7C ADMUX REFS1 REFS0 ADLAR - MUX3 MUX2 MUX1 MUX0

39 Esercizio C In entrambi i due display presenti nei kit, le connessioni tra i pin e i segmenti del display sono le seguenti f e a g d c b dp display pin segment 1 e 2 d 3 common anode 4 c 5 dp 6 b 7 a 8 common anode 9 f 10 g

40 Esercizio C address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x23 PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0 0x24 DDRB DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0x25 PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0

41 Esercizio C Vdd = 5 V Vdd = VS + VF = (RS + RF)*I I = Vdd / (RS + RF) RF 10 Ω I = 5/(12.01 k) = 0.4 ma VF = RF*I = V RF 12 kω I = 5/(24 k) = 0.2 ma VF = RF*I = 2.4 V RF 100 kω I = 5/(112 k) = 0.04 ma VF = RF*I = 4.48 V RS 12 kω VF = V RR 220 Ω VS RF 10 Ω kω

42 ADC Registers ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS ADC Control and Status Register A (ADCSRA) ADC Enable (ADEN): abilita l ADC quando settato ADC Start Conversion (ADSC): dà il via alla (prima se in free running mode) conversione AD quando settato Rimane alto per tutta la conversione, poi torna basso: su ADSC si può fare il polling per la fine conversione ADC Auto Trigger Enable (ADATE): abilita l autotriggering, ovvero l ADC inizia una conversione ad ogni un fronte positivo del segnale di trigger dato

43 ADC Registers ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS ADC Control and Status Register A (ADCSRA) ADC Prescaler Select (ADPS2:0) ADPS2 ADPS1 ADPS0 Division Factor

44 ADC Registers REFS1 REFS0 ADLAR - MUX3 MUX2 MUX1 MUX ADC Multiplexer Selection Register (ADMUX) ADC voltage reference (Vref) selection (REFS1:0) REFS1 REFS0 Voltage Reference Selection 0 0 AREF, internal Vref turned off 0 1 AVcc with external optional capacitor at AREF pin 1 0 reserved 1 1 Internal 1.1V Voltage Reference with external capacitor at AREF pin

45 ADC Registers REFS1 REFS0 ADLAR - MUX3 MUX2 MUX1 MUX ADC Multiplexer Selection Register (ADMUX) Analog Channel Selection (MUX3:0) MUX3 MUX3 MUX3 MUX3 Single Ended Input ADC ADC ADC ADC ADC ADC ADC ADC7

46 Esercizio C // decalre and init ADC pointers volatile int* ADMUX = (volatile int*) 0x007C; volatile int* ADCSRA = (volatile int*) 0x007A; volatile int* ADCH = (volatile int*) 0x0079; volatile int* ADCL = (volatile int*) 0x0078; int adc_read (int ch) { // configure ADC to read the selected channel ch &= 0b *ADMUX = (*ADMUX & 0xF8) ch; // start a single conversion on the ADC *ADCSRA = (1<<6); // wait for conversion to complete while(*adcsra & (1<<6)); } return ( ((*ADCH)<<8) + *ADCL );

47 Esercizio C int main (int ch) { // decalre and init timer/counter0 and PWM pin pointers volatile int* OCR0A = (volatile int*) 0x0047; volatile int* TCCR0A = (volatile int*) 0x0044; volatile int* TCCR0B = (volatile int*) 0x0045; volatile int* DDRD = (volatile int*) 0x002A; *DDRD = 0x40; *TCCR0A = 0x83; *TCCR0B = 0x01; // init PWM pin as output // configure timer/counter0: Fast PWM // non inverted, no prescaling *ADMUX = (1<<6); *ADCSRA = (1<<7) (1<<2) (1<<1) (1<<0); // set reference voltage to internal 5 V // enable ADC and prescale by 128 (10 bits) } int value = adc_read(0); // init value to be set on analog output (LED) *OCR0A = value; // to be calibrated (value has 10 bit, *OCR0A has 8 bit) while (1) { // infinite loop value = adc_read(0); // constantly acquire and update analog output (LED) *OCR0A = value; }

48 Esercizio C con Display address name bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 0x23 PINB PINB7 PINB6 PINB5 PINB4 PINB3 PINB2 PINB1 PINB0 0x24 DDRB DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB0 0x25 PORTB PORTB7 PORTB6 PORTB5 PORTB4 PORTB3 PORTB2 PORTB1 PORTB0

49 Esercizio C con Display Vdd = 5 V 220 Ω a f g b e c d dp RR 220 Ω RS 12 kω VF = V RF 10 Ω kω

50 Esercizio C con Display f a g e d c b dp display pin segment ATmega328p pin 1 e PORTD5 2 d PORTD4 3 common anode Vcc (through resistor) 4 c PORTD3 5 dp PORTD2 6 b PORTB1 7 a PORTB0 8 common anode Vcc (through resistor) 9 f PORTD7 10 g PORTD6 int set_value(int value) { int a, b, c, d, e, f, g, dp; int norm_value = ( (value*16)/256 ) & 0xF; } switch (norm_value) { case 0: a=0; b=0; c=0; d=0; e=0; f=0; g=1; dp=1; break; case 1: a=1; b=0; c=0; d=1; e=1; f=1; g=1; dp=1; break; default: a=1; b=1; c=1; d=1; e=1; f=1; g=1; dp=1; break; } *PORTB = (b<<1) + (a<<0); *PORTD = (f<<7) (g<<6) (e<<5) (d<<4) (c<<3) (dp<<2);

51 Esercizio C con Display volatile int* ADMUX = (volatile int*) 0x007C; volatile int* ADCSRA = (volatile int*) 0x007A; volatile int* ADCH = (volatile int*) 0x0079; volatile int* ADCL = (volatile int*) 0x0078; volatile int* PORTD = (volatile int*) 0x002B; volatile int* PORTB = (volatile int*) 0x0025; int adc_read (int ch) { // configure ADC to read the selected channel ch &= 0b *ADMUX = (*ADMUX & 0xF8) ch; // start a single conversion on the ADC *ADCSRA = (1<<6); // wait for conversion to complete while(*adcsra & (1<<6)); } return ( ((*ADCH)<<8) + *ADCL );

52 Esercizio C con Display int main (int ch) { // decalre and init timer/counter0 and PWM pin pointers volatile int* OCR2A = (volatile int*) 0x00B0; volatile int* TCCR2B = (volatile int*) 0x00B1; volatile int* TCCR2A = (volatile int*) 0x00B3; volatile int* DDRB = (volatile int*) 0x0024; volatile int* DDRD = (volatile int*) 0x002A; *DDRB = 0x0B; // init PWM and display pins *DDRD = 0xFC; *TCCR2A = 0x83; // configure timer/counter2: Fast PWM *TCCR2B = 0x01; // non inverted, no prescaling *ADMUX = (1<<6); // set reference voltage to internal 5 V *ADCSRA = (1<<7) (1<<2) (1<<1) (1<<0); // enable ADC and prescale by 128 (10 bits) int value = adc_read(0); // init value to be set on analog output (LED) } *OCR2A = value; while (1) { } // to be calibrated (value has 10 bit, *OCR0A has 8 bit) // infinite loop value = adc_read(0); // constantly acquire and update analog output and display set_value( value ); *OCR2A = value;

Sistemi a Microcontrollore. 5. IO Analogico

Sistemi a Microcontrollore. 5. IO Analogico Sistemi a Microcontrollore 5. IO Analogico Anno Accademico 2018/2019 Indice Uscite Analogiche Pulse Width Modulation PWM negli AVR Digital-to-Analog (D/A) Conversion Ingressi Analogici Analog-to-Digital

Dettagli

Sistemi a Microcontrollore. 5E. Programmazione e Debug

Sistemi a Microcontrollore. 5E. Programmazione e Debug Sistemi a Microcontrollore 5E. Programmazione e Debug Anno Accademico 2018/2019 Indice Libreria uart.h Esercitazione Indice Libreria uart.h Esercitazione Libreria uart.h La libreria uart.h consente di

Dettagli

Illuminazione Intelligente

Illuminazione Intelligente Illuminazione Intelligente Relazione Progetto Dimostrativo Sistemi a Microcontrollore 2018 Autore/i: Carlo Sau 1. Introduzione (motivazione e obiettivi progetto) Il progetto dimostrativo riguarda lo sviluppo

Dettagli

Sistemi a Microcontrollore. 3. Bus e Mappaggio in Memoria

Sistemi a Microcontrollore. 3. Bus e Mappaggio in Memoria Sistemi a Microcontrollore 3. Bus e Mappaggio in Memoria Anno Accademico 2018/2019 Indice Il bus Interfacce di Lettura e Scrittura Indirizzamento Mappaggio in Memoria Indirizzamento Separato Sincronizzazione

Dettagli

Sistemi a Microcontrollore. 2. Microcontrollori Atmel AVR

Sistemi a Microcontrollore. 2. Microcontrollori Atmel AVR Sistemi a Microcontrollore 2. Microcontrollori Atmel AVR Anno Accademico 2018/2019 Indice Caratteristiche dell ISA AVR registri spazi di indirizzo modalità di indirizzamento stack e funzioni Istruzioni

Dettagli

Il più semplice dei tre Timer è quello numerato 0. Lo schema generale di questa periferica è rappresentato in figura:

Il più semplice dei tre Timer è quello numerato 0. Lo schema generale di questa periferica è rappresentato in figura: Uso dei Timer Le unità timer, in prima approssimazione servono per contare il tempo in termini di cicli macchina eseguiti dalla accensione del microcontrollore. L Atmega169 mette a disposizione tre unità

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

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

Caratteristiche ATMEGA328

Caratteristiche ATMEGA328 Arduino E' il nome della scheda (board) Esiste in varie versioni Utilizzeremo la versione UNO Rev.3 Il processore a bordo è l'atmega328 E' disponibile lo schema Arduino Caratteristiche ATMEGA328 Microcontroller

Dettagli

int EN = 2; //RS485 has a enable/disable pin to transmit or receive data. Arduino Digital Pin 2 = Rx/Tx 'Enable'; High to Transmit, Low to Receive

int EN = 2; //RS485 has a enable/disable pin to transmit or receive data. Arduino Digital Pin 2 = Rx/Tx 'Enable'; High to Transmit, Low to Receive RS485 Transmit Data //RS485 has a enable/disable pin to transmit or receive data. Arduino Digital Pin 2 = Rx/Tx 'Enable'; High to Transmit, Low to Receive pinmode(en, OUTPUT); Serial.begin(19200); // send

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

DAC TLC VOLTAGE MODE OPERATION 1

DAC TLC VOLTAGE MODE OPERATION 1 Stefano Busnelli (IlGuru) DAC TLC7528 - VOLTAGE MODE OPERATION 28 August 2015 Sommario Un semplice esperimento con questo DAC comandato tramite un ATMEGA328 TLC7528 Il TLC7528 è un doppio DAC parallelo

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

Ing. Emiliano Capuzzo Remote Contro NEC 11/11/2003. Remote Control NEC

Ing. Emiliano Capuzzo Remote Contro NEC 11/11/2003. Remote Control NEC Remote Control NEC Questo progetto risponde all esigenza di decodificare ed utilizzare i codici prodotti da telecomandi IR che adottano la codifica NEC Trasmissione Format. Questo tipo di codifica è attualmente

Dettagli

ARI Sezione di Ivrea 16/11/2012. ARI Sezione di Ivrea Serate tecniche 2015

ARI Sezione di Ivrea 16/11/2012. ARI Sezione di Ivrea Serate tecniche 2015 ARI Sezione di Ivrea Serate tecniche 2015 IZ1MHN Agenda Cos é un interrupt External Interrupt Pin Change Interrupt Timer Attivare e disattivare gli Interrupt Serate Tecniche 2012 1 Cos è un interrupt è

Dettagli

Introduzione alla scheda Arduino/Genuino

Introduzione alla scheda Arduino/Genuino Introduzione alla scheda Arduino/Genuino Francesco Mar6nelli, Sergio Galeani e Daniele Carnevale Università di Roma "Tor Vergata" Dipar6mento di Ingegneria Civile e Ing. Informa6ca DICII 1 FRAMEWORK GENERALE

Dettagli

1

1 1 2 3 4 5 /*acquisizione-dati-2canali-ad-da-pwm.c ACQUISIZIONE DATI E CONTROLLO PWM A 2 CANALI (CON 2 SENSORI E 2 USCITE IN PWM)*/ /** C O N F I G U R A T I O N B I T S ******************************/

Dettagli

All interno di un ATmega16 troviamo moltissimi dispositivi trai quali, timer, gestori delle interupt personalizzabili, convertitori A/D, multiplexer

All interno di un ATmega16 troviamo moltissimi dispositivi trai quali, timer, gestori delle interupt personalizzabili, convertitori A/D, multiplexer All interno di un ATmega6 troviamo moltissimi dispositivi trai quali, timer, gestori delle interupt personalizzabili, convertitori A/D, multipleer ecc. Inoltre troviamo 3 tipi di memoria: l EEPROM che

Dettagli

SCHEDA SPERIMENTALE ARDUINO UNO

SCHEDA SPERIMENTALE ARDUINO UNO ARDUINO Sistema di sviluppo open source che permette di programmare vari microcontrollori montati su una scheda sperimentale collegata al pc mediante cavo usb. La scheda arduino uno monta il microcontrollore

Dettagli

Sistemi a Microcontrollore. 2E. Bus e Mappaggio in Memoria

Sistemi a Microcontrollore. 2E. Bus e Mappaggio in Memoria Sistemi a Microcontrollore 2E. Bus e Mappaggio in Memoria Anno Accademico 2829 Indice Modifiche all Architettura Mappaggio della Memoria Dati Mappaggio dell IO Parallelo Moduli Esercitazione Indice Modifiche

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

TUTORIAL GPL_BENZINA CON PIC16F1826 (UTILIZZO DELL ADC)

TUTORIAL GPL_BENZINA CON PIC16F1826 (UTILIZZO DELL ADC) TUTORIAL GPL_BENZINA CON PIC16F1826 (UTILIZZO DELL ADC) Tutorial di Maroncelli Matteo e Zoffoli Federico, 5A. Creare un programma che simula gli indicatori di livello da serbatoi GPL e Benzina. Attraverso

Dettagli

D.A.M. Bros Robotics -

D.A.M. Bros Robotics - D.A.M. Bros Robotics - www.dambrosrobotics.it Scheda Riassuntiva Lezione 5 Output digitali Analizziamo alcuni componenti fondamentali presenti sulla scheda Arduino Uno Convertitore USB-TTL Fusibile 500mA

Dettagli

Calcolatori Elettronici T Ingegneria Informatica A1 Introduzione Arduino

Calcolatori Elettronici T Ingegneria Informatica A1 Introduzione Arduino Calcolatori Elettronici T Ingegneria Informatica A1 Introduzione Arduino Giovanni Bonaccio, Stefano Mattoccia Arduino Arduino è una piattaforma hardware e software di tipo open-source nata in Italia ma

Dettagli

MCQ Data Aquisition Board. Preliminary Datasheet

MCQ Data Aquisition Board. Preliminary Datasheet MCQ Data Aquisition Board Preliminary Datasheet Technical Data Sheet Caratteristiche: Risoluzione: Massima 24-bit Numero di canali: 8 Frequenza di campionamento: da 50 Hz a 2 KHz programmabile per canale.

Dettagli

Microcontrollori 12/03/2014. Progettazione Sistemi Elettronici 2013/2014 1

Microcontrollori 12/03/2014. Progettazione Sistemi Elettronici 2013/2014 1 Microcontrollori 2013/2014 1 Microcontrollori 2013/2014 2 Microcontrollori CPU Instruction set -CISC Complex Instruction Set Computing (Intel x86 family; Motorola 680x0) -RISC Reduced Instruction Set computer

Dettagli

igbt_driver.c 13/12/2012

igbt_driver.c 13/12/2012 1 //FUSES H 0xFF L 0x7A 2 3 #define F_CPU 8000000UL 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include

Dettagli

Arduino in connessione Bluetooth

Arduino in connessione Bluetooth Arduino in connessione Bluetooth Peculiarità di questa realizzazione: descritta in italiano, basata su breadboard e modulo HC-05, non richiede Arduino Bluetooth Shield, più chiara di molti similari documenti

Dettagli

ELETTRONICA CON ARDUINO

ELETTRONICA CON ARDUINO ELETTRONICA CON ARDUINO 13/14 aprile 2018 Giorno 1 Basi di elettronica: tensione, corrente, resistenza, potenziometri, diodi, diodi LED; Segnali digitali, segnali analogici, ADC, PWM; Arduino e le sue

Dettagli

Arduino. Laboratorio Arduino Base. HackLab Terni. Laboratorio aperto a tutti di elettronica, scienza e arte. hacklabterni.

Arduino. Laboratorio Arduino Base. HackLab Terni. Laboratorio aperto a tutti di elettronica, scienza e arte. hacklabterni. Laboratorio Base HackLab Terni Laboratorio aperto a tutti di elettronica, scienza e arte. hacklabterni.org Cos'è? è una piattaforma di prototipazione elettronica open-source basata su microcontrollore

Dettagli

MICROCONTROLLORI. Laboratorio di Segnali e Sistemi II - Arduino

MICROCONTROLLORI. Laboratorio di Segnali e Sistemi II - Arduino MICROCONTROLLORI Introduzione: microprocessore e microcontrollore Microprocessore Un microprocessore integra sul chip la logica di elaborazione ma richiede sempre delle unità esterne ( memorie, gestori

Dettagli

Titolare del corso Prof. Andrea Cusano. Assistenti: Ing. Giuseppe Quero Ing. Antonio Iele Ing. Marco Leone Ing. Benito Carotenuto

Titolare del corso Prof. Andrea Cusano. Assistenti: Ing. Giuseppe Quero Ing. Antonio Iele Ing. Marco Leone Ing. Benito Carotenuto Corso di Laboratorio di Elettronica per l Automazione Arduino Titolare del corso Prof. Andrea Cusano Assistenti: Ing. Giuseppe Quero Ing. Antonio Iele Ing. Marco Leone Ing. Benito Carotenuto Cos è Arduino?

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

D.A.M. Bros Robotics -

D.A.M. Bros Robotics - D.A.M. Bros Robotics - www.dambrosrobotics.it Scheda Riassuntiva Lezione 4 Input digitali Reed Switch Oltre ai normali pulsanti o interruttori di tipo meccanico è possibile generare un segnale di tipo

Dettagli

La comunicazione con l esterno

La comunicazione con l esterno La comunicazione con l esterno Input / Output Le porte di I/O I Dati entrano Disp In Disp In Dispositivo di Ingresso Porta In Porta In Porte di Ingresso CPU Bus dati I Dati escono Porta Out Disp Out Porta

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

A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be

A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be A.S. 2017/2018 PIANO DI LAVORO PREVENTIVO CLASSE 4Be Docenti Disciplina Cinzia Brunetto, Antonino Cacopardo SAE Sistemi Automatici Elettronici Competenze disciplinari di riferimento Il percorso formativo

Dettagli

Raccolta Test di Laboratorio di Sistemi a Microcontrollore

Raccolta Test di Laboratorio di Sistemi a Microcontrollore Raccolta Test di Laboratorio di Sistemi a Microcontrollore prof. Corrado Santoro 1 Digital I/O 1. Quale delle seguenti istruzioni permette di porre a 0 la linea PC4? GPIOC->ODR &= (int32_t)0x10; GPIOC->ODR

Dettagli

17^ parte : Bluetooth Shield SLD63030P. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

17^ parte : Bluetooth Shield SLD63030P. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) 17^ parte : Bluetooth Shield SLD63030P Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO) Bluetooth Shield SLD63030P Questo shield permette ad Arduino e schede Arduino-compatibili, di comunicare

Dettagli

D.A.M. Bros Robotics - Scheda Riassuntiva Lezione 6 Output digitali

D.A.M. Bros Robotics -   Scheda Riassuntiva Lezione 6 Output digitali D.A.M. Bros Robotics - www.dambrosrobotics.it Scheda Riassuntiva Lezione 6 Output digitali Led collegati allo stesso pin Si è visto in precedenza che la tensione presente su di un pin settato come uscita

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

Lezione 16: Come utilizzare la Joystick shield per i propri progetti con Arduino

Lezione 16: Come utilizzare la Joystick shield per i propri progetti con Arduino Lezione 16: Come utilizzare la Joystick shield per i propri progetti con Arduino In questa sedicesima lezione su Arduino, si parlerà di una scheda un po particolare, che permette di dare un tocco di originalità

Dettagli

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca

CORSO ARDUINO. Corso ASEV Giulio Fieramosca Stefano Panichi. Stefano Panichi e Giulio Fieramosca CORSO ARDUINO Giulio Fieramosca Stefano Panichi Corso ASEV 2015 Pulsanti e interruttori Pushbutton Momentary button Pulsante monostabile A B Switch Interruttore bistabile C A B C D C B A Pulsanti e interruttori

Dettagli

LSS Reti Logiche: introduzione ad Arduino

LSS Reti Logiche: introduzione ad Arduino LSS 2017-18 Reti Logiche: introduzione ad Arduino Piero Vicini (slides teoria: Prof A Nigro) AA 2017-2018 Introduzione: microprocessore e microcontrollore Microprocessore Un microprocessore integra sul

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

Arduino - II parte. Laboratorio di Segnali e Sistemi II - Arduino-II parte

Arduino - II parte. Laboratorio di Segnali e Sistemi II - Arduino-II parte Arduino - II parte Esercizio: simulazione di un semplice sistema di controllo Un certo impianto viene acceso e spento manualmente tramite un interruttore. Inoltre,passando da spento ad acceso si deve immaginare

Dettagli

1/1000 second STOPWATCH

1/1000 second STOPWATCH SERVICE MANUAL and INSTRUCTIONS MANUALE TECNICO e ISTRUZIONI (Firmware ver..0) /000 second STOPWATCH 0-0 by Valter Narcisi www.narcisivalter.it CRONOMETRO DIGITALE H:MM:SS.ddd CON PIC F e DISPLAY a SEGMENTI

Dettagli

MODULI COMPARATOR E VOLTAGE REFERENCE DEL PIC 1

MODULI COMPARATOR E VOLTAGE REFERENCE DEL PIC 1 Stefano Busnelli (IlGuru) MODULI COMPARATOR E VOLTAGE REFERENCE DEL PIC 9 September 2015 In questo articolo si parla dei moduli Comparator e Voltage Reference del PIC16F628A e viene descritto un esempio

Dettagli

Arduino L'elettronica Open Source!

Arduino L'elettronica Open Source! Arduino L'elettronica Open Source! Microcontrollori Un microcontrollore o microcontroller, detto anche computer single chip è un sistema a microprocessore completo, integrato in un solo chip, progettato

Dettagli

ITC FOSSATI- DA PASSANO. Progetto sonar. A cura di: Bamonte Davide Bertagna Davide Canaccini Alessandro Celi Andrea Conti Thomas Filattiera Lorenzo

ITC FOSSATI- DA PASSANO. Progetto sonar. A cura di: Bamonte Davide Bertagna Davide Canaccini Alessandro Celi Andrea Conti Thomas Filattiera Lorenzo Progetto sonar A cura di: Bamonte Davide Bertagna Davide Canaccini Alessandro Celi Andrea Conti Thomas Filattiera Lorenzo A.S. 2013/2014 Classe 4 Q Pag. 1 Relazione Componenti hardware : Arduino1, basetta

Dettagli

USER MANUAL 2AMIN521VS

USER MANUAL 2AMIN521VS USER MANUAL 2AMIN521VS SUBJECT INDEX: DESCRIPTION TECHNICAL SPECIFICATION FUNCTIONAL DESCRIPTION DEVICE POWER SUPPLY AND CONNECTION TO THE LED MODULE SINGLE POWER SUPPLY MODE MULTIPLE POWER SUPPLY MODE

Dettagli

Calcolatori Elettronici T Ingegneria Informatica A2 - Gestione di una matrice di LED (8x8)

Calcolatori Elettronici T Ingegneria Informatica A2 - Gestione di una matrice di LED (8x8) Calcolatori Elettronici T Ingegneria Informatica A2 - Gestione di una matrice di LED (8x8) Giovanni Bonaccio, Stefano Mattoccia Matrice di led 8x8 Esperimento in cui vogliamo disegnare su una matrice di

Dettagli

Prime applicazioni hardware. G. De Nunzio - G. Marsella

Prime applicazioni hardware. G. De Nunzio - G. Marsella Prime applicazioni hardware G. De Nunzio - G. Marsella Esercizio 3: Le=ura sensore di temperatura e LED Com è fatto Arduino Nota: Segnale analogico: è un segnale a tempo ed ampiezza continua. 14 Ingressi/Uscite

Dettagli

Provolo Sergio, Agosto Francesco

Provolo Sergio, Agosto Francesco PROGRAMMA DIDATTICO CONSUNTIVO CLASSE 4Ae Docente/i Disciplina Provolo Sergio, Agosto Francesco Sistemi Automatici Elettronici Unità di Lavoro 1: MEMORIE a semiconduttore Periodo: Settembre-Novembre Introduzione

Dettagli

6. GENERATORI DI SEGNALI DIGITALI

6. GENERATORI DI SEGNALI DIGITALI 6. GENERATORI DI SEGNALI DIGITALI MULTIVIBRATORE Dispositivo analogico attivo che genera un segnale binario (due possibili livelli di tensione). E realizzabile con un Amplificatore reazionato positivamente

Dettagli

Ma andiamo un pò più in profondità... ci sono altre opzioni che forniscono più flessibilità :)

Ma andiamo un pò più in profondità... ci sono altre opzioni che forniscono più flessibilità :) PWM ed oltre ovvero prendiamo confidenza con il PWM di Arduino Duemilanove La modulazione di larghezza di impulso (Pulse Width Modulation ) può essere usata da Arduino in diversi modi. In questo tutorial

Dettagli

Exam of DIGITAL ELECTRONICS July 8 th, 2010 Prof. Marco Sampietro

Exam of DIGITAL ELECTRONICS July 8 th, 2010 Prof. Marco Sampietro N Exam of DIGITAL ELECTRONICS July 8 th, 2010 Prof. Marco Sampietro Matr. N NAME Digital memory design Si consideri una memoria FLASH come quella schematizzata nella figura seguente. Essa è realizzata

Dettagli

RELAZIONE CANESTRO BASKET

RELAZIONE CANESTRO BASKET RELAZIONE CANESTRO BASKET INDICE 1.0 Componenti utilizzati 1.1 Led 1.2 Resistore 330 ohm 1.3 Sensore PIR 1.4 Arduino UNO 1.5 Breadboard 2.0 Progetto 2.1 Schema del circuito 2.2 Codice 3.0 Possibili miglioramenti

Dettagli

BIU - Bus Interface Unit. EU - Execution Unit. indipendente e asincrono: Costituito da due unità che operano in modo parzialmente

BIU - Bus Interface Unit. EU - Execution Unit. indipendente e asincrono: Costituito da due unità che operano in modo parzialmente Sistemi Roberta Gerboni Introdotto sul mercato nel giugno 1978 Primo processore a 16 bit Costituito da due unità che operano in modo parzialmente indipendente e asincrono: EU - Execution Unit BIU - Bus

Dettagli

Sistemi a Microcontrollore. 6. Programmazione e Debug

Sistemi a Microcontrollore. 6. Programmazione e Debug Sistemi a Microcontrollore 6. Programmazione e Debug Anno Accademico 2018/2019 Indice Programmazione Flusso di Programmazione Librerie Debug Debugger Comunicazione Seriale Indice Programmazione Flusso

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 06 Display 7 segmenti Catodo comune g f GND a b Anodo comune g f VCC g g e c d e b f b e b a a f a d GND c FJ6AB d DP DP c e d VCC DP c DP

Dettagli

TFT LCD -5 /COL Monitor a colori LCD TFT 5 senza fili 2.4 GHz 2.4 GHz Wireless CCD 5" TFT color LCD monitor

TFT LCD -5 /COL Monitor a colori LCD TFT 5 senza fili 2.4 GHz 2.4 GHz Wireless CCD 5 TFT color LCD monitor I GB TFT LCD -5 /COL Monitor a colori LCD TFT 5 senza fili 2.4 GHz 2.4 GHz Wireless CCD 5" TFT color LCD monitor IS1168-AA Manuale di Installazione Installation manual 1/8 TFT LCD-5 /COL GUIDA DI INSTALLAZIONE

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

Prime esperienze con la breadboard

Prime esperienze con la breadboard Progettazione nell'ambiente LPCXpresso Introduzione alla progettazione di sistemi embedded a microcontrollore Prime esperienze con la breadboard All text and image content in this document is licensed

Dettagli

D:\Fulvio\Elettronica\Anemometro\codici\vento_lcd_41.pbp

D:\Fulvio\Elettronica\Anemometro\codici\vento_lcd_41.pbp ******************************************************************** * O O OOOO O O OOOOO OOO * * O O O OO O O O O OOOO * * O O OOO O O O O O O * * OO O O OO O O O OOOOOOO * * O OOOO O O O OOOO OOOOOOOOO

Dettagli

MANUALE D USO 2AMDI511VPVRDS

MANUALE D USO 2AMDI511VPVRDS MANUALE D USO 2AMDI511VPVRDS INDICE ARGOMENTI: DESCRIZIONE SPECIFICHE TECNICHE ALIMENTAZIONE DEL DISPOSITIVO E CONNESSIONE AL MODULO LED MODALITÀ DI FUNZIONAMENTO MODALITÀ POTENZIOMETRO LINEARE 100Kohm

Dettagli

Laboratorio di metodi di acquisizione dati. Giorgio Maggi

Laboratorio di metodi di acquisizione dati. Giorgio Maggi Laboratorio di metodi di acquisizione dati Giorgio Maggi Sommario La conversione Digitale analogica I vari tipi di ADC L SNR e ENOB Il Time to Digital converter L Input-Output Register Il sistema di acquisizione

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

MANUALE D USO 2AMDI511VPVRDS

MANUALE D USO 2AMDI511VPVRDS MANUALE D USO 2AMDI511VPVRDS INDICE ARGOMENTI: DESCRIZIONE SPECIFICHE TECNICHE ALIMENTAZIONE DEL DISPOSITIVO E CONNESSIONE AL MODULO LED MODALITÀ DI FUNZIONAMENTO MODALITÀ POTENZIOMETRO LINEARE 100KOHM

Dettagli

L400MA04T1A01/L400MB04C1A01 MANUALE UTENTE V. 1.5

L400MA04T1A01/L400MB04C1A01 MANUALE UTENTE V. 1.5 L400MA04T1A01/L400MB04C1A01 MANUALE UTENTE V. 1.5 NEWLAB S.R.L. VIA GRETO DI CORNIGLIANO 6R, 16151 GENOVA TEL. +39. 010.8937361 FAX. +39. 010.6563246 1 INDICE MANUALE UTENTE V. 1.5... 1 INDICE... 2 SPECIFICHE

Dettagli

Manuale utente - User manual. 6 CH. LED Control

Manuale utente - User manual. 6 CH. LED Control Manuale utente - User manual ATTENZIONE: Prima di usare questi apparecchi, leggere attentamente le istruzioni che seguono. Spotlight srl non potrà essere ritenuta responsabile di danni derivanti dalla

Dettagli

Descrizione Sistema Monitoraggio Contametri

Descrizione Sistema Monitoraggio Contametri MANUALE CONTAMETRI Descrizione Sistema Monitoraggio Contametri Il sistema di monitoraggio CONTAMETRI è stato progettato specificatamente per l industria tessile Il sistema si compone di 36 sensori ad effetto

Dettagli

Quaderni di Elettronica corso per creativi ed inventori

Quaderni di Elettronica corso per creativi ed inventori Quaderni di Elettronica corso per creativi ed inventori Aprile maggio 2019, Spazio Chirale alla Garbatella Stefano Capezzone www.chirale.it/download-elettronica SSID: spazio chirale best Pass: persico32

Dettagli

ROBOTICA Syllabus Versione 1.0

ROBOTICA Syllabus Versione 1.0 ROBOTICA Syllabus Versione 1.0 Modulo Robotica Questo modulo definisce i concetti e le competenze fondamentali relativi ai principi di base di Robotica. Module Goals Chi supera la prova d esame per questo

Dettagli

LSS Reti Logiche: introduzione ad Arduino

LSS Reti Logiche: introduzione ad Arduino LSS 2016-17 Reti Logiche: introduzione ad Arduino Piero Vicini (slides del Prof. A. Nigro) A.A. 2016-2017 Introduzione: microprocessore e microcontrollore Microprocessore Un microprocessore integra sul

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 Talentis. Marco Branciforte

Esercitazione Talentis. Marco Branciforte Esercitazione Talentis Marco Branciforte Scopo 2 Accendere e variare la luminosita` di un LED PWM => per pilotare il LED Timer 2 Channel 1 - PWM mode 100Hz Periferiche utilizzate 3 ADC => per variare la

Dettagli

A.S. 2018/19 PIANO DI LAVORO SVOLTO CLASSE 3Ai

A.S. 2018/19 PIANO DI LAVORO SVOLTO CLASSE 3Ai A.S. 2018/19 PIANO DI LAVORO SVOLTO CLASSE 3Ai Docenti Evangelista D., Marino B. Disciplina TELECOMUNICAZIONI (per INFORMATICA) Competenze disciplinari di riferimento Il percorso formativo si prefigge

Dettagli

Relazione Tecnica Sensore di Temperatura con interfacciamento microcontroller Arduino 1.3

Relazione Tecnica Sensore di Temperatura con interfacciamento microcontroller Arduino 1.3 IISS Fossati da Passano La Spezia A.S 2012/2013 Relazione Tecnica Sensore di Temperatura con interfacciamento microcontroller Arduino 1.3 1 Elenco dei componenti 1-Elenco componenti utilizzati da noi 2-Arduino

Dettagli

SDM320M. Guida e caratteristiche tecniche

SDM320M. Guida e caratteristiche tecniche SDM320M Guida e caratteristiche tecniche Simboli utilizzati nella presente guida: Importanti informazioni sulla sicurezza e sul funzionamento, Leggere la guida prima di procedere con l'installazione e

Dettagli

Laboratorio II, modulo

Laboratorio II, modulo Laboratorio II, modulo 2 2016-2017 Comparatore e FlashADC con l Op.Amp. TDC con l FPGA LM35 (cfr. http://www.circuitstoday.com/voltage-comparator http://www.seas.upenn.edu/~ese206/labs/adc206/adc206.html

Dettagli

Comprendere il funzionamento dei convertitori Saper effettuare misure di collaudo

Comprendere il funzionamento dei convertitori Saper effettuare misure di collaudo SCH 35 Convertitore A/D Obiettivi Comprendere il funzionamento dei convertitori Saper effettuare misure di collaudo Strumenti e componenti IC1 LM 35 IC2 LM 158 IC3 ADC 0804 IC4 74LS244 R 1 = 75 Ω R 2 =

Dettagli

Fisica, tecnologia, scienze applicate: ulab2, un laboratorio portatile basato su arduino e due piccoli robot, LEMU e MOMOLAB, vanno a scuola

Fisica, tecnologia, scienze applicate: ulab2, un laboratorio portatile basato su arduino e due piccoli robot, LEMU e MOMOLAB, vanno a scuola Fisica, tecnologia, scienze applicate: ulab2, un laboratorio portatile basato su arduino e due piccoli robot, LEMU e MOMOLAB, vanno a scuola Esaminiamo da vicino la danger shield Daniele Grosso (1) 1.

Dettagli

Architettura del PIC 18F452

Architettura del PIC 18F452 Controllo Digitale a.a. 2005-2006 Architettura del PIC 18F452 Ing. Federica Pascucci PIC 18F452 Caratteristiche Frequenza operativa: 40 MHz Memorie: Program FLASH memory: 32 KBytes, 16 K-istruzioni memorizzabili

Dettagli

MANUALE UTENTE. Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS485 P/N: GW-DLMS-485-LG. Edizione 2.0

MANUALE UTENTE. Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS485 P/N: GW-DLMS-485-LG. Edizione 2.0 MANUALE UTENTE Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS485 P/N: GW-DLMS-485-LG Edizione 2.0 MARCOM SRL Tel. +390458204747 Email: info@marcomweb.it Via Mezzacampagna 52 (int. 29) www.marcomweb.it

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

Week Programmer v2.1 Week Programmer Rev2.1

Week Programmer v2.1 Week Programmer Rev2.1 Week Programmer Rev2.1 Modulo Web Server con 8 relè programmabili 1 Descrizione Il dispositivo permette di controllare 8 di uscite digitali (per contatti/attuatori per domotica o altro: apri-porta, luce,

Dettagli

Opera Crate Monitor Software Reference Manual V2.0

Opera Crate Monitor Software Reference Manual V2.0 Opera Crate Monitor Software Reference Manual V2.0 La scheda comunica con il mondo esterno tramite CAN BUS o tramite RS232 (38400 baud 8bit 1stop). Il led ROSSO (ERR) sul pannello frontale indica le seguenti

Dettagli

MANUALE UTENTE. Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS232 P/N: GW-DLMS-232-LG. Edizione 2.0

MANUALE UTENTE. Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS232 P/N: GW-DLMS-232-LG. Edizione 2.0 MANUALE UTENTE Gateway DLMS-MODBUS per LANDIS&GYR E650 con RS232 P/N: GW-DLMS-232-LG Edizione 2.0 MARCOM SRL Tel. +390458204747 Email: info@marcomweb.it Via Mezzacampagna 52 (int. 29) www.marcomweb.it

Dettagli

output LED front end Digitale Resistenza associata 220 Ω

output LED front end Digitale Resistenza associata 220 Ω output LED Digitale Resistenza associata 220 Ω Realizzate da Maicol Zoia / scaricabili da www.phycolab.polimi.it l led, ovvero Light Emission Diode, sono dei piccoli componenti che se attraversati da una

Dettagli

Esercitazione Controllo di un motore DC mediante Arduino YUN

Esercitazione Controllo di un motore DC mediante Arduino YUN Percorsi Abilitanti Speciali A.A. 2013/2014 classe abilitazione C320 LABORATORIO MECCANICO TECNOLOGICO Esercitazione Controllo di un motore DC mediante Arduino YUN Pag. 2 SOMMARIO Presentazione delle caratteristiche

Dettagli

ELECTRONICS LAB [WITH ARDUINO]

ELECTRONICS LAB [WITH ARDUINO] ELECTRONICS LAB [WITH ARDUINO] >>> DAY #2 Daniele Costarella Salvatore Carotenuto Teatro Carlo Gesualdo / Casina Del Principe Avellino Rights to copy Attribution ShareAlike 3.0 Unported You are free: to

Dettagli

CORSO DI PROGRAMMAZIONE MICROCONTROLLORI

CORSO DI PROGRAMMAZIONE MICROCONTROLLORI PROGRAMMA DEL CORSO PARTE INTRODUTTIVA LEZIONE INTRODUTTIVA 1 I NUMERI BINARI I NUMERI ESADECIMALI I DISPOSITIVI ELETTRONICI INTELLIGENTI LA MEMORIA DEI DISPOSITIVI ELETTRONICI INTELLIGENTI CENNI DI PROGRAMMAZIONE

Dettagli

QC-POWER-3PC MAPPA DEI REGISTRI MODBUS pag. 1/ 5

QC-POWER-3PC MAPPA DEI REGISTRI MODBUS pag. 1/ 5 MAPPA DEI REGISTRI QC-POWER-3PC La seguente tabella mostra tutti i registri del QC-POWER-3PC. Tutti i registri sono a 16 bit di tipo integer (signed o unsigned). VALORI MISURATI (Codice Funzione $ 03)

Dettagli

Soluzioni a 8 bit per il bus del PIC18F8x20

Soluzioni a 8 bit per il bus del PIC18F8x20 Soluzioni a 8 bit per il bus del PIC18F8x20 Questo schema necessita di adattamenti software (e quindi non è ottimizzato per la velocità di esecuzione del ciclo di bus esterno) e non sfrutta tutto lo spazio

Dettagli

Exam of DIGITAL ELECTRONICS June 21 st, 2012 Prof. Marco Sampietro

Exam of DIGITAL ELECTRONICS June 21 st, 2012 Prof. Marco Sampietro Exam of DIGITAL ELECTRONICS June 21 st, 2012 Prof. Marco Sampietro Student I.D. number NAME Si consideri il circuito digitale combinatorio della figura seguente. La tensione d alimentazione è 5V e la soglia

Dettagli

ARDUINO UNO. Raccolta esercitazioni guidate 1 Led & Pulsati. IIS Aldini Valeriani Sirani - ROBOTS project Scheda 1 # 1 Materiale didattico

ARDUINO UNO. Raccolta esercitazioni guidate 1 Led & Pulsati. IIS Aldini Valeriani Sirani - ROBOTS project Scheda 1 # 1 Materiale didattico ARDUINO UNO Raccolta esercitazioni guidate 1 Led & Pulsati IIS Aldini Valeriani Sirani - ROBOTS project Scheda 1 # 1 Materiale didattico PRESENTAZIONE DELLA SCHEDA DIDATTICA SCOPO Gestione dell accensione

Dettagli

TRF. Trasmettitore di peso wireless Weight transmitter wireless

TRF. Trasmettitore di peso wireless Weight transmitter wireless Trasmettitore di peso wireless Weight transmitter wireless Trasmettitore di peso RF 868 MHz Weight transmitter RF 868 MHz Selezione canale RF e indirizzo di comunicazione tramite DIP- SWITCH Selecting

Dettagli

Il progetto sviluppato presenta la gestione tecnologica di una serra. Queste nuove metodologie stanno incontrando un forte interesse da parte degli

Il progetto sviluppato presenta la gestione tecnologica di una serra. Queste nuove metodologie stanno incontrando un forte interesse da parte degli Il progetto sviluppato presenta la gestione tecnologica di una serra. Queste nuove metodologie stanno incontrando un forte interesse da parte degli operatori del settore (orticoltori, floricoltori ecc.)

Dettagli

ITALIAN TECHNOLOGY grifo PRELIMINARE ETI 324. ETI 324 Rel Pagina 1

ITALIAN TECHNOLOGY grifo PRELIMINARE ETI 324. ETI 324 Rel Pagina 1 ITALIAN TECHNOLOGY grifo PRELIMINARE ETI 324 ETI 324 Rel. 3.30 Pagina 1 grifo ITALIAN TECHNOLOGY CN1 - CONNETTORE PER ABACO I/O BUS CN1 è un connettore a scatolino verticale con passo 2.54 mm a 26 piedini.

Dettagli