My Marlin configs for Fabrikator Mini and CTC i3 Pro B
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

thermistortables.h 3.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. #ifndef THERMISTORTABLES_H_
  2. #define THERMISTORTABLES_H_
  3. #define OVERSAMPLENR 16
  4. #if (THERMISTORHEATER == 1) || (THERMISTORBED == 1) //100k bed thermistor
  5. #define NUMTEMPS_1 61
  6. const short temptable_1[NUMTEMPS_1][2] = {
  7. { (23*OVERSAMPLENR) , 300 },
  8. { (25*OVERSAMPLENR) , 295 },
  9. { (27*OVERSAMPLENR) , 290 },
  10. { (28*OVERSAMPLENR) , 285 },
  11. { (31*OVERSAMPLENR) , 280 },
  12. { (33*OVERSAMPLENR) , 275 },
  13. { (35*OVERSAMPLENR) , 270 },
  14. { (38*OVERSAMPLENR) , 265 },
  15. { (41*OVERSAMPLENR) , 260 },
  16. { (44*OVERSAMPLENR) , 255 },
  17. { (48*OVERSAMPLENR) , 250 },
  18. { (52*OVERSAMPLENR) , 245 },
  19. { (56*OVERSAMPLENR) , 240 },
  20. { (61*OVERSAMPLENR) , 235 },
  21. { (66*OVERSAMPLENR) , 230 },
  22. { (71*OVERSAMPLENR) , 225 },
  23. { (78*OVERSAMPLENR) , 220 },
  24. { (84*OVERSAMPLENR) , 215 },
  25. { (92*OVERSAMPLENR) , 210 },
  26. { (100*OVERSAMPLENR), 205 },
  27. { (109*OVERSAMPLENR), 200 },
  28. { (120*OVERSAMPLENR), 195 },
  29. { (131*OVERSAMPLENR), 190 },
  30. { (143*OVERSAMPLENR), 185 },
  31. { (156*OVERSAMPLENR), 180 },
  32. { (171*OVERSAMPLENR), 175 },
  33. { (187*OVERSAMPLENR), 170 },
  34. { (205*OVERSAMPLENR), 165 },
  35. { (224*OVERSAMPLENR), 160 },
  36. { (245*OVERSAMPLENR), 155 },
  37. { (268*OVERSAMPLENR), 150 },
  38. { (293*OVERSAMPLENR), 145 },
  39. { (320*OVERSAMPLENR), 140 },
  40. { (348*OVERSAMPLENR), 135 },
  41. { (379*OVERSAMPLENR), 130 },
  42. { (411*OVERSAMPLENR), 125 },
  43. { (445*OVERSAMPLENR), 120 },
  44. { (480*OVERSAMPLENR), 115 },
  45. { (516*OVERSAMPLENR), 110 },
  46. { (553*OVERSAMPLENR), 105 },
  47. { (591*OVERSAMPLENR), 100 },
  48. { (628*OVERSAMPLENR), 95 },
  49. { (665*OVERSAMPLENR), 90 },
  50. { (702*OVERSAMPLENR), 85 },
  51. { (737*OVERSAMPLENR), 80 },
  52. { (770*OVERSAMPLENR), 75 },
  53. { (801*OVERSAMPLENR), 70 },
  54. { (830*OVERSAMPLENR), 65 },
  55. { (857*OVERSAMPLENR), 60 },
  56. { (881*OVERSAMPLENR), 55 },
  57. { (903*OVERSAMPLENR), 50 },
  58. { (922*OVERSAMPLENR), 45 },
  59. { (939*OVERSAMPLENR), 40 },
  60. { (954*OVERSAMPLENR), 35 },
  61. { (966*OVERSAMPLENR), 30 },
  62. { (977*OVERSAMPLENR), 25 },
  63. { (985*OVERSAMPLENR), 20 },
  64. { (993*OVERSAMPLENR), 15 },
  65. { (999*OVERSAMPLENR), 10 },
  66. { (1004*OVERSAMPLENR), 5 },
  67. { (1008*OVERSAMPLENR), 0 } //safety
  68. };
  69. #endif
  70. #if (THERMISTORHEATER == 2) || (THERMISTORBED == 2) //200k bed thermistor
  71. #define NUMTEMPS_2 21
  72. const short temptable_2[NUMTEMPS_2][2] = {
  73. {(1*OVERSAMPLENR), 848},
  74. {(54*OVERSAMPLENR), 275},
  75. {(107*OVERSAMPLENR), 228},
  76. {(160*OVERSAMPLENR), 202},
  77. {(213*OVERSAMPLENR), 185},
  78. {(266*OVERSAMPLENR), 171},
  79. {(319*OVERSAMPLENR), 160},
  80. {(372*OVERSAMPLENR), 150},
  81. {(425*OVERSAMPLENR), 141},
  82. {(478*OVERSAMPLENR), 133},
  83. {(531*OVERSAMPLENR), 125},
  84. {(584*OVERSAMPLENR), 118},
  85. {(637*OVERSAMPLENR), 110},
  86. {(690*OVERSAMPLENR), 103},
  87. {(743*OVERSAMPLENR), 95},
  88. {(796*OVERSAMPLENR), 86},
  89. {(849*OVERSAMPLENR), 77},
  90. {(902*OVERSAMPLENR), 65},
  91. {(955*OVERSAMPLENR), 49},
  92. {(1008*OVERSAMPLENR), 17},
  93. {(1020*OVERSAMPLENR), 0} //safety
  94. };
  95. #endif
  96. #if (THERMISTORHEATER == 3) || (THERMISTORBED == 3) //mendel-parts
  97. #define NUMTEMPS_3 28
  98. const short temptable_3[NUMTEMPS_3][2] = {
  99. {(1*OVERSAMPLENR),864},
  100. {(21*OVERSAMPLENR),300},
  101. {(25*OVERSAMPLENR),290},
  102. {(29*OVERSAMPLENR),280},
  103. {(33*OVERSAMPLENR),270},
  104. {(39*OVERSAMPLENR),260},
  105. {(46*OVERSAMPLENR),250},
  106. {(54*OVERSAMPLENR),240},
  107. {(64*OVERSAMPLENR),230},
  108. {(75*OVERSAMPLENR),220},
  109. {(90*OVERSAMPLENR),210},
  110. {(107*OVERSAMPLENR),200},
  111. {(128*OVERSAMPLENR),190},
  112. {(154*OVERSAMPLENR),180},
  113. {(184*OVERSAMPLENR),170},
  114. {(221*OVERSAMPLENR),160},
  115. {(265*OVERSAMPLENR),150},
  116. {(316*OVERSAMPLENR),140},
  117. {(375*OVERSAMPLENR),130},
  118. {(441*OVERSAMPLENR),120},
  119. {(513*OVERSAMPLENR),110},
  120. {(588*OVERSAMPLENR),100},
  121. {(734*OVERSAMPLENR),80},
  122. {(856*OVERSAMPLENR),60},
  123. {(938*OVERSAMPLENR),40},
  124. {(986*OVERSAMPLENR),20},
  125. {(1008*OVERSAMPLENR),0},
  126. {(1018*OVERSAMPLENR),-20}
  127. };
  128. #endif
  129. #if THERMISTORHEATER == 1
  130. #define NUMTEMPS NUMTEMPS_1
  131. #define temptable temptable_1
  132. #elif THERMISTORHEATER == 2
  133. #define NUMTEMPS NUMTEMPS_2
  134. #define temptable temptable_2
  135. #elif THERMISTORHEATER == 3
  136. #define NUMTEMPS NUMTEMPS_3
  137. #define temptable temptable_3
  138. #else
  139. #error No heater thermistor table specified
  140. #endif
  141. #endif //THERMISTORTABLES_H_