안녕하세요.
오늘은 아두이노와 HC-06을 사용하여 블루투스 통신을 해보겠습니다.
[핀 설정]
Arduino | HC-06 |
5V | VCC |
GND | GND |
D8 | TX |
D9 | RX |
[주의 사항 필독]
TX, RX 연결을 할 때 아두이노와 블루투스 모듈을 반대로 연결합니다.
아두이노의 RX핀은 블루투스 모듈의 TX에 연결을 해야하고
반대로 아두이노의 TX핀은 블루투스 모듈의 RX에 연결을 하면 되겠습니다.
처음에.. 이것 때문에 30분 삽질 했습니다. 알고는 있었지만 실수를 하게 되더군요..
[소스 코드]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#include <SoftwareSerial.h>
SoftwareSerial blue_Serial(8, 9); // 8 - TX, 9 - RX
void setup()
{
Serial.begin(9600);
blue_Serial.begin(9600);
}
void loop()
{
//문자를 받고 싶을 때.
char read_data = blue_Serial.read();
if (blue_Serial.available())
{
Serial.write(blue_Serial.read());
}
//문자열을 받고 싶을 때.
String read_str = blue_Serial.readStringUntil('\n');
if (blue_Serial.available())
{
Serial.write(blue_Serial.readStringUntil('\n'));
}
}
|
cs |
이렇게 하시고 난 다음 시리얼 창 열어서 AT <<명령어를 치시면 OK라고 뜬다면 정상적으로 된겁니다.
[어플 통신]
어플이랑 통신을 하고 싶으시면 요즘 블루투스 통신 테스트 할 수 있는 어플들이 엄청 많이 나와 있습니다
하나를 고르셔서 통신 하시면 됩니다. 저는 Arduino Bluetooth Controller 를 사용 하였습니다.
[AT 명령어]
초 기 값 :Slave, 9600 baud rate, N, 8, 1. Pincode 1234
1. 연결 테스트: 전송 : AT 수신 : OK
2. 보드레이트 변경: 전송 : AT+BAUD1 수신 : OK1200
BAUD1 =1200
BAUD2 =2400
BAUD3 =4800
BAUD4 =9600
BAUD5 =19200
BAUD6 =38400
BAUD7 =57600
BAUD8 =115200
3. 블루투스 이름 변경: 전송 : AT+NAMEdevicename / 수신 : OKname (devicename is the name you want the device to be , and it will be searched with this name) Name setting can be save even power down.
4. PIN변경: 전송 : AT+PINxxxx / 수신: OKsetpin (xxxx is the pin code you set) Pin code can be save even power down
감사합니다.
'Programming > Arduino' 카테고리의 다른 글
Arduino(아두이노) Stepper motor(12v) control.(A4988 드라이버) (1) | 2020.02.03 |
---|---|
[Arduino] 트랜지스터(TR) 활용 12V 제어 하기(Relay,LED 등) ,2SC3198 (1) | 2020.01.21 |
Arduino ADC PIN 하나로 슬라이드 스위치(Slide Switch) 제어 하기 (LED) (0) | 2020.01.13 |
CDS (조도센서) + OLED(I2C) 조도 값(ADC) 모니터링 (0) | 2020.01.09 |
Arduino 대표 시리즈 사양(Spec) 모음-Uno,Nano,Mega,Micro (0) | 2020.01.09 |
댓글