사용 부품
1. 아두이노 프로 미니(328, 3.3v 8MHz)
2. USB to TTL 컨버터(UART 모듈 CH340)
3. AT-09 블루투스 모듈(BLE 4.0 CC2540 CC22541)
연결 방식
아두이노 프로 미니 | AT-09 블루투스 모듈 |
VCC | VCC |
GNC | GND |
3번 핀 | TX |
2번 핀 | RX |
사용 코드
#include <SoftwareSerial.h>
int bleRxPin = 2;
int bleTxPin = 3;
SoftwareSerial BTSerial(bleTxPin, bleRxPin);
void setup()
{
Serial.begin(9600); // 시리얼 비트레이트
BTSerial.begin(9600); // 블루투스 비트레이트
pinMode(LED_BUILTIN, OUTPUT);
}
void loop()
{
byte data; // 블루투스 슬레이브로부터 전송받는 데이터를 저장할 변수
if (BTSerial.available()) { // 슬레이브로부터 전송받은 데이터 처리
data = BTSerial.read();
if(data == 'o')
{
Serial.write("Arduino LED ON\n");
digitalWrite(LED_BUILTIN, HIGH); // 내장 LED 켜기
}
else if (data == 'f')
{
Serial.write("Arduino LED OFF\n");
digitalWrite(LED_BUILTIN, LOW); // 내장 LED 끄기
}
else
{
Serial.write(data + "\n");
}
}
if (Serial.available()) { // 마스터로부터 전송할 데이터 처리
BTSerial.write(Serial.read());
}
}
테스트 결과 (3Demp 앱 사용)
CC41-A가 AT-09의 블루투스 이름
012345
슬레이브에서 'o' 문자열을 전송하면 아두이노 내장 LED가 켜지고
'f' 문자열을 전송하면 LED가 꺼지는 것을 확인
'프로그래밍 > 아두이노' 카테고리의 다른 글
WeMos ESP32 WiFi&Bluetooth Battery 호환보드 (0) | 2020.07.10 |
---|---|
Arduino Nano 업로드 시 에러 해결, 부트로더 업데이트 방법 (0) | 2020.06.08 |
아두이노로 ESP-01(ESP8266-01) WiFi 모듈 펌웨어 업그레이드 (0) | 2020.05.21 |
아두이노 조이스틱 컨트롤 (0) | 2020.05.13 |
아두이노 EEPROM에 구조체 저장 (0) | 2020.05.11 |