정보나눔

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

앱인벤터 아두이노 수치값 통신이 안되는것 같습니다.
reroy박 | 2019-01-31
 

1. 프로젝트 사용한 보드 종류

  아두이노 우노 

 

 

2. 사용한 개발 프로그램명

  (EX : 아두이노 IDE, 스크래치, mBlock 등)

 

 

3. 사용한 센서 모델명

 블루투스 hc 06

 

 

4. 연결한 회로 설명 (또는 이미지)

 

 

5. 소스코드 (주석 필수)

 

#include <SoftwareSerial.h>
SoftwareSerial BT_Serial(3,2);

int sensor = A0; //소리감지기
int val;

void setup() {
  Serial.begin(9600);
  BT_Serial.begin(9600);
  pinMode(sensor, INPUT);
}

void loop() {
  val = analogRead(A0);
  Serial.println(val);
  if (BT_Serial.available()){
    Serial.write(BT_Serial.read());
  }
  if (Serial.available()) {
    BT_Serial.write(Serial.read());
  }
  if(val>50) {
  BT_Serial.println(50);
  delay(00);
  }

}

6. 문제점 및 에러 내용

블루투스와 소음센서를 연결하고 앱에 연결해서 소리가 일정수준 이상이면 숫자50으로 앱에 보내주게해서 메세지가 가게하는 원리로

제작을 하려고 했는데 안되네요 주석을 제가 쌓진 않고 친구가 해줬는데 주석에는 무슨 문제가 없나요?

그리고 저 50으로 보내지 않고 0으로 하니깐 메세지가 엄청 잘 보내지는데 어떻게 해야 할까요? 

  

   

 

 

 

 

 

 

프로필사진

kocoafab 2019-01-31 17:40:20

50이라는 데이터를 전달할 때 실질적으로 데이터는 '5', '0' 각각 날라갑니다.

 

이렇기 때문에 어플리케이션에서는 5랑 0을 각각 비교하기 때문에 50이랑 비교할 경우 거짓만 나오게 됩니다.

 

꼭 50을 비교해야하면 수치값 비교를 아두이노쪽에서 비교한 후 참일 때는 1, 거짓일 때는 0과 같은 데이터를 넘겨 안드로이드 쪽에선 1이냐 0이냐만 비교할 수 있도록 하면 좋을 것 같습니다.

이전글   |    toggle 스위치를 이용해서 servomotor를 +1 움직이다 180도되면 다시 -1하... 2019-01-24
다음글   |    아두이노 오렌지 wifi 로 wifi 와 블루투스를 동시에 이용하고 싶습니다 ... 2019-02-03