triffid / FiveD_on_Arduino

Rewrite of reprap mendel firmware
http://forums.reprap.org/read.php?147,33082
GNU General Public License v2.0
30 stars 12 forks source link

update thermistor lookup table to 14.2 fixed point for greater accuracy. #25

Closed jgilmore closed 13 years ago

jgilmore commented 13 years ago

Also regenerated thermistor table with 50 entries, and trimmed down the ones in uninteresting ranges.

Thermistor table is in a seperate file, with the old thermistor table included in 14.2 format so as to not force those already using it to recalibrate.

Modified version of createThermistorTable.py included. uint16_t instead of short, added PROGMEM, and of course converted to 14.2 fixed point notation with comments with the temp in C. Also added/changed some comments and ignored temperatures <0 (uint, remember?)

Added debug messages to thermistor reading and temp calculations.

Corrected default temp sensor entry in config.h.dist to thermistor instead of intercom. (Now matches earlier definitions which by default say we're using a thermistor)

Added noheater sensor example to config.h.dist

Since I simply copied the example linear interpolation formula from wikipedia, I'm certian that it could be more efficient. The code that was there wouldn't work with 14.2 table values, and my understanding of it was too shallow to fix it. This works, and upgading the calculations to uint32_t actually takes less code space than leaving them at uint16_t. I assume it's calling a library routine that's already being linked in for the 32-bit math.

triffid commented 13 years ago

this is excellent, thanks! pushed to master :)