Помогите написать скетч автовключения и выключения аудио усилителя
- Войдите на сайт для отправки комментариев
Помогите написать скетч, я новичок первый проект
Идея заключается в автоматическом включении и выключении аудио усилителя 2.1
По входящему аудио сигналу аукс
усилитель 2.1 с блютус модулем , при подаче напряжения включается в режиме блютус
Для переключения в аукс надо нажать кнопку AUX SW с задержкой в 5 секунд после включения усилителя
Реализовать планирую так, схему набросал
Ардуинка к ней
подключаем 2 реле на выходы Д2 и Д3
подключаем датчик звука к выходу Д12
Алгоритм работы такой
1 Ардуинка в дежурке
2 подаем сигнал аукс, датчик распознает
3 ардуинка включает и держит 1 реле (питание усилителя)
4 через 5 секунд кратковременно включает 2 реле (переключение в режим аукс)
5 при отключении сигнала аукс через 15 минут, 1 реле отключается
цикл повторяется
Прошу помощи в реализации
const int sensorD0 = 12; // Пин Arduino к которому подключен выход D0 датчика zvuka const int relay1 = 2; // Пин Arduino к которому подключен rele1 const int relay2 = 3; // Пин Arduino к которому подключен rele2 void setup (){ pinMode(relay1, OUTPUT); // устанавливаем цифровой пин 2 в режим выхода digitalWrite(relay1, HIGH); // Выключаем реле - посылаем высокий сигнал pinMode(relay2, OUTPUT); // устанавливаем цифровой пин 3 в режим выхода digitalWrite(relay2, HIGH); // Выключаем реле - посылаем высокий сигнал } void loop () { int sensorValue = digitalRead(sensorD0); // получаем сигнал с датчика if (sensorValue > 0.5) //если порог громкости достигнут и светодиод был ВЫКЛЮЧЕН { digitalWrite(relay1, LOW); // включаем rele1 delay(1000); } if (sensorValue < 0.1) //если порог громкости достигнут и светодиод был ВЫКЛЮЧЕН { digitalWrite(relay1, HIGH); // включаем rele1 } }набросал только это
ну, и чо не так работает?
ну, и чо не так работает?
А Вы посмотрите на строки 18 и 24, а потом на описание переменной в строке 16 :)
Так набросал же, не отлаживал. Отладкой форум занимается, топикстартерам некогда...
Пытаюсь разобраться , во первых по истечении таймера dalay кратковременно 1 реле размыкается и снова смыкается так как звук на входе присутствует. Во вторых второе реле в скетче незадейстаовано так как незнаю как правильно написать алгоритм. За помощь могу отблагодарить не думал что будет один сарказм, а не помощь.
Я тоже не думал, когда регистрировался, что придется за каждого второго скетчи писать...
заканчивайте тупить. вам уже даже строчки указали с ошибками - если это "один сарказм, а не помощь" - обратитесь в армию спасения.
Если вам лень даже готовые ответы внимательно прочитать, то представляете как нам лень изо дня в день учить таких, как вы?
Все равно непонял, ошибка в том что с цифрового выхода можно принимать только ответы в виде 0 и 1
14 void loop () 15 { 16 int sensorValue = digitalRead(sensorD0); // получаем сигнал с датчика 17 18 if (sensorValue >= 1) //если порог громкости достигнут и светодиод был ВЫКЛЮЧЕН 19 { 20 digitalWrite(relay1, LOW); // включаем rele1 21 delay(1000); 22 23 } 24 if (sensorValue <= 0) //если порог громкости достигнут и светодиод был ВЫКЛЮЧЕН 25 { перенес тему в ищу исполнителя здесь можно удалить