const int M1_Open = 25; // D21 мотор 1 на открывание
const int M1_Close = 26; // D19 мотор 1 на закрывание
const int M2_Open = 14; // D23 мотор 2 на открывание
const int M2_Close = 12; // D22 мотор 2 на закрывание
const int dC1 = 32;
const int dC2 = 34;
int dutyCycle1, dutyCycle2, dutyCycle3, dutyCycle4;
int resistor1, resistor2;
// устанавливаем настройки формирования ШИМ
const int freq = 30000;
const int resolution = 8;
const int Channel1 = 1;
const int Channel2 = 2;
const int Channel3 = 3;
const int Channel4 = 4;
void setup(){
Serial.begin(9600);
// настраиваем ШИМ в соответствии с ранее указанными настройками
ledcSetup(Channel1, freq, resolution);
ledcSetup(Channel2, freq, resolution);
ledcSetup(Channel3, freq, resolution);
ledcSetup(Channel4, freq, resolution);
// назначаем контакт и канал для формирования ШИМ
ledcAttachPin(M1_Open, Channel1);
ledcAttachPin(M1_Close, Channel2);
ledcAttachPin(M2_Open, Channel3);
ledcAttachPin(M2_Close, Channel4);
}
void loop(){
resistor1 = analogRead(dC1);
resistor2 = analogRead(dC2);
if (resistor1 <= 2048) {
dutyCycle1 = (2048 - resistor1) / 8;
dutyCycle2 = 0;
} else {
dutyCycle1 = 0;
dutyCycle2 = (resistor1 - 2048) / 8;
}
if (resistor2 <= 2048) {
dutyCycle3 = (2048 - resistor2) / 8;
dutyCycle4 = 0;
} else {
dutyCycle3 = 0;
dutyCycle4 = (resistor2 - 2048) / 8;
}
Serial.print(dutyCycle1);
Serial.print(",");
Serial.println(dutyCycle2);
//dutyCycle1 = map(dutyCycle1,0,1023,0,255);
//dutyCycle2 = map(dutyCycle2,0,1023,0,255);
//dutyCycle3 = map(dutyCycle3,0,1023,0,255);
//dutyCycle4 = map(dutyCycle4,0,1023,0,255);
//Serial.println(dutyCycle);
// изменяем яркость свечения светодиода с помощью ШИМ сигнала
ledcWrite(Channel1, dutyCycle1);
ledcWrite(Channel2, dutyCycle2);
ledcWrite(Channel3, dutyCycle3);
ledcWrite(Channel4, dutyCycle4);
delay(500);
}