Запуск системного вентилятора
Здравствуйте!
Возникла необходимость запускать системный вентилятор при запуске нагревателя хотенда.
Пока что он в оригинальной прошивке он запускается при срабатывание драйверов и нагревателя кровати. Какие строчки кода добавить (на подобие как это зделано про накреватель кровати) чтобы запуск системного вентилятора происходил и по запуски нагреватела хотенда?
Прошивка Марлин 1.1.x
Зарание благодарю!
Из Marlin_main.cpp
#if ENABLED(USE_CONTROLLER_FAN)
void controllerFan() {
static millis_t lastMotorOn = 0, // Last time a motor was turned on
nextMotorCheck = 0; // Last time the state was checked
const millis_t ms = millis();
if (ELAPSED(ms, nextMotorCheck)) {
nextMotorCheck = ms + 2500UL; // Not a time critical function, so only check every 2.5s
// If any of the drivers or the bed are enabled...
if (X_ENABLE_READ == X_ENABLE_ON || Y_ENABLE_READ == Y_ENABLE_ON || Z_ENABLE_READ == Z_ENABLE_ON
#if HAS_HEATED_BED
|| thermalManager.soft_pwm_amount_bed > 0
#endif
#if HAS_X2_ENABLE
|| X2_ENABLE_READ == X_ENABLE_ON
#endif
#if HAS_Y2_ENABLE
|| Y2_ENABLE_READ == Y_ENABLE_ON
#endif
#if HAS_Z2_ENABLE
|| Z2_ENABLE_READ == Z_ENABLE_ON
#endif
|| E0_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 1
|| E1_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 2
|| E2_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 3
|| E3_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 4
|| E4_ENABLE_READ == E_ENABLE_ON
#endif
#endif
#endif
#endif
) {
lastMotorOn = ms; //... set time to NOW so the fan will turn on
}
// Fan off if no steppers have been enabled for CONTROLLERFAN_SECS seconds
const uint8_t speed = (lastMotorOn && PENDING(ms, lastMotorOn + (CONTROLLERFAN_SECS) * 1000UL)) ? CONTROLLERFAN_SPEED : 0;
controllerFanSpeed = speed;
// allows digital or PWM fan output to be used (see M42 handling)
WRITE(CONTROLLER_FAN_PIN, speed);
analogWrite(CONTROLLER_FAN_PIN, speed);
}
}
Возникла необходимость запускать системный вентилятор при запуске нагревателя хотенда.
Пока что он в оригинальной прошивке он запускается при срабатывание драйверов и нагревателя кровати. Какие строчки кода добавить (на подобие как это зделано про накреватель кровати) чтобы запуск системного вентилятора происходил и по запуски нагреватела хотенда?
Прошивка Марлин 1.1.x
Зарание благодарю!
Из Marlin_main.cpp
#if ENABLED(USE_CONTROLLER_FAN)
void controllerFan() {
static millis_t lastMotorOn = 0, // Last time a motor was turned on
nextMotorCheck = 0; // Last time the state was checked
const millis_t ms = millis();
if (ELAPSED(ms, nextMotorCheck)) {
nextMotorCheck = ms + 2500UL; // Not a time critical function, so only check every 2.5s
// If any of the drivers or the bed are enabled...
if (X_ENABLE_READ == X_ENABLE_ON || Y_ENABLE_READ == Y_ENABLE_ON || Z_ENABLE_READ == Z_ENABLE_ON
#if HAS_HEATED_BED
|| thermalManager.soft_pwm_amount_bed > 0
#endif
#if HAS_X2_ENABLE
|| X2_ENABLE_READ == X_ENABLE_ON
#endif
#if HAS_Y2_ENABLE
|| Y2_ENABLE_READ == Y_ENABLE_ON
#endif
#if HAS_Z2_ENABLE
|| Z2_ENABLE_READ == Z_ENABLE_ON
#endif
|| E0_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 1
|| E1_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 2
|| E2_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 3
|| E3_ENABLE_READ == E_ENABLE_ON
#if E_STEPPERS > 4
|| E4_ENABLE_READ == E_ENABLE_ON
#endif
#endif
#endif
#endif
) {
lastMotorOn = ms; //... set time to NOW so the fan will turn on
}
// Fan off if no steppers have been enabled for CONTROLLERFAN_SECS seconds
const uint8_t speed = (lastMotorOn && PENDING(ms, lastMotorOn + (CONTROLLERFAN_SECS) * 1000UL)) ? CONTROLLERFAN_SPEED : 0;
controllerFanSpeed = speed;
// allows digital or PWM fan output to be used (see M42 handling)
WRITE(CONTROLLER_FAN_PIN, speed);
analogWrite(CONTROLLER_FAN_PIN, speed);
}
}
Популярные вопросы
Нужна помощь специалиста, разбирающегося в распиновке WG разъёмов на платах.
Собственно вопрос один, стандартная ли распиновка на большинстве плат или нет, в частности на платах SKR 1.3 и на МКS стм 32, на вторых я нашёл...
виртуальные датчики endstop x-y
Задумал перевести принтер (klipper + octopus pro h723) на работу в режим виртуальных
датчиков зндстор по осям x y...
датчиков зндстор по осям x y...
Глючит WI-fi подключение Bambu lab x1 carbon
Bambu Lab X1 Сarbon работал нормально, но в какой-то момент начало глючить подключение по Wi-fi.
Причем он и теперь подключается к ли...
Причем он и теперь подключается к ли...

Комментарии и вопросы
Я хз на счёт белых адресов, но...
Короче, у меня Wi-Fi чайник с....
Аудитория 400 человек, большая...
Здравствуйте. При печати возни...
Озадачился вопросом - как напе...
Всем добрый день! Сразу попрош...
Наконец-то принтер начал печат...