MrDEB
Well-Known Member
While waiting for the ICSP expander boards I have been mulling over ideas for an 8 x 24 led matrix display to display the temperature of the beer cooler I am kinda in charge of. Our membership voted to increase the refrigeration system from 6K BTU's to 12K BTU's ($4100 worth of equipment) and wanting to display the present cooler temperature which we try to keep at 34 degrees. We serve draft beer and going from a cooler temp of 40 degrees down to 34 has saved a-lot of beer foam-over (the beer foams less the cooler it is We went from 10 gallons over-foam to 1 quart aprox in a 7 day period.)
Anyway contemplating how to best achieve the desired results. Using basically the same code as my 8 x 8 scrolling matrix project but using a 200 ohm resistor for each of the 24 anodes (using 3-common cathode 8 x 8 matrix displays)then use 3 - uln 2803 to sink the current (idea from Graham Mitchel's Tetris game).Yes maybe could get by with one uln2803 but may exceed the chips sinking spec.
My idea hangup is converting the DS18B20 output to the led matrix.
Using
Code:
IF DS18B20.Find THEN
DS18B20.Convert
GetTemp(TempA, TempB)
TempF = ((TempA*10+TempB/1000)*9/5+320)/10
Then using CONST arrays to display the value of TempF on the LED matrix. Basically converting TempF to a 16bit longword I think?? Unless there is a method to directly convert the DS18B20 10 bit output to a 16 bit output (Pretty sure I need the 16bit output for the display (8 bits per digit) but need more research.
Any ideas are welcomed.
Anyway contemplating how to best achieve the desired results. Using basically the same code as my 8 x 8 scrolling matrix project but using a 200 ohm resistor for each of the 24 anodes (using 3-common cathode 8 x 8 matrix displays)then use 3 - uln 2803 to sink the current (idea from Graham Mitchel's Tetris game).Yes maybe could get by with one uln2803 but may exceed the chips sinking spec.
My idea hangup is converting the DS18B20 output to the led matrix.
Using
Code:
IF DS18B20.Find THEN
DS18B20.Convert
GetTemp(TempA, TempB)
TempF = ((TempA*10+TempB/1000)*9/5+320)/10
Then using CONST arrays to display the value of TempF on the LED matrix. Basically converting TempF to a 16bit longword I think?? Unless there is a method to directly convert the DS18B20 10 bit output to a 16 bit output (Pretty sure I need the 16bit output for the display (8 bits per digit) but need more research.
Any ideas are welcomed.