Светодиодная лента
- Войдите на сайт для отправки комментариев
Втр, 24/09/2019 - 20:56
int trans = 9; // переменная транзистора
int pir = 8; // переменная датчика
int led = 13;
boolean val=0;
void setup() {
// put your setup code here, to run once:
pinMode (pir,INPUT);
pinMode (trans,OUTPUT);
pinMode (led,OUTPUT);
}
void loop() {
val = digitalRead (pir);// считываем данные с датчика
if (val == true) { // если да то
for (int i=0 ; i<=255; i++){ // плавно включаем ленту
analogWrite (trans,i);
delay (5);// задержка для плавности
}
}
else {
for (int i=255 ; i<=0; i--){ // достигли максимума
analogWrite (trans,i); // плавно выключаем
delay (5);
}
}
}
//}
//}
Люди добрые помогите, проблема в том что лента всегда загорается через секунду загорается вновь и так постоянно . Питается все от 1 блока на 12 в и лента и ардуина. С ардуины датчик движения фиксирует движение и отправляет в ардуину , тот в свою очередь через мосфет (модуль) открывает затвор и подает на ленту.
Глубокомысленно.
Так у тебя ж условие в строке №21
for(inti=255 ; i<=0; i--)не срабатывает от слова никогда. Этот цикл просто не работает вообще.
Да все спасибо , сам уже увидел .