Кремень FMZ Реклама
Kremen FMHM Реклама

Запуск системного вентилятора

Dj Plosky
Идет загрузка
Загрузка
29.05.2019
866
14
Вопросы и ответы
Здравствуйте!

Возникла необходимость запускать системный вентилятор при запуске нагревателя хотенда.

Пока что он в оригинальной прошивке он запускается при срабатывание драйверов и нагревателя кровати. Какие строчки кода добавить (на подобие как это зделано про накреватель кровати) чтобы запуск системного вентилятора происходил и по запуски нагреватела хотенда?

Прошивка Марлин 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);

}

}
Ответы на вопросы