помогите Управление светом через блютуз или кнопку.

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016

Помогите в написании программы, надо сделать так чтобы реле, которе подключено к лючтре, включалось или выключалось ,либо от кнопки , либо от блютуз. 
у меня получается только с кнопки или с блютуз.

непонятно наверное .
суть в управлении реле чтоб включать его или выключать.

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

Вы чего хотите? Чтобы кто-то Вам это написал? Тогда Вам в другой раздел. Там договоритесь о цене и Вам напишут.

Или Вы хотите, чтобы Вам помогли написать самому? Тогда Ваш скетч выкладывайте сюда и задавайте конкретные вопросы что не получается (не надо выкладывать скетч типа "void setup(){} void loop(){}" и просить добавить недостающее. Выкладывайте Вашу реальную попытку что-то сделать.

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016

нужно сделать Параллельное управление реле через bluetooth и кнопки

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016
int n;
int s = 2;
 
void setup()
{
  Serial.begin(9600);
  pinMode(s, OUTPUT);
  pinMode(13, INPUT);  
}
void loop()
{   
  n = digitalRead(13);
  delay(100);
   if (Serial.available())
  {
    n = Serial.read();
    if (n == '1')
    {
     n = HIGH;      
    Serial.print("LOW BL   ");
    Serial.println(millis()/1000);
    }
    else if ( n == '0')
    {
      n = LOW;
    Serial.print("HIGH BL  ");
    Serial.println(millis()/1000);
    }
  }
  else 
 {
    switch (n)  
  {
    case LOW:
    digitalWrite(s, HIGH);
    Serial.print("LOW   ");
    Serial.println(millis()/1000);
    break;
    case HIGH:    
    digitalWrite(s, LOW);
    Serial.print("HIGH  ");
    Serial.println(millis()/1000);
    break;
  } 
 }
  delay(1000); 
}
 
microms
microms аватар
Offline
Зарегистрирован: 22.03.2016

выложил, одну из попыток

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

Во-первых, прежде. чем писать, читайте правила форума - http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii

Во-вторых, это что за строки? Вы не хотите пояснить что именно Вы пытались делать и как, и почему (чем) Вас не устраивает то, как оно работает сейчас? Или все жолжны сами догадываться? Поясните, уж будьте так добры.

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016
int n;
int m;
int s = 2;
void setup()
{
  Serial.begin(9600);
  pinMode(s, OUTPUT);
  pinMode(13, INPUT);  //подключен выключатель
}
void loop()
{     
  delay(100);   
    if (Serial.available())//считываем значение блютуз
    {
    n = Serial.read(); 
    }    
   m = digitalRead(13); //считываем значение выключателя
    
  delay(100);    
    switch (m)  //смотрим что пришло на выключатель и выполняем
  {
    case 0:
    digitalWrite(s, HIGH);
    Serial.print("LOW   ");
    Serial.println(millis()/1000);
    break;
    case 1:    
    digitalWrite(s, LOW);
    Serial.print("HIGH  ");
    Serial.println(millis()/1000);
    break;
  }
   switch (n)  //смотрим что пришло на блютуз и выполняем
   {
    case '0':
     digitalWrite(s, HIGH);      
    Serial.print("LOW BL   ");
    Serial.println(millis()/1000);
    break;
    case '1':    
     digitalWrite(s, LOW);
    Serial.print("HIGH BL  ");
    Serial.println(millis()/1000);
    break;
  } 
  delay(1000);  
}

 

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016

не реагирует на блютуз только на выключатель

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

А из блютуза приходит что-нибудь? Что именно? Поставьте проверку.

Если есть второй Serial, поставьте после строки 15 вывод полученной переменной n и посмотрите, чему она равна в мониторе порта. Если нет второго Serial, включить там (сразу после строки 15) хоть светодиод какой-нибудь - так Вы убедитесь, что хоть что-то приходит.

Можно проще проверить. В строке 1 постаьте присваивание n чего-нибудь, а в свитч по n добавьте соответсвующую иетку. Будете знать, что n не изменилось (или изменилось).

Таким приёмом (рекоммендуется делать всегда) Вы локализуете проблемы и будете точно знать, что беда в блютузе из которого ничего не валится или же в обработке того, что свалилось.

microms
microms аватар
Offline
Зарегистрирован: 22.03.2016

http://arduino.ru/forum/programmirovanie/pomogite-parallelnoe-upravlenie...

 

немного отредактировал