개발 블로그

[DM공모전] 블루투스 통신으로 OBD-II 데이터 핸드폰에 출력하기 & 통신하기[2] 본문

개발/Projects

[DM공모전] 블루투스 통신으로 OBD-II 데이터 핸드폰에 출력하기 & 통신하기[2]

영글어가다 2022. 1. 27. 11:10

이전에 OBD - II 모듈과 블루투스 앱 통신에 문제가 생겨, 아두이노 우노 보드로 바꿔 진행했었다.

그런데 운이 좋게 문제를 해결했다. 모듈에 문제가 있던 것은 아니었다. 모듈 사용 방법이 홈페이지에 보기 어렵게 적혀있어서, 우리가 못했던 것이었다...

https://speak-of-the-devil.tistory.com/13

 

[공모전] 블루투스 통신으로 OBD-II 데이터 핸드폰에 출력하기 & 통신하기[1]

이번엔 아두이노 IDE 시리얼 모니터에서 받아왔던 정보를 VScode 시리얼 모니터에서 받아봤다. 이번엔 블루투스 통신을 해보자!! https://speak-of-the-devil.tistory.com/7 [공모전] OBD - II 정보 VScode 로 출..

speak-of-the-devil.tistory.com


결과

이제까지 OBD 모듈에 전원을 안 켰었다.(못 켰었다ㅎ)

전원 켜는 방법을 알고 난 뒤 진행한 결과, 블루투스를 통해 핸드폰과 정상적으로 통신했다.

상품 페이지를 조금 더 자세히 들여다보자...(보기 좋게 작성했겠지? 에 대한 기대는 내려놓자ㅎㅎ)

우리의 경우... 예제 코드에 주석으로 표시가 되어 있었다...ㅋㅋ(내가 못 찾았던 걸 수도 있다...)

PS. 문제 해결에 도움을 주신... 팀원에게 감사를 전합니다...^^

상품 페이지는 이곳...

https://docs.longan-labs.cc/1030003/


코드는 다음과 같다.

#include <SoftwareSerial.h>

#define HC06_RX 10
#define HC06_TX 11

SoftwareSerial HC06(HC06_RX, HC06_TX);

void  setup(){
  pinMode(A3, OUTPUT);
  digitalWrite(A3, HIGH);
  Serial.begin(9600);
  HC06.begin(9600);
}

void  loop(){
  if (HC06.available() > 0){
    String get_hc06 = HC06.readStringUntil('\n');
    HC06.print("HC06 : ");
    HC06.print(get_hc06);
    Serial.print("HC06 : ");
    Serial.println(get_hc06);
  }
  if (Serial.available() > 0){
    String get_obd = Serial.readStringUntil('\n');
    Serial.print("OBD : ");
    Serial.println(get_obd);
    HC06.print("OBD : ");
    HC06.print(get_obd);
  }
}