hc-05 hc-06 통신

hc-05 hc-06 통신

얌전한호랑이 2016.02.29 16:49

출처 : http://www.martyncurrey.com/connecting-2-arduinos-by-bluetooth-using-a-hc-05-and-a-hc-06-pair-bind-and-link/

1. 이미지처럼 연결한다. 3.3v의 경우는 저항을 쓰지 않아도 된다.(나는 3.3으로 해서 저항없이 성공함)

2. 소스를 hc-05에 업로드한다.

3.소스를 hc-06에 업로드한다.

4.baud rate를 두개모두 맞춰둔다..따로 설정한게 없어서 9600으로 기본셋팅 되어있는 것 같다.

5.패스워드는 두개 모두 같도록 한다. hc-05는 AT+PSWD=1234 식으로 바꿀 수 있다. 

hc-06은 AT+PIN7777 이런 형태로…

6. hc-05시리얼 창에 명령어를 차례대로 넣는다.“Both NL & CR” 로 셋팅해야 한다.

그렇지 않으면 at명령어를 내리면 at텍스트만 리턴된다.

또는 다른 hc-06과 페어링이 되어있는 경우도 at명령어를 내리면 at텍스트만 리턴된다. 주변 hc-06을 전부 끄고 셋팅한다.

Connect the Arduino to the host computer. The LED on the HC-05 should be blinking quickly at about 5 times a second.

With the Arduino on, do the following
– Remove the 5V connection to BT VCC
– Press and hold the button switch on the BT module
– Re-connect BT VCC to 5V (while still pressing the button switch), the LED should come on.
– Release the button switch and the LED should be blinking slowly on/off once every couple of seconds. This indicates AT mode.

The following sketch is used to talk to the BT module. Run the sketch and put the HC-05 in to AT mode.

계속 ok가 나오지 않고 명령어만 리턴되면 위의

내용처럼 5v를 빼고 버튼을 누른 상태에서 다시

5v를 연결하면 느리게 led가 깜박이는데 이 상태

가 AT명령어를 입력할 수 있는 상태이다.

AT+RMAAD clears any previously paired devices.
AT+ROLE=1 puts the HC-05 in Master Mode
AT+RESET reset the HC-05. This is sometimes needed after changing roles.

AT+CMODE=0 allows the HC-05 to connect to any device
AT+INQM=0,5,9  set inquiry to search for up to 5 devices for 9 seconds
AT+INIT initiates the SPP profile. If SPP is already active you will get an error(17) which you can ignore.
AT+INQ searches for other Bluetooth devices.

inq명령을 내리면 블르투스 리스트가 나온다.

+INQ:A854:B2:3FB035,8043C,7FFF
+INQ:3014:10:171179,1F00,7FFF

이런형태로..

모델명을 확인하기 위하여

AT+RNAME?3014,10,171179

이렇게 명령을 내리면

블르투스 이름을 확인 할 수 있다.

7. 페어링과 바인드를 하기위해 아래 명령어를 순차적으로 입력한다.

AT+PAIR=3014,10,171179,9

마지막의 9는 9초동안 연결을 한다는 뜻이다.

AT+BIND=3014,10,171179

뒤의 숫자는 inq명령어로 확인한 본인의 번호를 적어야 한다.

AT+CMODE=1

AT+LINK=3014,10,171179

이 명령까지 내리면 hc-06의 깜박이는 불이 계속 빨간불로 들어와있게 되며 두대가 접속되었음을 의미한다.

8. hc-05에 연결했던 34번 핀을 제거하고 아래의 코드를 업로드한다.

AT+ORGL hc-05를 초기화 시키고 싶은 경우의 명령어이다. slave모드가 기본상태

pin code :1234, device name: H-C-2010-06-01 ,Baud 38400bits/s.

AT+NAME=newname

두대의 시리얼 창을 열어서 명령어를 보내면 화면에 주고 받는 내용을 확인 할 수 있게 된다.

예제에는 write명령어를 보냈지만 내 경우는 print로 보냈다.

보내는 부분의 코드는

BTSerial.print(“allPass”);

이런 형태고

받는 부분의 소스는

String incomingByte = “”;

incomingByte = BTSerial.readString();

if(incomingByte==”allPass”)

형태로 수정하였다. 끝.

at command

hc-05_at_commands.pdf

출처: http://imal.tistory.com/entry/hc05-hc06-통신 [Interactive Media Art]

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다