Идея светофора

Тема в разделе "Arduino & Shields", создана пользователем АлександрПрограммир, 7 янв 2017.

?

Понравилась моя тема??????

Голосование закрыто 23 янв 2017.
  1. нет.....................

    9 голосов
    90,0%
  2. ДА!!!!!!!!!!!!

    1 голосов
    10,0%
  3. Вообще ненормальная!

    0 голосов
    0,0%
  1. Видео:



    Кому надо вот скетч:


    Код (C++):
    void setup()
    {
      pinMode(13, OUTPUT);
      pinMode(12, OUTPUT);
      pinMode(10, OUTPUT);
    }

    void loop()
    {
      digitalWrite(13, HIGH);
      delay(10000)
    ;  digitalWrite(13, LOW)
    ;  delay(1050)
    ;  digitalWrite(13, HIGH)
    ;  delay(1050)
    ; digitalWrite(13, LOW)
    ;  delay(1050);
    ;  digitalWrite(13, HIGH)
    ;  delay(1050)
    ; digitalWrite(13, LOW)
    ;  delay(1050);
    ;  digitalWrite(13, HIGH)
    ;  delay(1050)
    ; digitalWrite(13, LOW)
    ;  delay(1050);
    ;  digitalWrite(13, HIGH)
    ;  digitalWrite(10, HIGH)
      ;  digitalWrite(13, LOW)
    ;  delay( 950)
    ;   digitalWrite(12,HIGH)
    ;   digitalWrite(10, LOW)
    ;    delay(10000)
    ;  digitalWrite(12, LOW)
    ;  delay(1050)
    ;  digitalWrite(12, HIGH)
    ;  delay(1050)
    ; digitalWrite(12, LOW)
    ;  delay(1050);
    ;  digitalWrite(12, HIGH)
    ;  delay(1050)
    ; digitalWrite(12, LOW)
    ;  delay(1050);
    ;  digitalWrite(12, HIGH)
    ;  delay(1050)
    ; digitalWrite(12, LOW)
    ;  delay(1050);
    ; digitalWrite(10, HIGH)
    ; delay(950)
      ; digitalWrite(13, HIGH)
       ; digitalWrite(10, LOW)
    ;}
     
    Последнее редактирование: 23 янв 2017
  2. mcureenab

    mcureenab Гуру

    Только хардкод! Если изменить периоды понадобится всю колбасу перелопачивать?
    Какие цвета куда?
     
    Последнее редактирование: 7 янв 2017
  3. Airbus

    Airbus Радиохулиган Модератор

    Что сие устройство делает?И как?
     
  4. Jedi

    Jedi Гик

    Видимо чем-то мигает (если светофор) на трех пинах... Или что-то еще...
     
  5. Karabas

    Karabas Гик

    Хотел было поподробней разобраться в коде, но кровь брызнувшая из глаз залила монитор:eek:
    А вишенка на торте- ; перед строчкой.

    Уважаемый ТС, если интересно, опишите алгоритм, а я покажу как можно оптимизировать код.
     
  6. Airbus

    Airbus Радиохулиган Модератор

    Добавил коменты
    Код (C++):
    void setup()
    {
    pinMode(13, OUTPUT);//13 выход красный?
    pinMode(12, OUTPUT);//12 вызод зелёный?
    pinMode(10, OUTPUT);// 10 выход жёлтый?
    }

    void loop()
    {
    digitalWrite(13, HIGH);//горим красным
    delay(10000) //одну минуту
    ; digitalWrite(13, LOW)//не горим ни каким
    ; delay(1050)  //одну минуту
    ; digitalWrite(13, HIGH) //горим красным
    ; delay(1050)  //одну минуту
    ; digitalWrite(13, LOW)//не горим ни каким
    ; delay(1050);//одну минуту
    ; digitalWrite(13, HIGH)//горим красным
    ; delay(1050)//одну минуту
    ; digitalWrite(13, LOW)//не горим ни каким
    ; delay(1050);//одну минуту
    ; digitalWrite(13, HIGH)//горим красным
    ; delay(1050)//одну минуту
    ; digitalWrite(13, LOW)//не горим ни каким
    ; delay(1050);//одну минуту
    ; digitalWrite(13, HIGH)//горим красным
    ; digitalWrite(10, HIGH)// горим жёлтым вместе с красным
    ; digitalWrite(13, LOW)//не горим красным тока жёлтым
    ; delay( 950)//одну минуту
    ; digitalWrite(12,HIGH)//горим красным
    ; digitalWrite(10, LOW)// не горим жёлтым тока красным
    ; delay(10000)//одну минуту
    ; digitalWrite(12, LOW)//не горим никаким
    ; delay(1050)//одну минуту
    ; digitalWrite(12, HIGH)//горим зелёным
    ; delay(1050)//одну минуту
    ; digitalWrite(12, LOW)//не горим зелёным
    ; delay(1050);//одну минуту
    ; digitalWrite(12, HIGH)//горим зелёным
    ; delay(1050)//одну минуту
    ; digitalWrite(12, LOW)//не горим зелёным
    ; delay(1050);//одну минуту
    ; digitalWrite(12, HIGH)//горим зелёным
    ; delay(1050)//одну минуту
    ; digitalWrite(12, LOW)//не горим зелёным
    ; delay(1050);//одну минуту
    ; digitalWrite(10, HIGH)// горим жёлтым
    ; delay(950)//одну минуту
    ; digitalWrite(13, HIGH)//горим красным
    ; digitalWrite(10, LOW)//не горим жёлтым
    ;}
    Прикольный Цветофор!
     
    Последнее редактирование: 8 янв 2017
  7. Jedi

    Jedi Гик

    СРОЧНО! СРОЧНО! СРОЧНО! В новый буклет Амперки как новый проект "Цветофор"!
     
    zealot01 и Личинус нравится это.
  8. Airbus

    Airbus Радиохулиган Модератор

    Может Цветомузыка?
     
  9. ostrov

    ostrov Гуру

  10. Airbus

    Airbus Радиохулиган Модератор

    Э робяты разве красный мигает?Он некоторое время горит вместе с красным.Мигает зелёный. Может такой лучше?
     
  11. Jedi

    Jedi Гик

    Днем завтра точно соберу на макетке. А delay(1000) разве не секунда всего, а не минута? ;)
     
    zealot01 и Tomasina нравится это.
  12. cropduster

    cropduster Нуб

    1000 мс = 1 с
     
  13. ostrov

    ostrov Гуру

    Как это красный горит с красным? А вообще он просто резко переключается на зеленый вроде бы.
     
  14. Arkad_snz

    Arkad_snz Гик

    Это не устройство!
    Это идея! А идея не должна ничего делать!
     
    Личинус нравится это.
  15. Airbus

    Airbus Радиохулиган Модератор

    Да нормаьно тёзка!Только коменты надо нормально написать где у тебя какой цвет что делает и сколько по времени.Заодно и косяки отловите!
    А ну да очепятка в моих коментах да и ещё парочку нашёл.Пусть автор сам грамотно всё распишет.а мы в железе проверим!
     
  16. к
    Я сейчас видео залью!
     
  17. issaom

    issaom Гуру

    Очень хочется увидеть схему устройства - вдруг кому-то захочется повторить ;-)
     
  18. ostrov

    ostrov Гуру

    Да, схему принципиальную и на фрицинге для начинающих. Чтобы даже я повторить смог.
     
    Последнее редактирование: 8 янв 2017
    issaom нравится это.
  19. Airbus

    Airbus Радиохулиган Модератор

    Дык я зачем схема?Арда+три светодиода Красный жёлтый и зелёный."Плюса" на пины 13,12,10 (кстати почему именно на эти? И что куда?)"Минуса" на "Землю".
    Я бы тупо написал так
    Код (C++):
    void setup()
    {
      pinMode(8, OUTPUT);//красный
      pinMode(9, OUTPUT);//жёлтый
      pinMode(10, OUTPUT);//зелёный
    digitalWrite(8, LOW);
    digitalWrite(9, LOW);
    digitalWrite(10, LOW);//фсё выкл
    }

    void loop()
    {
      digitalWrite(8, HIGH);//красный!
      delay(10000); //минуту
      digitalWrite(8, LOW);//красный выкл
      digitalWrite(9, HIGH);//жёлтый!
      delay(10000); //минуту
      digitalWrite(9,LOW );//жёлтый выкл
      digitalWrite(10, HIGH);//зелёный!
      delay(10000); //минуту
      digitalWrite(10, LOW);//зелёный выкл и снова здорова
    }
     
     
    Последнее редактирование: 8 янв 2017
  20. ostrov

    ostrov Гуру

    Боюсь, что и резисторы могут потребоваться!