상세 컨텐츠

본문 제목

아두이노 메가보드+블루투스 와 스마트폰 통신작업 OK

안드로이드+드론 제작

by 김일국 2016. 5. 4. 21:40

본문

지난 포스트에서 마무리 하지 못한 아두이노 메가보드+블루투스 와 스마트폰 통신작업을 오늘 완성하였습니다.

안드로이드 스튜디오 작업화면(아래)

동영상 시현1 (블루투스 모듈이 연결되면 HC-06모듈의 LED가 항상 켜져 있게 됩니다.)


동영상 시현2 (앱을 종료하게 되면 HC-06블루투스 모듈의 LED가 다시 깜박거리게 됩니다.)


아두이노 메가보드로 블루투스 모듈(HC-06)을 연결한 국재 자료가 많지 않고, 스케치 프로그램에서 사용된

SoftwareSerial gSoftSerial(PIN_TX, PIN_RX); 소프트웨어시리얼 명령이 아두이노 ADK메가 보드에서는 오동작(스마트폰쪽 수신은 되는데, 송신이 않됨)해서, 한 참 고생했습니다. 아두이노 ADK 보드는 Uno 보드처럼 RX0, TX0만 사용해야 하는 제약이 없이, RX0~RX3, TX0~TX3 까지 포트가 준비 되어 있고, 스케치 프로그램 사용도 아래처럼 Serial1.read(저는 아두이노 ADK보드 TX1,RX1 포트를 사용하였습니다.) 직관적으로 사용하면 됩니다. 한가지 주의할 점은 HC-06블루투스 모듈의 RX-TX : 아두이노 ADK보드의 TX-RX  처럼 순서가 반대로 되어야 작동 합니다.

우리가 일반적으로 생각한 RX-RX, TX-TX 결선이 아니고, RX-TX, TX-RX 입니다.

//스케치 프로그램시작
const int button_pin = 4;//버튼Press센서 입력핀
int lastButtonState;//버튼 마지막Press,Unpress상태
int currentButtonState;//버튼 현재Press,Unpress상태

void setup()
{
  Serial.begin(9600);//디버그용 시리얼모니터용으로 사용 Change the baud rate value depending on the default baud rate of your bluetooth module, for Bluesmirf-115200 and for JY-MCU-9600
  Serial1.begin(9600);//불루투수보드와 통신연결사용 9600으로 해도 스트링문자열 전송정상입니다.
  pinMode(2, OUTPUT);//보드의 LED켜기 및 릴레이 출력작동 핀
  pinMode(button_pin, INPUT);//보드의 버튼 눌루기 센서입력 작동 핀
}

void loop()
{
 if(Serial1.available())
  {
    //스마트폰 -> 아두이노 메가보드 RX1포트로 수신시작
    val=Serial1.read();
    Serial.println(int(val));//Serial Monitor로 수신값 출력
    if(int(val)==49)//Turn Light1 on
       digitalWrite(2,HIGH);
     else if (int(val)==50)//Turn Light1 OFF
             digitalWrite(2,LOW);
    }
    //아두이노 메가보드 TX1포트로 -> 스마트폰 전송시작
    currentButtonState = digitalRead(button_pin);
    if(currentButtonState != lastButtonState) {
      String s = "Press";
      if(currentButtonState == HIGH) Serial1.println(s);//스마트폰으로 버튼상태 출력
      lastButtonState = currentButtonState;
    }
}
참고로, 작업한 안드로이드앱 소스와 스케치프로그램 소스를 올려 놓습니다.

20160504PM_SmartHome.zip (안드로이드 앱소스)

SmartHome_ino.zip (아두이노ADK 스케치 프로그램)

다음 포스트는 오늘 작업한 회로구성과 부품배치를

아래 오픈소스인 프리징 프로그램(회로설계 및 스케치 대체 프로그램)으로 그리고, 사진과 함께 올리도록 하겠습니다.

http://fritzing.org/download/?donation=0

20160504PM_SmartHome.zip
0.29MB
SmartHome_ino.zip
0.0MB

관련글 더보기

댓글 영역