- Bahan yang Dibutuhkan
- Modul Bluetooth (HC-05)
- STM32 Port USART
- Diagram Sirkuit dan Koneksi
- Pemrograman STM32F103C8
- Langkah-langkah untuk Menghubungkan Modul Bluetooth dengan Ponsel Android
Di dunia saat ini Bluetooth telah menjadi sangat populer dan hampir setiap perangkat seperti telepon seluler, laptop, dan sistem infotainment mobil menggunakan Bluetooth untuk komunikasi nirkabel. Bluetooth tidak hanya digunakan untuk mentransfer data tetapi juga untuk mengontrol perangkat Bluetooth lain secara nirkabel, seperti menggunakan headset Bluetooth Anda dapat mendengarkan lagu secara nirkabel dari ponsel Anda atau dapat menggunakan sistem audio mobil untuk memutar lagu dari ponsel Anda.
Bluetooth adalah teknologi nirkabel yang bekerja pada frekuensi 2.4GHz. Sinyal Bluetooth normal dalam jangkauan radius 10 meter. Bluetooth adalah teknologi nirkabel yang paling umum digunakan dalam proyek tertanam asalkan jangkauan komunikasinya terbatas. Bluetooth telah menambahkan keuntungan dari konsumsi daya yang rendah dan biaya pengoperasian yang rendah. Biasanya digunakan untuk menghubungkan mikrokontroler dengan Ponsel Cerdas dengan menggunakan aplikasi Bluetooth.
Kita telah melihat antarmuka modul Bluetooth dengan mikrokontroler lain seperti Arduino, 8051, PIC dll. Sekarang dalam tutorial ini kita akan menghubungkan modul Bluetooth HC-05 dengan STM32F103C8 dan MENGHIDUPKAN / MEMATIKAN LED menggunakan ponsel Android.
Bahan yang Dibutuhkan
- STM32F103C8
- Modul Bluetooth (HC-05)
- LED
- Ponsel Android
- Papan tempat memotong roti
- Menghubungkan kabel
Perangkat lunak:
- Terminal Bluetooth (Aplikasi Android)
Modul Bluetooth (HC-05)
Ini sebagian besar digunakan modul Bluetooth dalam proyek tertanam. Ini adalah modul Bluetooth serial yang menggunakan komunikasi serial yang memiliki jangkauan kurang dari 100m dan beroperasi pada 5V (minimum 3,3V). Ini dapat digunakan untuk menghubungkan dua mikrokontroler secara nirkabel dan juga dengan ponsel dan laptop. Karena ada banyak aplikasi Android yang tersedia, ini sangat berguna untuk membuat proyek yang dikendalikan Bluetooth nirkabel.
Ini menggunakan komunikasi USART dan dapat dihubungkan dengan mikrokontroler yang memiliki protokol komunikasi USART.
Ini memiliki antena terintegrasi. Ini memiliki konfigurasi Master / Slave yang dapat diubah dalam mode perintah AT yang berguna ketika hanya satu perangkat yang mengirim data (master ke slave) seperti misalnya dari PC (MASTER) ke slave (MCU apa saja). Seorang master dapat terhubung ke perangkat lain dan budak tidak terhubung ke koneksi lain selain master.
Mode Operasi
Ini memiliki dua mode AT Command Mode & Data Mode.
Saat Bluetooth dinyalakan, Bluetooth memasuki mode data default. Mode ini dapat digunakan untuk transfer data. Untuk masuk ke mode AT Command selama power up kita perlu menekan tombol yang ada di modul untuk mengubah pengaturan default modul seperti konfigurasi master / slave.
Pin Modul Bluetooth
- Pin EN (ENABLE) -Pin ini digunakan untuk mengatur Mode Data atau AT Command Mode. Secara default ada dalam MODE DATA. Ketika tombol ditekan selama power up, itu masuk ke mode perintah AT.
- Pin + 5V - Ini digunakan untuk catu daya ke modul
- Pin GND - Ini digunakan sebagai ground untuk modul
- Pin TX - Pin ini untuk dihubungkan ke pin RX MCU
- Pin RX - Pin ini terhubung ke pin TX MCU
- NEGARA - Pin ini menunjukkan status modul, lihat di bawah tentang indikasi
Indikasi LED
- Ini memiliki indikator LED (MERAH) yang memberikan status modul Bluetooth.
- Ketika modul Bluetooth TIDAK TERHUBUNG ke perangkat apapun, sinyal menjadi lemah dan led merah berkedip terus menerus yang menandakan modul TIDAK DIPASANGKAN.
- Ketika modul Bluetooth TERHUBUNG ke perangkat apa pun, sinyal menjadi TINGGI dan led merah berkedip dengan beberapa penundaan yang menunjukkan modul PASANG.
Periksa proyek kami yang lain untuk mempelajari lebih lanjut tentang modul Bluetooth HC-05 dengan mikrokontroler lain:
- Mobil Mainan yang Dikendalikan Bluetooth menggunakan Arduino
- Sistem Otomasi Rumah Terkendali Bluetooth menggunakan 8051
- Lampu Kontrol Suara menggunakan Raspberry Pi
- Radio FM Terkendali Ponsel Pintar menggunakan Arduino dan Pemrosesan
- Mobil Robot Pengendali Ponsel menggunakan G-Sensor dan Arduino
- Antarmuka Modul Bluetooth HC-06 dengan Mikrokontroler PIC
STM32 Port USART
Port komunikasi serial USART STM32F103C8 (BLUE PILL) ditunjukkan pada gambar pin di bawah. Ini memiliki warna biru (PA9-TX1, PA10- RX1, PA2-TX2, PA3- RX2, PB10-TX3, PB11- RX3). Ia memiliki tiga saluran komunikasi seperti itu.
Diagram Sirkuit dan Koneksi
Sambungan sirkuit untuk menghubungkan Modul Bluetooth dengan STM32 dibuat seperti di bawah ini
Koneksi antara modul STM32F103C8 & Bluetooth (HC-05)
- Pin TX (PA9) dari STM32F103C8 terhubung ke pin RX dari modul Bluetooth.
- Pin RX (PA10) dari STM32F103C8 terhubung ke pin TX modul Bluetooth.
- Pin VCC (+ 5V) modul Bluetooth terhubung ke pin 5V STM32F103C8.
- Pin GND modul Bluetooth terhubung ke pin GND STM32F103C8.
Koneksi Lainnya
- Pin (PA0) STM32 (Pill Biru) dihubungkan ke pin positif LED melalui resistor seri. LED yang digunakan disini adalah warna campuran.
- Pin lain yang dipimpin terhubung ke GND dari STM32.
Pemrograman STM32F103C8
Interfacing Bluetooth dengan STM32 sama dengan Arduino dan pemrograman di STM32 sama dengan Arduino IDE. Lihat tutorial ini untuk memprogram STM32 dengan USB menggunakan Arduino IDE.
Seperti yang telah dikatakan, dalam proyek ini, kami akan menghubungkan modul Bluetooth (HC-05) dengan STM32F103C8 dan menggunakan Ponsel Cerdas Android dengan aplikasi android Terminal Bluetooth untuk MENGAKTIFKAN dan MENONAKTIFKAN LED.
Catatan: Pin RX & TX harus dilepas saat mengupload kode ke STM32F103C8.
Kode lengkap untuk proyek ini diberikan di akhir tutorial ini dengan Video demonstrasi.
Pengkodean untuk proyek ini sangat sederhana. Kode Arduino yang sama dapat digunakan tetapi hanya pin yang harus diubah. Karena kita memiliki tiga set pin USART di STM32F103C8 jadi kita harus menentukan pin yang benar yang kita gunakan untuk menghubungkan modul Bluetooth.
1. Pertama kita perlu memberi nama pin dengan nomor pin masing-masing dengan tipe data int sebagai berikut
const int pinout = PA0;
2. Selanjutnya kita membutuhkan variabel untuk menyimpan data serial dari ponsel android. Data tersebut dapat berupa char atau integer sebagai berikut
char inputdata = 0;
3. Selanjutnya pada void setup (), kita harus memulai komunikasi serial antara STM32 Blue Pill dan modul Bluetooth dengan memberikan baud rate 9600
Serial1.begin (9600);
Kami menggunakan Serial1 di sini karena kami menghubungkan HC-05 ke TX1 dan RX1 dari STM32.
Kita juga bisa menggunakan Serial2 atau Serial3 tapi pin harus terhubung.
4. Pesan intro dikirim sebagai data serial ke serial1, yaitu ke modul Bluetooth HC05. Modul ini selanjutnya mengirim data ke aplikasi Terminal Bluetooth di ponsel android. Jadi kami menggunakan pernyataan di bawah ini
Serial1.print ("CIRCUIT DIGEST \ n"); Serial1.print ("BLUETOOTH DENGAN STM32 \ n");
5. Selanjutnya kita perlu mengatur pinmode (PA0) sebagai output, karena kita menghubungkan led ke pin ini. Jadi kita gunakan
pinMode (pinout, OUTPUT);
6. Selanjutnya di void loop (), kita menjalankan data berikut untuk membaca data serial dan menyalakan / mematikan LED yang sesuai
void loop () { If (Serial1.available ()> 0) { inputdata = Serial1.read (); if (inputdata == '1') { digitalWrite (pinout, HIGH); Serial1.print ("LED ON \ n"); } lain jika (inputdata == '0') { digitalWrite (pinout, LOW); Serial1.print ("LED MATI \ n"); } } }
Di sini kami menggunakan pernyataan if karena kode ini hanya dijalankan ketika port Serial1 memiliki data apa pun yang diterima dari modul Bluetooth sehingga pernyataan ini digunakan Serial1.available ()> 0 . Jika tidak, jika tidak bisa masuk, itu menunggu sampai komunikasi serial dimulai. Sekarang menyimpan data yang diterima dalam variabel inputdata = Serial1.read (). Kemudian itu memeriksa nilai yang dikirim dari aplikasi terminal Bluetooth. Jadi jika nilainya 1, ia mencetak LED ON dan membuat pin (PA0) menjadi TINGGI dengan pernyataan digitalWrite (pinout, HIGH) dan jika nilainya 0, ia mencetak LED OFF dan membuat pin (PA0) menjadi RENDAH.
Langkah-langkah untuk Menghubungkan Modul Bluetooth dengan Ponsel Android
Langkah 1: - Buka Bluetooth dari ponsel setelah mengupload kode ke STM32 dari Arduino IDE dan memberikan daya ke sirkuit. INGAT untuk menghapus pin RX dan TX saat MENGUNGGAH kode
Langkah 2: - Di perangkat yang tersedia pilih HC-05 dan masukkan kata sandi sebagai 1234
Langkah 3: - Setelah memasangkan, buka aplikasi Terminal Bluetooth dan pilih hubungkan perangkat dan pilih HC-05 seperti yang ditunjukkan di bawah ini
Langkah 4: - Setelah menghubungkan dengan HC-05 Bluetooth Module, berikan nilai di terminal 1 atau 0 untuk MENGAKTIFKAN dan MEMATIKAN LED. Anda juga akan menerima pesan bahwa LED On atau Off.