정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

블루투스로 led깜빡이기 예제코드 관련 질문 입니다.
홍빤 | 2016-05-04

블루투스로 led깜빡이기 예제에서  블루투스 시리얼값  'F  '를 받았을때 계속 돌다가 다시 F가 들어왔을때 꺼지게 하려는데

F값을 받았을때 13번핀을 딜레이를 주고 깜빡이게 했더니 한번만 깜빡이고 끊어져 버리네요.

(처음 F값이 들어오면 계속 깜빡이다가 다시 F값이 들어오면 꺼지는 동작을 하고 싶습니다.)

 

이거 너무 초보라 어떻게 접근해야 할지 감이 안잡히네요 ^^;;

어떻게 처리하면 되는지 고수님들의 tip 혹은 예제코드 좀 부탁드리겠습니다..

 

 

 

기본 예제 코드는 아래와 같습니다.

 

 

 

 

// 블루투스 통신을 위한 SoftwareSerial 라이브러리를 불러온다.
#include


SoftwareSerial BTSerial(4, 5);

byte buffer[1024];

int bufferPosition;
boolean temp = 0;

void setup() {
  BTSerial.begin(9600);
  Serial.begin(9600);
  
  pinMode(13, OUTPUT);
 
  bufferPosition = 0;
}

void loop() {
 
  if (BTSerial.available()) {

    byte data = BTSerial.read();
  
    Serial.write(data);
    
    buffer[bufferPosition++] = data;
       
    if (data == 'F') { 
  

  // LED가 꺼있을 경우 LED를 켭니다.

  if (temp == 0) { 
        digitalWrite(13, HIGH);
        temp = 1;
  

    // LED가 켜져있을 경우 LED를 끕니다.
      } else {         
        digitalWrite(13, LOW);
        temp = 0;
      }
    }
   

 
    if (data == '\n') {
      buffer[bufferPosition] = '\0';
     
      bufferPosition = 0;
    } 
  }
}

 

이전글   |    OLED에 대하여 질문이 있습니다! (아두이노)... 2016-05-04
다음글   |    음성인식 2016-05-05