Sei sulla pagina 1di 2

Published on L'Elettronica Open Source (http://it.emcelettronica.

com)

Home > Blog > blog di Rossella De Marchi > Contenuto

Come costruire un termometro digitale


By Rossella De Marchi
Created 20/10/2010 - 12:50

Vi siete mai chiesti come costruire un termometro digitale? In poche semplici mosse è possibile
costruire un dispositivo in grado di misurare la temperatura in gradi Celsius e Fahreneit. La
retroilluminazione consente di leggere la temperatura anche in condizioni di scarsa luminosità.
Prima di tutto, procuratevi un microcontrollore PIC16F688 e un sensore di temperatura DS1820.
Ora siete pronti per cominciare.

Misurare la temperatura in gradi Celsius e Fahreneit

Avete mai provato a costruire un termometro digitale? Certo, è molto più semplice che non costruirne uno
al mercurio che, oltrettutto, è ormai stato messo fuori legge, visto che il mercurio è molto tossico. Molto
meglio armeggiare con un termometro digitale che, nel peggiore dei casi, non si accenderà, ma almeno non
vi succederà niente! Siete pronti allora a scoprire come si costruisce? Cominciamo subito.

I termometri digitali sono dispositivi interessanti perché possono mostrare le temperature in formati
facilmente leggibili da chiunque. Questo termometro digitale si basa su un microcontrollore
PIC16F688 e su un sensore di temperatura DS1820, e visualizza la temperatura su uno schermo LCD in
entrambe le scale, Celsius e Fahrenheit. Il DS1820 è progettato per misurare temperature da -55 a 125 ° C,
con incrementi di 0,5 ° C. Le istruzioni seguenti funzionano solo per DS1820.

Il sensore DS1820 converte la temperatura in una parola digitale a 9-bit, che viene letta da PIC16F688
come due byte. Il valore del bit meno significativo è di 0,5 ° C. Per una temperatura positiva, i secondi otto
bit dopo la LSB danno la parte intera della temperatura. Inoltre, l?uso della virgola può essere evitato
durante la conversione da Celsius a Fahrenheit, utilizzando un fattore di scala di 10. Pertanto la
temperatura 25,5 ° C (in scala 255) viene convertito in Fahreneit così:

TempinF = 9 * TempinC / 5 + 320 = 9*255/5 + 320 = 779 (che è 76,9 F)

Il numero 320 si riferisce al fatto che per ottenere la temperatura in gradi Fahreneit è necessario
sommare 32 alla temperatura in gradi Celsius. Questo perché l?acqua congela a 32 gradi Fahreneit,
come succede a 0 gradi Celsius. Perché allora 320 e non 32? Perché stiamo lavorando con la scala di 10
per non avere la virgola!

Tuttavia, le temperature negative sono memorizzate in una forma complementare. Quindi, il bit più
significativo della lettura della temperatura a 2 byte da DS1820 è 1 se la temperatura è inferiore a 0°C. Il
firmware cura tutte le letture di temperatura negativa (in entrambe le scale C e F). La temperatura
calcolata viene visualizzata sul display LCD a matrice di stringhe a 5 cifre, xxx.x (ad esempio, 24,5, 101,0, -
12,5).

Il sensore DS1820 per il termometro digitale


Il sensore di temperatura DS1820 è letto dal microcontrollore PIC16F688 attraverso la porta RA5. La
temperatura calcolata viene convertita in una stringa e inviata al display LCD per la visualizzazione. Il
display LCD funziona in modalità 4-bit, e le porte RC0-RC3 servono al D4-D7 pin dati del display LCD. I
segnali Select Register (RS) ed Enable (E) sono forniti tramite le porte RC4 e RC5. La regolazione del
contrasto del display LCD è fatta con il potenziometro da 10K.

Inoltre, ci sono due interruttori. Il primo serve per il ripristino del sistema per resettare tutto e reinizializzare
il display LCD. L?altro è collegato al pin di interrupt esterni PIC16F688. Questo interruttore serve alla
retroilluminazione LCD ed è utile per la lettura del display della temperatura in condizioni di scarsa
illuminazione. Quando il sistema viene acceso, la retroilluminazione LCD viene attivata attraverso
un?impostazione predefinita.

A questo punto manca soltanto il firmware per il termometro digitale [1], di cui potete trovare vari esempi
cercando in rete, tra quelli creati da esperti di tecnologia open source.

Tecnologia come costruire un termometro digitale display led microcontrollore PIC16F688


EMCelettronica Srl - P.iva 06433601009

Source URL: http://it.emcelettronica.com/come-costruire-termometro-digitale

Links:
[1] http://pic16f628a.blogspot.com/2010/09/centigrade-and-fahrenheit-scale-digital.html