Страница 1 из 1

Светофор

Добавлено: 02 апр 2017, 16:21
nordis
Начал осваивать ардуино. Раньше писал программы для компа то в принципе понимание программирования есть. Написал простенькую программку светофор. Загрузил скетч, работает как и задумал. Для сравнения решил попробовать все тоже самое в FlProg, не поверите, 3 дня бьюсь ничего не понимаю. Смотрю видео у авторов все так просто, однако на деле для меня не просто. Кто может помочь со схемой светофора? Нужно чисто для понимания и сравнения процесса. Думал на FlProg проще и быстрее, но пака облом..
Светофор: загорается красный, горит 3 секунды, включается желтый, оба горят 2 секунды, выключаются и загорается зеленый, горит 3 секунды, затем мигает 4 раза, гаснет, включается желтый на секунду, выключается, включается красный... и все по новой.

Светофор

Добавлено: 02 апр 2017, 17:56
rw6cm
Вариантов много. Выложили бы скетч, можно определить какой использовали.
А так, один из них.

Светофор

Добавлено: 02 апр 2017, 18:42
nordis
rw6cm писал(а):Выложили бы скетч


Код: Выделить всё

boolean k = 0;
void setup() 
{  

pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);

for(int i = 2;  i < 5;)//тест исправности светодиодов
{
  digitalWrite(i, 1);
 
  delay(500);
  i++;
}

for(int a = 4;  a >1;)//тест исправности светодиодов
{
  digitalWrite(a, 0);
   a--;
   //delay(500);
}
delay(1000);

}
void loop() 

{ 
    
digitalWrite(2,1);
digitalWrite(3,0); 
digitalWrite(4,0); 
delay(3500);

digitalWrite(3,1); 

delay(1500);

digitalWrite(2,0);
digitalWrite(3,0); 
digitalWrite(4,1); 
delay(3500);
for(int i = 0; i < 7; i++)
{
  digitalWrite(4, k);
  k = !k;
  delay(600);
}
digitalWrite(3,1); 

delay(400);

}
Добавлено (02.04.2017, 18:42)
---------------------------------------------
rw6cm писал(а):А так, один из них.
Спасибо! Точно так же работает как и мой скетч. Но в данном случае все же скетч написать проще чем схему составить. Разбираться нужно.

Светофор

Добавлено: 02 апр 2017, 19:40
rw6cm
В FLProg ваш скетч не повторить, здесь нет блока delay ))
Можно сделать на таймерах, компараторах, генераторах и т д, на что фантазии хватит )

Один из вариантов на таймерах

Светофор

Добавлено: 02 апр 2017, 19:46
nordis
rw6cm писал(а):здесь нет блока delay
Блин нет, по моему проще написать! Может не во всем, но как то сложно. И код какой то громоздкий получается. Наверное для понимания нужно, что нибудь этакое, шаговичок или дисплей заюзать?!

Светофор

Добавлено: 02 апр 2017, 20:05
rw6cm
nordis писал(а):по моему проще написать!
А кто мешает! Пишите свои блоки и схема будет проще некуда )))

Светофор

Добавлено: 05 апр 2017, 00:56
m10ru
легко сказать писать... на С++     мне лично на флпрог намного проще     так как знаю всю ттл логику и как работает... уже много создал, сейчас делаю большое меню (из категории Умный дом, чтоб управлять системой отопления...) а светофор ... что там как два пальца ..... но на всем нужно учится