|
@@ -1087,17 +1087,17 @@ void Temperature::init() {
|
1087
|
1087
|
delay(250);
|
1088
|
1088
|
|
1089
|
1089
|
#define TEMP_MIN_ROUTINE(NR) \
|
1090
|
|
- minttemp[NR] = HEATER_ ## NR ## _MINTEMP; \
|
1091
|
|
- while(analog2temp(minttemp_raw[NR], NR) < HEATER_ ## NR ## _MINTEMP) { \
|
1092
|
|
- if (HEATER_ ## NR ## _RAW_LO_TEMP < HEATER_ ## NR ## _RAW_HI_TEMP) \
|
|
1090
|
+ minttemp[NR] = HEATER_ ##NR## _MINTEMP; \
|
|
1091
|
+ while(analog2temp(minttemp_raw[NR], NR) < HEATER_ ##NR## _MINTEMP) { \
|
|
1092
|
+ if (HEATER_ ##NR## _RAW_LO_TEMP < HEATER_ ##NR## _RAW_HI_TEMP) \
|
1093
|
1093
|
minttemp_raw[NR] += OVERSAMPLENR; \
|
1094
|
1094
|
else \
|
1095
|
1095
|
minttemp_raw[NR] -= OVERSAMPLENR; \
|
1096
|
1096
|
}
|
1097
|
1097
|
#define TEMP_MAX_ROUTINE(NR) \
|
1098
|
|
- maxttemp[NR] = HEATER_ ## NR ## _MAXTEMP; \
|
1099
|
|
- while(analog2temp(maxttemp_raw[NR], NR) > HEATER_ ## NR ## _MAXTEMP) { \
|
1100
|
|
- if (HEATER_ ## NR ## _RAW_LO_TEMP < HEATER_ ## NR ## _RAW_HI_TEMP) \
|
|
1098
|
+ maxttemp[NR] = HEATER_ ##NR## _MAXTEMP; \
|
|
1099
|
+ while(analog2temp(maxttemp_raw[NR], NR) > HEATER_ ##NR## _MAXTEMP) { \
|
|
1100
|
+ if (HEATER_ ##NR## _RAW_LO_TEMP < HEATER_ ##NR## _RAW_HI_TEMP) \
|
1101
|
1101
|
maxttemp_raw[NR] -= OVERSAMPLENR; \
|
1102
|
1102
|
else \
|
1103
|
1103
|
maxttemp_raw[NR] += OVERSAMPLENR; \
|
|
@@ -1256,7 +1256,7 @@ void Temperature::disable_all_heaters() {
|
1256
|
1256
|
#define DISABLE_HEATER(NR) { \
|
1257
|
1257
|
setTargetHotend(0, NR); \
|
1258
|
1258
|
soft_pwm[NR] = 0; \
|
1259
|
|
- WRITE_HEATER_ ## NR (LOW); \
|
|
1259
|
+ WRITE_HEATER_ ##NR (LOW); \
|
1260
|
1260
|
}
|
1261
|
1261
|
|
1262
|
1262
|
#if HAS_TEMP_HOTEND
|
|
@@ -1621,29 +1621,29 @@ void Temperature::isr() {
|
1621
|
1621
|
|
1622
|
1622
|
// Macros for Slow PWM timer logic
|
1623
|
1623
|
#define _SLOW_PWM_ROUTINE(NR, src) \
|
1624
|
|
- soft_pwm_ ## NR = src; \
|
1625
|
|
- if (soft_pwm_ ## NR > 0) { \
|
1626
|
|
- if (state_timer_heater_ ## NR == 0) { \
|
1627
|
|
- if (state_heater_ ## NR == 0) state_timer_heater_ ## NR = MIN_STATE_TIME; \
|
1628
|
|
- state_heater_ ## NR = 1; \
|
1629
|
|
- WRITE_HEATER_ ## NR(1); \
|
|
1624
|
+ soft_pwm_ ##NR = src; \
|
|
1625
|
+ if (soft_pwm_ ##NR > 0) { \
|
|
1626
|
+ if (state_timer_heater_ ##NR == 0) { \
|
|
1627
|
+ if (state_heater_ ##NR == 0) state_timer_heater_ ##NR = MIN_STATE_TIME; \
|
|
1628
|
+ state_heater_ ##NR = 1; \
|
|
1629
|
+ WRITE_HEATER_ ##NR(1); \
|
1630
|
1630
|
} \
|
1631
|
1631
|
} \
|
1632
|
1632
|
else { \
|
1633
|
|
- if (state_timer_heater_ ## NR == 0) { \
|
1634
|
|
- if (state_heater_ ## NR == 1) state_timer_heater_ ## NR = MIN_STATE_TIME; \
|
1635
|
|
- state_heater_ ## NR = 0; \
|
1636
|
|
- WRITE_HEATER_ ## NR(0); \
|
|
1633
|
+ if (state_timer_heater_ ##NR == 0) { \
|
|
1634
|
+ if (state_heater_ ##NR == 1) state_timer_heater_ ##NR = MIN_STATE_TIME; \
|
|
1635
|
+ state_heater_ ##NR = 0; \
|
|
1636
|
+ WRITE_HEATER_ ##NR(0); \
|
1637
|
1637
|
} \
|
1638
|
1638
|
}
|
1639
|
1639
|
#define SLOW_PWM_ROUTINE(n) _SLOW_PWM_ROUTINE(n, soft_pwm[n])
|
1640
|
1640
|
|
1641
|
1641
|
#define PWM_OFF_ROUTINE(NR) \
|
1642
|
|
- if (soft_pwm_ ## NR < slow_pwm_count) { \
|
1643
|
|
- if (state_timer_heater_ ## NR == 0) { \
|
1644
|
|
- if (state_heater_ ## NR == 1) state_timer_heater_ ## NR = MIN_STATE_TIME; \
|
1645
|
|
- state_heater_ ## NR = 0; \
|
1646
|
|
- WRITE_HEATER_ ## NR (0); \
|
|
1642
|
+ if (soft_pwm_ ##NR < slow_pwm_count) { \
|
|
1643
|
+ if (state_timer_heater_ ##NR == 0) { \
|
|
1644
|
+ if (state_heater_ ##NR == 1) state_timer_heater_ ##NR = MIN_STATE_TIME; \
|
|
1645
|
+ state_heater_ ##NR = 0; \
|
|
1646
|
+ WRITE_HEATER_ ##NR (0); \
|
1647
|
1647
|
} \
|
1648
|
1648
|
}
|
1649
|
1649
|
|