проблема с void loop()

Yezdoghlyan
Offline
Зарегистрирован: 11.01.2015

int ledpin=13;

int incomingbyte;



void setup()

{

Serial.begin(9600);

pinMode(ledpin,OUTPUT);

}

void loop()

{

if(Serial.available()>0)

{

incomingbyte=Serial.read();

}

if(incomingbyte=='0')

{

digitalWrite(ledpin,HIGH);

}

if(incomingbyte=='1')

{

digitalWrite(ledpin,LOW);

}

} почему, когда я нажимаю на on свет включается, а когда на off эта строчка не работает и не входит сюда if(incomingbyte=='1')

{

digitalWrite(ledpin,LOW);

} и свет остется включенным ? Что я делаю не так?

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Приведите код в удобочитаемый вид - http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Может так?

#define ledpin  13
byte incomingbyte;

void setup(){
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
}

void loop(){
  if(Serial.available()>0)  { 

    incomingbyte=Serial.read(); 
    if(incomingbyte=='0')  digitalWrite(ledpin,HIGH); 
    if(incomingbyte=='1')  digitalWrite(ledpin,LOW);  
    

  } 
}

Или так:

#define ledpin  13
byte   incomingbyte;

void setup(){
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
}

void loop(){
  if(Serial.available()>0)  { 
    incomingbyte=Serial.read(); 
    switch (incomingbyte) {
    case 0:   
      digitalWrite(ledpin,HIGH);
      break;
    case 1:    
      digitalWrite(ledpin,LOW);  
      break;
    }
  } 
}


 

Yezdoghlyan
Offline
Зарегистрирован: 11.01.2015

все равно включенным остается

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011
#define ledpin  13
int incomingbyte;

void setup(){
  Serial.begin(9600);
  pinMode(ledpin,OUTPUT);
}

void loop(){
  if(Serial.available()>0)  { 
    Serial.print ("  ");
    incomingbyte=Serial.read(); 
    Serial.write( incomingbyte );
    if(incomingbyte=='0')  digitalWrite(ledpin,HIGH); 
    if(incomingbyte=='1')  digitalWrite(ledpin,LOW);  
    

  } 
}

Не может быть, смотрите эхо

(Там где switch case у меня ошибка: 0 и 1 в кавычку надо.....)

Yezdoghlyan
Offline
Зарегистрирован: 11.01.2015

а может быть здес есть ошибка ?

<?php
if(isset($_GET['action'])){
require("php_serial.class.php");
$serial=new phpSerial();
 
 
$serial->deviceSet("COM1");
$serial->confBaudRate(9600);
$serial->deviceOpen();
if($_GET['action']=='1')
{
$serial->sendMessage("0\r");
}
else if ($_GET['action']=='0')
{
$serial->sendMessage("1\r");
}
$serial->deviceClose();
}
//header("Location: index.html"); // Return to frontend (index.html)
?>
SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment... - в #1 вам уже подсказали :(