Светодиодная лента
- Войдите на сайт для отправки комментариев
Втр, 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
(
int
i=255 ; i<=0; i--)
не срабатывает от слова никогда. Этот цикл просто не работает вообще.
Да все спасибо , сам уже увидел .