Светофор на Arduino, говорящий, какой цвет горит в данный момент

b3ka_1st
Offline
Зарегистрирован: 15.06.2021

Начну с начала надо соеденить два скетча первый это скетч переключение светодиодов

второй скетч это скетч для модуля

их надо обьеденить

1скетч

 

const int LED_RED = 7;             // Порт 7, красный светодиод
const int LED_YELLOW = 6;             // Порт 6, желтый светодиод
const int LED_GREEN =5;             // Порт 5, зеленый светодиод

const int TIMEOUT_RED = 3000;          // Время горения красного сетодиода
const int TIMEOUT_YEL = 1690;          // Время горения желтого светодиода
const int TIMEOUT_GREEN = 2000;        // Время горения зеленого светодиода

const int TIMEOUT_FLASH_GREEN = 500;      // Время мигания зеленого светодиода

void setup()
{
  // Все порты светодиодов будут у нас установлены в режим "внешняя нагрузка", OUTPUT
  pinMode(LED_RED, OUTPUT);   
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  
  // Устанавливаем начальное значение светодиодов
  digitalWrite(LED_RED, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_GREEN, LOW);
}  

void loop()
{
  // Включаем зеленый цвет светофора
  digitalWrite(LED_GREEN, HIGH);    // Включаем светодиод       
  delay(TIMEOUT_GREEN);             // Ждем

  // Мигаем зеленым светодиодом 3 раза
  for (int i=0; i<3; i++)
    {
      digitalWrite(LED_GREEN, LOW);         
      delay(TIMEOUT_FLASH_GREEN);                
      digitalWrite(LED_GREEN, HIGH);        
      delay(TIMEOUT_FLASH_GREEN);                
    }  
  
  // Теперь отключаем зеленый и включаем желтый светодиод
  digitalWrite(LED_GREEN, LOW); 
  digitalWrite(LED_YELLOW, HIGH);           
  delay(TIMEOUT_YEL);            

  // Отключаем желтый светодиод.
  digitalWrite(LED_YELLOW, LOW); 
  // Теперь включаем красный цвет
  digitalWrite(LED_RED, HIGH);            
  delay(TIMEOUT_RED);                         
          
  // Включаем желтый светодиод,не выключая красный
  digitalWrite(LED_YELLOW, HIGH);           
  delay(TIMEOUT_YEL);                       
  
  // Отключаем желтый и красный светодиоды.
  digitalWrite(LED_YELLOW, LOW);    
  digitalWrite(LED_RED, LOW);   
  
}

2 скетч

#include <SoftwareSerial.h>
#include <DFPlayer_Mini_Mp3.h>
void setup () {
    Serial.begin (9600);
    mp3_set_serial (Serial);    //set Serial for DFPlayer-mini mp3 module 
  delay (100);
  mp3_set_volume (20);
}
void loop () {        
 delay (100);
 mp3_play ();  // Произрываем "mp3/0001.mp3"
 delay (5000);
 mp3_play (); // Произрываем "mp3/0002.mp3"
 delay ();
 mp3_play (); // Произрываем "mp3/0003.mp3"
 delay (5000);
Yarik.Yar
Offline
Зарегистрирован: 07.09.2014

Начну сначала, 5 тем создавать не надо
Перенёс в "Отвлечённые", но пахнет "Ищу исполнителя"
Поправил вам оформление, посмотрите, как надо, в следующий раз неправильно оформленная тема полетит просто в спам

b707
Offline
Зарегистрирован: 26.05.2017

b3ka_1st пишет:

надо соеденить два скетча первый это скетч переключение светодиодов

второй скетч это скетч для модуля

их надо обьеденить

надо - обьединяйте

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

b3ka_1st пишет:

Начну с начала надо соеденить два скетча первый это скетч переключение светодиодов

второй скетч это скетч для модуля

их надо обьеденить

Два вопроса:

1. Так что надо-то? "соеденить" или "обьеденить"? Вы уж определитесь и скажите толком.

2. Кому надо? Вам? Так "сое(объе)деняйте"! От нас-то чего хотите?

Если у Вас был какой-то вопрос, так Вы забыли его задать :-(

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

b707 пишет:

надо - обьединяйте

Вы невнимательно читаете! Ему не "объединить" надо, а "объеденить" (или "соеденить" - он ещё не определился).

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Тоись, у тебя завтра защита, а ты ни в зуб ногой?  

Так пойди же, послужи!!!