Go Down

Topic: sensore temperatura ds18b20 e 7 segment display sparkfun (Read 3066 times) previous topic - next topic

PaoloP

#15
Dec 16, 2012, 01:16 pm Last Edit: Dec 16, 2012, 01:20 pm by PaoloP Reason: 1
Prova a modificare il
Code: [Select]
Wire.write(0x79);
Wire.write(0x00);


con
Code: [Select]
Wire.write(0x79);
Wire.write((byte) 0);


il comando serve a posizionare il cursore sul primo carattere.

PaoloP


Si, appunto da quel link che ho capito come accendere il led 7... ;)...comunque con   Wire.write(0x7B);  Wire.write(0b10000000); ...Funziona! il passaggio dal segno - meno al +....spegne completamente la prima cifra...

dal sito sembra che per accendere il meno debba accendere il 7° segmento quindi 0b01000000, ma se ti funziona con 0b10000000 allora va bene lo stesso.


l'ultimo sketch che ho postato...è un po elementare però se imposto i vari intervalli dovrebbe funzionare credo... temp>0 ; temp>99 ; temp<0 ;temp>-99
secondo te non va bene?


No, gli intervalli da considerare sono
>999
il numero ha 4 cifre quindi devi scriverle tutte nel display

>99
numero a tre cifre. salti la prima casella e scrivi le altre tre.

>9
numero a 2 cifre. salti la prima e la seconda e scrivi il numero nelle ultime due celle

infine c'è il numero ad una cifra.
lo scrivi nella quarta cella saltando le prime tre.

Se la temperatura è minore di 0, scrivi il meno e trasformi il numero in positivo controllando i casi precedenti.
Se misuri in °C non puoi misurare meno di -276 quindi non hai problemi con negativi a 4 cifre.

Per il problema col write(0) ho scritto nel post precedente.

Nickb84

taac! bellissimo!  :D

devo ancora vedere se i range funzionano.

Grazie



Go Up