Привет коллеги!!!
Собственно хотел сделать свой первый маленький проект по подключению нагрузки через реле. Читал много, смотрел разные уроки и ни как не смог всё равно написать правильный код.
В связи с этим прошу помощи и указать на мои ошибки.
А теперь про сам проект.
Смысл: по наличию сигнала с линейного выхода магнитолы должен подключиться внешний усилитель(через 1 сек-пока не реализовано), естественно через реле. Следовательно при отсутствие сигнала усилитель должен отключиться через 3сек(в коде пока это не реализовано).
Вы спросите на фига этот геморрой? Дело в том что при отключении сигнала управляющим вкл/выкл усилителя в ШТАТНОЙ магнитоле проходят переходные процессы и в момент отключения происходит скачок в линейной выходе магнитолы, усилитель соответственно усиливает сигнал и в динамиках проходит ХЛОПОК (очень неприятный). Вот.
Наличие: Arduino nano, резистор 10к, реле.
Текст кода:
Что мне показывает монитор: при подаче на А0 +5В : 1023, при подаче 3,3В: 703. Хотя должен показывать значение в диапазоне 0-20, такого не происходит.
На D6 сигнал не появляется следовательно я не могу запустить реле.
Подскажите пожалуйста где я ошибся? В чем?
Собственно хотел сделать свой первый маленький проект по подключению нагрузки через реле. Читал много, смотрел разные уроки и ни как не смог всё равно написать правильный код.
В связи с этим прошу помощи и указать на мои ошибки.
А теперь про сам проект.
Смысл: по наличию сигнала с линейного выхода магнитолы должен подключиться внешний усилитель(через 1 сек-пока не реализовано), естественно через реле. Следовательно при отсутствие сигнала усилитель должен отключиться через 3сек(в коде пока это не реализовано).
Вы спросите на фига этот геморрой? Дело в том что при отключении сигнала управляющим вкл/выкл усилителя в ШТАТНОЙ магнитоле проходят переходные процессы и в момент отключения происходит скачок в линейной выходе магнитолы, усилитель соответственно усиливает сигнал и в динамиках проходит ХЛОПОК (очень неприятный). Вот.
Наличие: Arduino nano, резистор 10к, реле.
Текст кода:
C++:
#define pin 0
int val;
void setupe () {
pinMode (6, OUTPUT);
Serial.begin (9600);
}
void loop () {
val = analogRead (pin);
map (val,0,1023,0,20);
constrain (val,0,20);
if (val>1 && val<20) {digitalWrite(6,HIGH); }
else { digitalWrite (6,LOW);}
Serial.print (" A0: ");
Serial.println(val);
}
На D6 сигнал не появляется следовательно я не могу запустить реле.
Подскажите пожалуйста где я ошибся? В чем?
Вложения
-
154.1 KB Просмотры: 22
Изменено: