Il progetto di clock in tempo reale (RTC Design) è un chip che fornisce la data e l’ora corrette anche quando l’alimentazione è spenta. È un componente essenziale per i dispositivi IoT, l’automazione industriale e altre applicazioni in cui è essenziale una misurazione accurata del tempo. Con la tecnologia CMOS standard, è difficile progettare il proprio RTC perché tutta la logica richiesta è sepolta così in profondità nelle librerie di celle standard.
Anche con i fornitori terzi che vendono soluzioni pre-costruite, è difficile trovare progetti adatti alle proprie esigenze specifiche, soprattutto se si lavora con un budget limitato e si desidera ridurre al minimo il numero di componenti esterni. Ma non lasciare che queste sfide ti ostacolino! Questo articolo ti insegnerà come creare un RTC semplice ma efficace utilizzando solo componenti comuni e alcune competenze di codifica di base.
Le basi di un orologio in tempo reale
Un orologio in tempo reale è un sistema che tiene traccia della data e dell’ora in modo accurato, anche quando il dispositivo è spento. L’RTC è un chip semplice che ha un oscillatore integrato e alcuni registri di memoria per memorizzare data, ora e altri dati correlati. Il chip può essere programmato per mantenere l’ora anche quando l’alimentazione è spenta. È un componente essenziale per i dispositivi Internet of Things, l’automazione industriale e altre applicazioni in cui è essenziale una misurazione accurata del tempo.
Gli RTC non sono una novità: le persone li usano nei computer dal 1970. Ma sono ancora rilevanti oggi, grazie alle esigenze dell’informatica moderna. Ogni sistema informatico ha diversi orologi che tengono traccia di cose diverse, come la sequenza esatta delle istruzioni, il numero di istruzioni completate e il passare del tempo.
Di cosa avrai bisogno
– Un microcontrollore – Per questo progetto, utilizzeremo un semplice microcontrollore a 8 bit, ma potresti anche utilizzare un processore a 32 bit. Avrai bisogno di uno con un oscillatore che sia preciso tra 10 e 20 kHz.
– Un oscillatore a cristallo – Questo dispositivo crea un clock molto preciso e accurato che può essere utilizzato come clock principale per il microcontrollore.
– Un IC RTC – Sceglieremo uno molto comune che fornisce un calendario integrato (orologio in tempo reale) e una funzione di allarme.
– Un condensatore – Un condensatore viene utilizzato per contribuire a stabilizzare l’alimentazione fornita all’RTC.
– Una resistenza – Una resistenza viene utilizzata per limitare la corrente all’RTC.

Scegliere un IC RTC
Per creare un orologio in tempo reale, dovrai trovare un IC RTC che soddisfi i requisiti del tuo progetto. Il modo migliore per farlo è creare una tabella con tutte le informazioni pertinenti dalle schede tecniche di diversi RTC. Vorrai cercare un RTC che abbia le seguenti caratteristiche:
– Bassa tensione di alimentazione – L’RTC sarà alimentato dalla stessa tensione (3V o 5V) che alimenta il tuo microcontrollore. La tensione di alimentazione deve essere compresa tra 2 e 5 volt.
– Bassa corrente di alimentazione – L’RTC dovrebbe assorbire la minor quantità di corrente possibile dal microcontrollore. Questo aiuterà a prolungare la durata della batteria nei dispositivi alimentati a batteria. Idealmente, il consumo di corrente dovrebbe essere inferiore a 10 microampere.
– Un calendario integrato – Questo ti farà risparmiare tempo quando crei il codice per il tuo progetto.
Progettare l'RTC nel codice
Se stai creando un nuovo progetto RTC, dovrai scrivere del codice che inizializzi l’hardware e configuri l’RTC. Anche se stai sviluppando un progetto esistente, dovrai aggiungere il codice che legge l’RTC e visualizza l’ora.
– Inizia con l’hardware: Collega il cristallo, il condensatore e l’RTC al microcontrollore. Collega anche il pin di interrupt corretto all’RTC.
– Configura l’handler di interrupt: L’handler di interrupt è il codice che viene eseguito quando l’RTC invia un segnale al microcontrollore.
– Configura l’RTC: Dovrai programmare l’RTC con l’ora e la data corrette. L’RTC terrà traccia di queste informazioni e invierà questi dati al microcontrollore una volta al secondo.

Aggiunta della visualizzazione dell'orologio in tempo reale
Il modo più semplice per visualizzare l’ora sul tuo dispositivo è aggiungere alcuni LED di visualizzazione e del codice per farli lampeggiare. Puoi farlo aggiungendo uno o due LED. La luminosità dei LED dipenderà dal microcontrollore che stai utilizzando e da quanto luminoso vuoi che sia il display.
Fattori limitanti in questo progetto RTC
Questo progetto ha alcune limitazioni. Ecco le principali che dovrai tenere a mente:
– L’RTC potrebbe essere leggermente impreciso quando viene acceso per la prima volta. Questo è normale e diventerà gradualmente preciso durante il primo giorno. Quando crei un progetto con un RTC, potresti voler fornire all’utente la possibilità di impostare l’ora e la data del dispositivo.
– L’RTC manterrà l’ora solo quando il dispositivo è acceso. Questo è normale e previsto.
– L’RTC non è progettato per tenere traccia accuratamente della data. Può tenere traccia della data per alcuni giorni, ma dopo di ciò la data diventerà errata.
Conclusione
Ora che conosci le basi del design RTC, puoi iniziare a progettare il tuo. Abbiamo delineato le migliori pratiche per creare un design RTC che sia facile da costruire e preciso. Tieni presente che, sebbene progettare il tuo RTC possa sembrare impegnativo, non è impossibile! Trova il circuito integrato giusto, scegli i componenti corretti, disegna uno schema elettrico e scrivi del codice e sarai sulla buona strada per creare il tuo design RTC.




