Цитата:
Допис від burnashev
Так и не разобрался (((( в скетче задействован пин а6 для включения бп, но у меня не atx бп, а обычное
tropfish.org.ua
|
У меня тоже блок питания простой. Там логика работы у автора такая: на питание помп дозаторов используется отдельный блок питания АТХ, и чтобы не держать его постоянно включеным задействован пин а6 для включения блока питание только на время работы помп дозаторов. Непонятно в каком месте изменить скетч чтобы время работы помпы можно было менять скажем от 10 секунд и до 120-180 секунд.
Может попробуем разобраться вместе?
Как я понял за подачу УДО отвечает эта часть скетча (попробую пояснить некоторые строчки):
case 6: // UDO
udo_tim = (byte)(b4&B00111111);
в этой строке я думаю время работы помпы дозатора (величина "udo_tim" изначально вообще равна нулю, а дальше все равно не очень большая величина - доли секунды)
digitalWrite(EXT_POWER_ON_PIN, HIGH);
//включение блока питания (если блок питания для дозаторов не АТХ можно отключить строку)
delay(100); //Время на выход в режим БП
пауза для пуска блока питания, также можно отключить
switch((byte)((b4>>6)&B00000011)){
св этой строке отработка времени подачи УДО
case 0:
digitalWrite(EXT_UDO_MICRO_PIN, HIGH);
включение помпы
delay(udo_tim*4.2);
пауза, а именно время пока включена помпа дозатора ( по логике маленькая величина "udo_tim" увеличена в 4.2 раза - и это время не превышает одной секунды)
digitalWrite(EXT_UDO_MICRO_PIN, LOW);
отключение помпы
break;
case 1:
дальше для других каналов все аналогично
digitalWrite(EXT_UDO_MACRO_PIN, HIGH);
delay(udo_tim*4.2);
digitalWrite(EXT_UDO_MACRO_PIN, LOW);
break;
case 2:
digitalWrite(EXT_UDO_Fe_PIN, HIGH);
delay(udo_tim*4.2);
digitalWrite(EXT_UDO_Fe_PIN, LOW);
break;
case 3:
break;
}
digitalWrite(EXT_POWER_ON_PIN, LOW);
break;
case 7:
break;
}
}
}
}
}
}
}
//------------------------------------------------------------------------------------
Мысли такие вот.