Interfacing Modul Bluetooth HC-05 dengan NodeMCU
Overview of Bluetooth
HC-05 adalah perangkat Bluetooth yang digunakan untuk komunikasi nirkabel dengan perangkat yang mendukung Bluetooth (seperti ponsel pintar). Perangkat ini berkomunikasi dengan mikrokontroler menggunakan komunikasi serial (USART).
Perangkat ini menambahkan protokol komunikasi nirkabel ke dalam aplikasi tertanam sehingga dapat berkomunikasi dengan perangkat Bluetooth lainnya.
Perintah AT digunakan untuk mengontrol modul Bluetooth. Kita dapat mengubah pengaturannya seperti kata sandi, nama perangkat, pengaturan komunikasi USART seperti baud rate, jumlah bit stop atau paritas, dll.
Untuk informasi lebih lanjut tentang modul Bluetooth HC-05, pinnya, dan cara menggunakannya, lihat topik Modul Bluetooth HC-05 di bagian sensor dan modul.
NodeMCU berbasis ESP8266 memiliki modul komunikasi serial UART melalui mana ia dapat berkomunikasi dengan modul Bluetooth. Untuk mengetahui lebih lanjut tentang fungsi UART berbasis Lua pada NodeMCU, lihat NodeMCU UART dengan IDE ESPlorer.
Diagram Koneksi Modul Bluetooth HC-05 dengan NodeMCU
Mengendalikan LED menggunakan Modul Bluetooth HC-05 dengan NodeMCU
Mari mengembangkan aplikasi kecil di mana kita dapat mengontrol LED ON-OFF melalui ponsel pintar.
Hal ini dilakukan dengan menghubungkan modul Bluetooth HC-05 dengan NodeMCU. Data dari HC-05 diterima/dikirim secara serial oleh NodeMCU.
Dalam aplikasi ini, ketika angka 1 dikirim dari ponsel pintar, LED akan menyala dan jika angka 2 dikirim, LED akan mati. Jika data yang diterima adalah selain 1 atau 2, itu akan mengirimkan pesan ke ponsel untuk memilih opsi yang benar.
Kita dapat menulis kode untuk NodeMCU DevKit dalam bahasa Skrip Lua atau bahasa C/C++. Kami menggunakan IDE ESPlorer untuk menulis kode dalam skrip Lua dan IDE Arduino untuk menulis kode dalam bahasa C/C++. Untuk informasi lebih lanjut, lihat Panduan Memulai dengan NodeMCU menggunakan IDE ESPlorer (yang menggunakan skrip Lua untuk NodeMCU) dan Panduan Memulai dengan NodeMCU menggunakan IDE Arduino (yang menggunakan sketsa Arduino berbasis bahasa C untuk NodeMCU).
LEDpin = 4 gpio.mode(LEDpin, gpio.OUTPUT)--set LED pin as output pin gpio.write(LEDpin, gpio.LOW)-- set LED state initially low --begin uart with specs uart.setup(0, 9600, 8, uart.PARITY_NONE, uart.STOPBITS_1, 1) --set callback function on receive to make decision about LED on/off uart.on("data",1, function(data) if(data == "1") then gpio.write(LEDpin, gpio.HIGH) print("LED ON") elseif(data == "2") then gpio.write(LEDpin, gpio.LOW) print("LED OFF") else print("select proper option") end end, 0)Di bawah ini adalah respons yang diterima dari NodeMCU Bluetooth saat mengirim perintah dari contoh di atas pada terminal Bluetooth di ponsel pintar.
Kode Bluetooth HC-05 untuk NodeMCU menggunakan Arduino
int LED = D4; void setup() { pinMode(LED, OUTPUT); Serial.begin(9600); /* Define baud rate for serial communication */ } void loop() { if (Serial.available()) /* If data is available on serial port */ { char data_received; data_received = Serial.read(); /* Data received from bluetooth */ if (data_received == '1') { digitalWrite(LED, HIGH); Serial.write("LED turned ON\n"); } else if (data_received == '2') { digitalWrite(LED, LOW); Serial.write("LED turned OFF\n"); } else { Serial.write("Select either 1 or 2"); } } } end, 0)Komponen yang digunakan
Modul Bluetooth HC-05 | X1 | DataSheet | Beli |
---|---|---|---|
NodeMCU | X1 | DataSheet | Beli |
ESP12F | X1 | DataSheet | Beli |
LED 5mm | X1 | DataSheet | Beli |
Referensi: