Pauldesign
Senior Member
Hey Folks,
Getting bored during the Easter break, i've been thinking of designing a causal speaking thermometer using the DS18B20 chip and SPE030 TTS module (i know is obsolete now but i managed to get the very last (sexy female voice one ).
My idea at present although feasible but clumsy and cumbersome, is to create a loop-up table of temperatures values between -20 and +125 deg Celsius in increment of 1 deg and stored on a 20x2 PICAXE memory.
Whereby temp will be read using the readtemp command and stored in a variable and later compared with the stored temp values on the PICAXE 20X2 and if a match exist, the temp numeric value will be sent via I2C to the SPE030 and be spoken. There is no doubt that the above method will work.
But is there a better or elegant way (without comparing the read temp against pre-stored temp values in a loop-up table) whereby the temp value acquired can be instantly (on the fly) sent as numeric or text to the SPE030 without intermediate comparisons.
I also thought of using the BCDtoASCII commands but in the end will be boils down to the same method as mentioned above.
Dough fighting over spilled milk, it would have been nice if the SPE030 was somehow able to indirectly translate values stored on memory locations rather than only translating direct alphanumeric strings sent to it.
Nevertheless, any other non out of topic thoughts are welcome.
Cheers
Getting bored during the Easter break, i've been thinking of designing a causal speaking thermometer using the DS18B20 chip and SPE030 TTS module (i know is obsolete now but i managed to get the very last (sexy female voice one ).
My idea at present although feasible but clumsy and cumbersome, is to create a loop-up table of temperatures values between -20 and +125 deg Celsius in increment of 1 deg and stored on a 20x2 PICAXE memory.
Whereby temp will be read using the readtemp command and stored in a variable and later compared with the stored temp values on the PICAXE 20X2 and if a match exist, the temp numeric value will be sent via I2C to the SPE030 and be spoken. There is no doubt that the above method will work.
But is there a better or elegant way (without comparing the read temp against pre-stored temp values in a loop-up table) whereby the temp value acquired can be instantly (on the fly) sent as numeric or text to the SPE030 without intermediate comparisons.
I also thought of using the BCDtoASCII commands but in the end will be boils down to the same method as mentioned above.
Dough fighting over spilled milk, it would have been nice if the SPE030 was somehow able to indirectly translate values stored on memory locations rather than only translating direct alphanumeric strings sent to it.
Nevertheless, any other non out of topic thoughts are welcome.
Cheers