PROGETTI ARDUINO

  • HOME
  • PROGETTI E TUTORIAL
    • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI
  • HOME
  • PROGETTI E TUTORIAL
    • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI

Arduino ora e data con 
rtc ds3231 e display 16x2

Utilizziamo arduino e un modulo rtc ds3231 per visualizzare l'ora e la data
​su un display lcd i2c 16x02

In questo progetto mostreremo un semplice esempio di orologio e calendario utilizzando una scheda Arduino UNO e un modulo RTC DS3231, in cui l'ora e la data sono visualizzati sullo schermo LCD i2C 1602.
​Il bello di questo progetto è che possiamo modificare l'ora e la data agendo direttamente su due pulsanti inseriti su una breadboard.
ds3231 modulo rtc
Il modulo RTC DS3231 rappresentato in figura è dotato di una pila tipo CR2032 da 3V ed è in grado di fornire informazioni su data, ora e temperatura ambientale.
Grazie alla pila di cui è dotato, una volta memorizzata l'ora e la data, continua a segnare il tempo, anche quando non è in uso oppure tolto dal circuito.
Il modulo fornisce le informazioni ad Arduino attraverso il protocollo di comunicazione I2C o bus SDA/SCL.
In Arduino Uno questo protocollo è gestito dalle porte A4 e A5 in Arduino Mega 2560 sulle porte D20 e D21.
​In questo esercizio non ci limiteremo ad utilizzare il solo modulo RTC DS3231, ma utilizzeremo anche un display LCD 16x02 gestito da un driver I2C e quindi avremo contemporaneamente in funzione due componenti che utilizzano il bus SDA/SCL.

COMPONENTI:
Arduino UNO
eBay
Amazon
​Banggood
RTC DS3231
eBay
Amazon
Banggood
Display LCD 16x02 I2C
eBay
Amazon
​Banggood
2x Pulsanti Microswitch
eBay
Amazon
Banggood
2x Resistori da 10KOhm
eBay
Amazon
Banggood
Breadboard
eBay
Amazon
​Banggood
Cavetti jumper MM / MF
​eBay
​Amazon
​Banggood

SCHEMA DI COLLEGAMENTO:
arduino ds3231 rtc project
Nel circuito ci sono 2 pulsanti collegati rispettivamente ai pin 8 e 9. I due pulsanti sono utilizzati per impostare i parametri di data e ora (minuti, ore, data, mese e anno). 
Il primo pulsante seleziona il parametro e il secondo incrementa il parametro selezionato.

LIBRERIE:
Per prima cosa dobbiamo installare una libreria sull'Arduino IDE.
Utilizzeremo
 la libreria Newliquidcrystal_1.3.5 per il funzionamento del display LCD I2C. 
​

Per installare le librerie aprire Arduino IDE e cliccare su Sketch > #includi libreria > Aggiungi libreria da file .ZIP.. e scegliere la libreria appena scaricata. 

Il sketch di Arduino segue non utilizza alcuna libreria per il modulo RTC DS3231, la libreria Wire è per la comunicazione tra Arduino e il DS3231 per il protocollo I2C.
newliquidcrystal_1.3.5.zip
File Size: 2457 kb
File Type: zip
Scarica file


SKETCH:
arduino_rtc_ds3231___display_i2c.ino
File Size: 6 kb
File Type: ino
Scarica file

Il modulo DS3231 funziona solo con il formato BCD (Binary-coded decimal su wikipedia) e per convertire il BCD in decimale e viceversa ho usato le 2 righe seguenti (esempio per minuto): 
Click here to edit.

    
Click here to edit.

    
Visualizza l'ora e il calendario, prima di visualizzare i dati dell'ora e del calendario vengono convertiti dal formato BCD al formato decimale. 
Click here to edit.

    
​All'interno di questa piccola funzione in basso è inserita la pausa del lampeggiare e viene interrotta dai pulsanti (collegati ai pin 8 e 9) . 

Con questa funzione possiamo vedere il lampeggiare del parametro selezionato con una frequenza di 2Hz. 
Quindi un ritardo di 250 ms arriva dopo la stampa del parametro selezionato e dopo questo delay vengono stampati 2 spazi per far sparire il parametro sul display LCD, successivamente un altro delay di 250 ms arriva dopo la stampa dei 2 spazi. 
Click here to edit.

    

Offerta speciale Banggood solo utenti www.ProgettiArduino.com
Foto
Foto
Foto
Foto
​Se ti va lascia un mi piace, supporta il blog!
© ProgettiArduino.com 2019 - Fancello Salvatore
​ Layout, immagini e testi sono di esclusiva proprietà di www.progettiarduino.com 
Privacy Policy