Skip to content

Commit e7906ce

Browse files
committed
repeat preheat
1 parent 9a4859f commit e7906ce

File tree

3 files changed

+11
-43
lines changed

3 files changed

+11
-43
lines changed

Marlin/src/core/macros.h

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -712,10 +712,11 @@
712712
( DEFER2(__RREPEAT2)()(ADD1(_RPT_I),SUB1(_RPT_N),_RPT_OP,V) ) \
713713
( /* Do nothing */ )
714714
#define __RREPEAT2() _RREPEAT2
715-
#define RREPEAT_S(S,N,OP) EVAL1024(_RREPEAT(S,SUB##S(N),OP))
716-
#define RREPEAT(N,OP) RREPEAT_S(0,N,OP)
717-
#define RREPEAT2_S(S,N,OP,V...) EVAL1024(_RREPEAT2(S,SUB##S(N),OP,V))
718-
#define RREPEAT2(N,OP,V...) RREPEAT2_S(0,N,OP,V)
715+
#define RREPEAT_S(S,N,OP) EVAL1024(_RREPEAT(S,SUB##S(N),OP))
716+
#define RREPEAT(N,OP) RREPEAT_S(0,N,OP)
717+
#define RREPEAT_1(N,OP) RREPEAT_S(1,INCREMENT(N),OP)
718+
#define RREPEAT2_S(S,N,OP,V...) EVAL1024(_RREPEAT2(S,SUB##S(N),OP,V))
719+
#define RREPEAT2(N,OP,V...) RREPEAT2_S(0,N,OP,V)
719720

720721
// Call OP(A) with each item as an argument
721722
#define _MAP(_MAP_OP,A,V...) \

Marlin/src/lcd/marlinui.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ constexpr uint8_t epps = ENCODER_PULSES_PER_STEP;
149149
const preheat_t &pre = material_preset[m];
150150
TERN_(HAS_HOTEND, if (TEST(pmask, PT_HOTEND)) thermalManager.setTargetHotend(pre.hotend_temp, e));
151151
TERN_(HAS_HEATED_BED, if (TEST(pmask, PT_BED)) thermalManager.setTargetBed(pre.bed_temp));
152-
//TERN_(HAS_HEATED_CHAMBER, if (TEST(pmask, PT_CHAMBER)) thermalManager.setTargetBed(pre.chamber_temp));
152+
//TERN_(HAS_HEATED_CHAMBER, if (TEST(pmask, PT_CHAMBER)) thermalManager.setTargetChamber(pre.chamber_temp));
153153
TERN_(HAS_FAN, if (TEST(pmask, PT_FAN)) thermalManager.set_fan_speed(0, pre.fan_speed));
154154
}
155155
#endif

Marlin/src/module/temperature.cpp

Lines changed: 5 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,6 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED);
316316
#endif
317317

318318
#if HAS_HOTEND
319-
320319
hotend_info_t Temperature::temp_hotend[HOTENDS];
321320
const celsius_t Temperature::hotend_maxtemp[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP, HEATER_5_MAXTEMP, HEATER_6_MAXTEMP, HEATER_7_MAXTEMP);
322321

@@ -325,47 +324,15 @@ PGMSTR(str_t_heating_failed, STR_T_HEATING_FAILED);
325324
S >= 998 || M <= _MAX(TT_NAME(S)[0].celsius, TT_NAME(S)[COUNT(TT_NAME(S)) - 1].celsius) - HOTEND_OVERSHOOT, \
326325
"HEATER_" STRINGIFY(N) "_MAXTEMP (" STRINGIFY(M) ") is too high for thermistor_" STRINGIFY(S) ".h with HOTEND_OVERSHOOT=" STRINGIFY(HOTEND_OVERSHOOT) ".");
327326
#define CHECK_MAXTEMP(N) TERN(TEMP_SENSOR_##N##_IS_THERMISTOR, CHECK_MAXTEMP_, CODE_0)(N, HEATER_##N##_MAXTEMP, TEMP_SENSOR_##N)
328-
329327
REPEAT(HOTENDS, CHECK_MAXTEMP)
330328

331-
#undef CHECK_MAXTEMP_
332-
#undef CHECK_MAXTEMP
333-
334-
#define CHECK_PREHEAT_(N,P,T,M) static_assert(T <= M - HOTEND_OVERSHOOT, "PREHEAT_" STRINGIFY(P) "_TEMP_HOTEND (" STRINGIFY(T) ") must be less than HEATER_" STRINGIFY(N) "_MAXTEMP (" STRINGIFY(M) ") - " STRINGIFY(HOTEND_OVERSHOOT) ".");
335-
#define CHECK_PREHEAT(N,P) CHECK_PREHEAT_(N,P,PREHEAT_##P##_TEMP_HOTEND,HEATER_##N##_MAXTEMP)
336-
#if PREHEAT_1_TEMP_HOTEND
337-
REPEAT2(HOTENDS, CHECK_PREHEAT, 1)
338-
#endif
339-
#if PREHEAT_2_TEMP_HOTEND
340-
REPEAT2(HOTENDS, CHECK_PREHEAT, 2)
341-
#endif
342-
#if PREHEAT_3_TEMP_HOTEND
343-
REPEAT2(HOTENDS, CHECK_PREHEAT, 3)
344-
#endif
345-
#if PREHEAT_4_TEMP_HOTEND
346-
REPEAT2(HOTENDS, CHECK_PREHEAT, 4)
347-
#endif
348-
#if PREHEAT_5_TEMP_HOTEND
349-
REPEAT2(HOTENDS, CHECK_PREHEAT, 5)
350-
#endif
351-
#if PREHEAT_6_TEMP_HOTEND
352-
REPEAT2(HOTENDS, CHECK_PREHEAT, 6)
353-
#endif
354-
#if PREHEAT_7_TEMP_HOTEND
355-
REPEAT2(HOTENDS, CHECK_PREHEAT, 7)
356-
#endif
357-
#if PREHEAT_8_TEMP_HOTEND
358-
REPEAT2(HOTENDS, CHECK_PREHEAT, 8)
359-
#endif
360-
#if PREHEAT_9_TEMP_HOTEND
361-
REPEAT2(HOTENDS, CHECK_PREHEAT, 9)
362-
#endif
363-
#if PREHEAT_10_TEMP_HOTEND
364-
REPEAT2(HOTENDS, CHECK_PREHEAT, 10)
329+
#if HAS_PREHEAT
330+
#define CHECK_PREHEAT__(N,P,T,M) static_assert(T <= M - HOTEND_OVERSHOOT, "PREHEAT_" STRINGIFY(P) "_TEMP_HOTEND (" STRINGIFY(T) ") must be less than HEATER_" STRINGIFY(N) "_MAXTEMP (" STRINGIFY(M) ") - " STRINGIFY(HOTEND_OVERSHOOT) ".");
331+
#define CHECK_PREHEAT_(N,P) CHECK_PREHEAT__(N, P, PREHEAT_##P##_TEMP_HOTEND, HEATER_##N##_MAXTEMP);
332+
#define CHECK_PREHEAT(P) REPEAT2(HOTENDS, CHECK_PREHEAT_, P);
333+
RREPEAT_1(PREHEAT_COUNT, CHECK_PREHEAT)
365334
#endif
366335

367-
#undef CHECK_PREHEAT_
368-
#undef CHECK_PREHEAT
369336
#endif
370337

371338
#if HAS_TEMP_REDUNDANT

0 commit comments

Comments
 (0)