Daftar Isi:
- Langkah 1: Apa yang Anda Butuhkan
- Langkah 2: Solusinya
- Langkah 3: Di Balik Layar…
- Langkah 4: Kemungkinan Bacaan/ Peningkatan Lebih Lanjut
Video: Pulihkan Modul Bluetooth HC-06 yang Salah Konfigurasi: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Karena maksimalisme murni, saya mengonfigurasi modul HC-06 Bluetooth (slave) saya ke baud rate 1,382, 400 baud dengan perintah AT+BAUDC. Sejak Arduino yang terhubung dengannya tidak dapat menggunakan modul dengan pustaka SoftwareSerial. Saya mencoba mengembalikan baud rate dengan serial perangkat keras Arduino (pin 0 & 1) tanpa hasil.
Saya juga mencoba mencari topik di Google tanpa menemukan solusi yang lumayan. Mungkin menggunakan port serial bawaan komputer bisa menjadi solusi (dengan pergeseran level logika 12V ke 3V3), tetapi komputer saya tidak memiliki port usang ini, jadi saya harus menemukan solusi lain.
Langkah 1: Apa yang Anda Butuhkan
- Papan Arudino/Genuino dengan Atmel ATMEGA328P-PU MCU default (@16MHz).
- Modul Bluetooth HC-06 mendengarkan pada 1,382, 400 baud
- IDE arduino dasar dari
Langkah 2: Solusinya
Harap dicatat bahwa Instruksi ini dan solusinya dibuat untuk skenario 1, 382, 400 baud (AT+BAUDC). Solusinya tidak akan bekerja untuk baud rate lainnya. Untuk menangani kasus lain, silakan lihat langkah-langkah mulai dari Langkah 3.
Solusinya sangat sederhana.
- Hubungkan pin VCC HC-06 ke pin 5V Arduino.
- Hubungkan pin GND HC-06 ke pin GND Arduino.
- Hubungkan pin RXD HC-06 ke pin 2 Arduino.
- Biarkan pin TXD HC-06 tidak terhubung (atau sambungkan ke pin 8).
- Unggah sketsa hc06reset.ino.
- Program akan mengatur HC-06 ke mode 115.200 baud (AT+BAUD8).
- Gunakan modul HC-06 yang dipulihkan seperti sebelumnya.
Langkah 3: Di Balik Layar…
Pustaka SoftwareSerial yang disertakan dengan Arduino IDE mampu mentransmisikan paling banyak 115.200 bit/detik, sehingga tidak cukup cepat untuk berkomunikasi pada kecepatan 1,382.400 baud yang diinginkan. Mengingat bahwa papan Arduino default berjalan pada 16MHz, bitrate maksimum teoretis yang tidak terkompresi adalah 16.000, 000 bit/dtk. Kami baik-baik saja sejauh ini!
Berdasarkan pemahaman saya tentang SoftwareSerial.cpp, komunikasi seial dilakukan dengan mengatur pin keluaran Tinggi (=1) atau Rendah (=0) sehubungan dengan penundaan (yang berasal dari baud rate) antara perubahan.
- Pin output tinggi secara default (berarti tidak ada data), maka
- bit Start ditransmisikan (yang menarik pin rendah), lalu
- 8 bit data ditransmisikan dari LSB ke MSB, (+5V ketika bit 1 dan 0 sebaliknya) maka
- bit Stop ditransmisikan (yang menarik pin tinggi)
Dengan cara ini 1 byte ditransmisikan menggunakan 10 bit.
Pesan yang harus kita kirim adalah AT+BAUD8 (tanpa \n, \r di akhir). Perintah ini mengatur HC-06 kembali ke 115.200 baud rate yang dapat ditangani oleh perpustakaan biasa.
Untuk mengirim bit dengan kecepatan 1,382, 400 bit/detik, untuk setiap bit kita memiliki waktu 1/1, 382, 400 detik (kira-kira 723,38 ns) untuk setiap bit. Arduino berjalan pada 16.000, 000 Mhz, sehingga setiap siklus berlangsung 1/16.000, 000 detik - yaitu 62,5 ns per siklus.
Menggunakan kode perakitan AVR kita dapat menggunakan perintah OUT untuk mengatur pin output tinggi atau rendah dan NOP untuk menunggu tepat satu siklus CPU. Kedua perintah memakan tepat 1 siklus cpu. Dengan cara ini waktu bit 723,38 ns dapat dicakup oleh 11 hingga 12 instruksi arduino per bit yang ditransmisikan. Satu hal yang perlu dipertimbangkan: perintah OUT menetapkan seluruh byte sekaligus, jadi kita harus memilih PORTx di mana ini tidak menjadi masalah. Menggunakan ATMEGA328P-PU misalnya PORTD (arduino pin 0-7) sangat cocok untuk kondisi ini. Setelah mengatur bit, hanya waktu yang tepat yang harus berlalu yang dilakukan oleh 10 hingga 11 NOP dan hanya itu.
Anda dapat menemukan detail perhitungan dalam file Excel di bawah ini. File ini menghasilkan instruksi perakitan yang diperlukan untuk program. Hanya beberapa penggantian yang harus dilakukan setelah menempelkan kode yang dihasilkan.
Langkah 4: Kemungkinan Bacaan/ Peningkatan Lebih Lanjut
- Mungkin perpustakaan SoftwareSerial yang lebih cepat dapat dibuat dengan menggunakan teknik yang dijelaskan pada Langkah sebelumnya.
- FedericoK2 membuat alat hebat yang menghasilkan kode pemulihan HC-06 untuk setiap kemungkinan bitrate. Akses situsnya di sini: https://tools.krum.com.ar/save_your_hc-06/ Terima kasih FedericoK2
Direkomendasikan:
Pulihkan Earphone Bluetooth Anda: 6 Langkah
Pulihkan Earphone Bluetooth Anda: Anda mungkin telah meninggalkan Bluetooth dan earphone kabel yang tergeletak di sekitar karena beberapa masalah kecil. Masalah ini mungkin termasuk rumah earbud yang rusak, kabel internal yang putus, colokan yang rusak, dan lain-lain. Biasanya, perangkat yang rusak ini menumpuk
Konfigurasi Serial HC-05 Melalui Bluetooth: 10 Langkah
Konfigurasi Serial HC-05 Melalui Bluetooth: Saat menggunakan perangkat Android dan modul SPP Bluetooth HC-05 untuk beberapa proyek Arduino, saya ingin memeriksa dan mengubah kecepatan baud HC-05 dan parameter lainnya tanpa menghubungkan ke port USB PC. Itu berubah menjadi ini. Modul HC-05 menghubungkan serial dan Blu
Ring Solar Sign Teardown: Saya Melakukannya Salah Jadi Anda Tidak Perlu: 11 Langkah
Ring Solar Sign Teardown: Saya Melakukannya Salah Jadi Anda Tidak Perlu: Saya mendapat Ring Doorbell, yang cukup mengagumkan. Yay untuk Ring. Kemudian saya mendapatkan kamera Ring Stick-up ketika semua penjualan online sekitar Thanksgiving sedang berlangsung. Diskon $ 50, dan mereka mengirimi saya tanda matahari Cincin yang bagus ini secara GRATIS (hanya nilai $ 49!). saya yakin t
Instal dan Konfigurasi Raspbian di Raspberry Pi: 6 Langkah
Instal dan Konfigurasi Raspbian di Raspberry Pi: Tutorial ini untuk orang yang ingin menginstal Raspbian di Raspberry Pi. Awalnya, tutorial ini ditulis dalam bahasa Portugis di Brasil. Saya mencoba yang terbaik untuk menulisnya dalam bahasa Inggris. Jadi maafkan saya untuk beberapa kesalahan yang mungkin ada dalam penulisan. Instruksi ini
Pulihkan KUNCI CD XP: 4 Langkah
Recover XP CD KEY: Tidakkah Anda benci ketika Anda harus memformat ulang hard drive Anda atau ketika rusak? Anda mungkin berpikir "Saya akan menginstal ulang" dan menyadari !@#$ saya kehilangan stiker dengan kunci cd saya, atau anak-anak merobeknya, atau stiker di bagian atas desktop Anda