Запуск системного вентилятора
Здравствуйте!
Возникла необходимость запускать системный вентилятор при запуске нагревателя хотенда.
Пока что он в оригинальной прошивке он запускается при срабатывание драйверов и нагревателя кровати. Какие строчки кода добавить (на подобие как это зделано про накреватель кровати) чтобы запуск системного вентилятора происходил и по запуски нагреватела хотенда?
Прошивка Марлин 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);
}
}
Популярные вопросы
Пожалуйста! Помогите с настройкой слайсера
Приветствую!
Приобрел себе новенький K1 Max. Воодушевленный данной покупкой, сразу беру заказ на патрубок системы охлаждения. (...
Приобрел себе новенький K1 Max. Воодушевленный данной покупкой, сразу беру заказ на патрубок системы охлаждения. (...
Вопрос по NEMA 17 для ПЭТ филамента.
Всем доброго времени суток. Наконец-то дошли руки до сборки станочка для филамента. Столкнулся с не совсем понятной ситуацией - не хватает силы NEMA 1...
нужна консультация
Решаю купить принтер, думаю но пока не решил какую выбрать конструкцию. На али нашел вот такой вариант ru.aliexpress.com/item/2016-Newest-TEVO-Tarant...

Комментарии и вопросы
А почему нельзя создать профил...
Спасибо!!
в личку кинул
Приветствую! Приобрел себ...
постоянный засор сопла после з...
Добрый день.Подскажите в чем м...
Photon Mono 4 Ultra. Во время...