Нужна помощь от мастеров своего дела. Реализация цикла!!!!
- Войдите на сайт для отправки комментариев
Пт, 08/01/2016 - 18:14
При проектирование одной схемы столкнулся с проблемой, не могу реализовать цикл. Код крутится цыклично без остановки мне нужно выполнение кода один раз.
Скетч мигание светодиода, как сделать цыкл один раз а не бесконечно
ПОМЕСТИТЕ КОД ИЗ луп в сетап
какой ужасный код. схема есть и что нужно получить? полюбому как минимум в 2-3 раза можно сделать короче, да и более читаемый
Код бегущего огня стоп сигнала
Мигание поворота влево, вправо, стоп, задний ход
Буду благодарен, за помощь.....
Можно изменить скетч
Добрый день как выйти из цикла
схема и как работает. объясни лучше
На аналоговые входа А0, А1,А2,А3 подаю сигналы поворот влево, вправо, стоп, задний ход. При появлении сигнала на входе один из четырёх срабатывает код бегущего огня на выходах от 0 по 13 появляется сигнал.
Последний код мигание где вход "D" он цыклично работает, мне только его нужно загнать в один раз, все остальное должно оставаться как есть в цикле
Забей в гугле "бегущий стоп сигнал на адруино"
Переместил из лупа в сетап, да цикла нет, но схема работает только 1 раз, но после поступления сигналов на аналоговые входа ещё раз схема не работает.
Переместил из лупа в сетап, да цикла нет, но схема работает только 1 раз, но после поступления сигналов на аналоговые входа ещё раз схема не работает.
шо, надо чтобы совсем совсем один раз? верните назад в луп, и там где стравнение D поставте флаг, что он уже срабатывал.
Что такое флаг
после int D; пишете int flag = 0; вот вам флаг (в руки).
в лупе, где
if(D>100 && flag == 0)
{
flag = 1;
....
}
Измените код мой,,, можете? Выложить сдесь. Я изменяю выдаёт ошибку
Измените код мой,,, можете? Выложить сдесь. Я изменяю выдаёт ошибку
мда.
int pin13 =13; int pin12 =12; int pin11 =11; int pin10 =10; int pin9 =9; int pin8 =8; int pin7 =7; int pin6 =6; int pin5 =5; int pin4 =4; int pin3 =3; int pin2 =2; int pin1 =1; int pin0 =0; int pinA0 = A0; int pinA1 = A1; int pinA2 = A2; int pinA3 = A3; int A; int B; int C; int D; int flag = 0; byte massive[] ={13,12,11,10,9,8,7,6,5,4,3,2,1,0}; byte massivea[] ={0,1,2,3,4,5,6,7,8,9,10,11,12,13}; byte massive1[] ={13,12,11,10,9,8,7,6,5,4,3,2,1,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13}; byte massive2[] ={0,1,2,3,4,5,6,7,8,9,10,11,12,13}; byte massive3[] ={13,7,0,6,12,8,1,5,11,9,2,4,10,3}; void setup() { pinMode(pin13, OUTPUT); pinMode(pin12, OUTPUT); pinMode(pin11, OUTPUT); pinMode(pin10, OUTPUT); pinMode(pin9, OUTPUT); pinMode(pin8, OUTPUT); pinMode(pin7, OUTPUT); pinMode(pin6, OUTPUT); pinMode(pin5, OUTPUT); pinMode(pin4, OUTPUT); pinMode(pin3, OUTPUT); pinMode(pin2, OUTPUT); pinMode(pin1, OUTPUT); pinMode(pin0, OUTPUT); pinMode(pin11, OUTPUT); pinMode(pin10, OUTPUT); pinMode(pinA0, INPUT); pinMode(pinA1, INPUT); pinMode(pinA2, INPUT); pinMode(pinA3, INPUT); Serial.begin(9600); } void loop() { A = analogRead(pinA0); B = analogRead(pinA1); C = analogRead(pinA2); D = analogRead(pinA3); if(A>100) { digitalWrite(pin0,HIGH); delay(20); digitalWrite(pin1,HIGH); delay(20); digitalWrite(pin2,HIGH); delay(20); digitalWrite(pin3,HIGH); delay(20); digitalWrite(pin0,LOW); digitalWrite(pin4,HIGH); delay(20); digitalWrite(pin1,LOW); digitalWrite(pin5,HIGH); delay(20); digitalWrite(pin2,LOW); digitalWrite(pin6,HIGH); delay(20); digitalWrite(pin3,LOW); digitalWrite(pin7,HIGH); delay(20); digitalWrite(pin4,LOW); digitalWrite(pin8,HIGH); delay(20); digitalWrite(pin5,LOW); digitalWrite(pin9,HIGH); delay(20); digitalWrite(pin6,LOW); digitalWrite(pin10,HIGH); delay(20); digitalWrite(pin7,LOW); digitalWrite(pin11,HIGH); delay(20); digitalWrite(pin8,LOW); digitalWrite(pin12,HIGH); delay(20); digitalWrite(pin9,LOW); digitalWrite(pin13,HIGH); delay(20); digitalWrite(pin10,LOW); delay(20); digitalWrite(pin11,LOW); delay(20); digitalWrite(pin12,LOW); delay(20); digitalWrite(pin13,LOW); delay(400); } if(B>100) { digitalWrite(pin13,HIGH); delay(20); digitalWrite(pin12,HIGH); delay(20); digitalWrite(pin11,HIGH); delay(20); digitalWrite(pin10,HIGH); delay(20); digitalWrite(pin13,LOW); digitalWrite(pin9,HIGH); delay(20); digitalWrite(pin12,LOW); digitalWrite(pin8,HIGH); delay(20); digitalWrite(pin11,LOW); digitalWrite(pin7,HIGH); delay(20); digitalWrite(pin10,LOW); digitalWrite(pin6,HIGH); delay(20); digitalWrite(pin9,LOW); digitalWrite(pin5,HIGH); delay(20); digitalWrite(pin8,LOW); digitalWrite(pin4,HIGH); delay(20); digitalWrite(pin7,LOW); digitalWrite(pin3,HIGH); delay(20); digitalWrite(pin6,LOW); digitalWrite(pin2,HIGH); delay(20); digitalWrite(pin5,LOW); digitalWrite(pin1,HIGH); delay(20); digitalWrite(pin4,LOW); digitalWrite(pin0,HIGH); delay(20); digitalWrite(pin3,LOW); delay(20); digitalWrite(pin2,LOW); delay(20); digitalWrite(pin1,LOW); delay(20); digitalWrite(pin0,LOW); delay(400); } if(C>100) { digitalWrite(pin13,HIGH); digitalWrite(pin2,HIGH); delay(150); digitalWrite(pin12,HIGH); digitalWrite(pin3,HIGH); delay(150); digitalWrite(pin11,HIGH); digitalWrite(pin4,HIGH); delay(150); digitalWrite(pin10,HIGH); digitalWrite(pin5,HIGH); delay(150); digitalWrite(pin9,HIGH); digitalWrite(pin6,HIGH); delay(150); digitalWrite(pin8,HIGH); digitalWrite(pin7,HIGH); delay(150); } if(C<100&&(A==0||B==0)) { digitalWrite(pin13,LOW); digitalWrite(pin12,LOW); digitalWrite(pin11,LOW); digitalWrite(pin10,LOW); digitalWrite(pin9,LOW); digitalWrite(pin8,LOW); digitalWrite(pin7,LOW); digitalWrite(pin6,LOW); digitalWrite(pin5,LOW); digitalWrite(pin4,LOW); digitalWrite(pin3,LOW); digitalWrite(pin2,LOW); digitalWrite(pin1,LOW); digitalWrite(pin0,LOW); } if(D>100 && flag == 0) { flag = 1; digitalWrite(pin7,HIGH); digitalWrite(pin8,HIGH); delay(40); digitalWrite(pin6,HIGH); digitalWrite(pin9,HIGH); delay(40); digitalWrite(pin7,LOW); digitalWrite(pin8,LOW); delay(40); digitalWrite(pin5,HIGH); digitalWrite(pin10,HIGH); delay(40); digitalWrite(pin6,LOW); digitalWrite(pin9,LOW); delay(40); digitalWrite(pin4,HIGH); digitalWrite(pin11,HIGH); delay(40); digitalWrite(pin5,LOW); digitalWrite(pin10,LOW); delay(40); digitalWrite(pin3,HIGH); digitalWrite(pin12,HIGH); delay(40); digitalWrite(pin4,LOW); digitalWrite(pin11,LOW); delay(40); digitalWrite(pin2,HIGH); digitalWrite(pin13,HIGH); delay(40); digitalWrite(pin3,LOW); digitalWrite(pin12,LOW); delay(40); digitalWrite(pin2,LOW); digitalWrite(pin13,LOW); delay(40); } Serial.println(A); Serial.println( ); Serial.println(B); Serial.println( ); Serial.println(C); Serial.println( ); Serial.println(D); Serial.println( ); }Я не правильно выразился! не совсем один раз. Как бы сработал и замолчал, но при появления сигнала ещё раз, сработал. В данной ситуации при срабатывании он молчит и всё
Извиняюсь, я рак в этой теме.
следующей проверкой пишешь
if(D <100) или равно нулю, тебе виднее.
{
flag = 0;
}
Спасибо,,,, всё получилось! Я благодарен вам и этому сайту,.