Bluetooth HC-05 adalah modul komunikasi nirkabel berbasis Bluetooth versi 2.0 yang sangat populer di dunia mikrokontroler, terutama Arduino. Modul ini memungkinkan komunikasi data dua arah antara perangkat Arduino dan perangkat lain seperti:
- HP Android
- Komputer (dengan Bluetooth)
- Modul Bluetooth lain
berikut ini adalah cara memprogram RTCDS3231 di esp32 dengan mudah:
untuk code bisa digunakan dibawah ini:
#include <Arduino.h>
#include <SoftwareSerial.h>
const int rxPin_bluetooth = 3;
const int txPin_bluetooth = 4;
SoftwareSerial bluetooth(rxPin_bluetooth, txPin_bluetooth);
void kirim_bluetooth(char data) {
bluetooth.print(data);
}
String baca_bluetooth() {
String dataTerima = "";
while (bluetooth.available()) {
char karakter = bluetooth.read();
dataTerima += karakter;
}
return dataTerima;
}
void setup()
{
Serial.begin(9600);
bluetooth.begin(9600);
kirim_bluetooth("ready");
}
void loop(){
Serial.println(baca_bluetooth());
}
1. Include Library
#include <Arduino.h>
#include <SoftwareSerial.h>
#include <Arduino.h>– Menyertakan library dasar Arduino.#include <SoftwareSerial.h>– Mengimpor library SoftwareSerial, yang memungkinkan komunikasi serial di pin digital selain pin default (0 dan 1).
🔹 2. Inisialisasi Software Serial
const int rxPin_bluetooth = 3;
const int txPin_bluetooth = 4;
SoftwareSerial bluetooth(rxPin_bluetooth, txPin_bluetooth);
- Pin 3 digunakan sebagai RX (menerima data dari modul Bluetooth).
- Pin 4 digunakan sebagai TX (mengirim data ke modul Bluetooth).
SoftwareSerial bluetooth(...)– Membuat objekbluetoothuntuk komunikasi serial dengan modul Bluetooth di pin tersebut.
3. Fungsi Mengirim Data ke Bluetooth
void kirim_bluetooth(char data) {
bluetooth.print(data);
}
- Fungsi ini mengirim satu karakter
datamelalui Bluetooth. - Menggunakan
bluetooth.print()untuk mengirim data ke perangkat Bluetooth.
⚠️ Perlu diperhatikan: fungsi ini hanya bisa mengirim satu karakter, bukan string. Tapi di
setup()nanti dikirim string"ready", yang secara teknis tetap bisa berjalan karenaprint()bisa handle string juga meskipun parameter bertipechardi fungsi.
Fungsi Membaca Data dari Bluetooth
String baca_bluetooth() {
String dataTerima = "";
while (bluetooth.available()) {
char karakter = bluetooth.read();
dataTerima += karakter;
}
return dataTerima;
}
- Membuat string kosong
dataTerima. - Selama ada data masuk di serial Bluetooth (
bluetooth.available()), data dibaca karakter demi karakter. - Karakter yang dibaca ditambahkan ke
dataTerima. - Akhirnya, data lengkap yang diterima dikembalikan sebagai string.
Fungsi Setup
void setup() {
Serial.begin(9600);
bluetooth.begin(9600);
kirim_bluetooth("ready");
}
- Menginisialisasi komunikasi serial dengan PC pada baud rate 9600.
- Menginisialisasi komunikasi dengan Bluetooth (juga 9600 baud).
- Mengirim string
"ready"ke Bluetooth untuk memberi tahu bahwa Arduino sudah siap.
Fungsi Loop
void loop() {
Serial.println(baca_bluetooth());
}
- Terus-menerus membaca data dari Bluetooth.
- Mencetak data yang diterima ke monitor serial (di PC) menggunakan
Serial.println().
Ringkasan Alur Program
- Arduino memulai komunikasi serial dengan komputer dan Bluetooth.
- Mengirim pesan
"ready"ke Bluetooth saat startup. - Di dalam loop:
- Arduino terus-menerus mengecek apakah ada data dari Bluetooth.
- Jika ada, data dibaca dan ditampilkan di serial monitor.
untuk diskusi bisa kontak dibawah ini :

Sosial media :





