Papan Arduino kompatibel apa pun dengan IC ATMega 32u4 akan cukup. (seperti Leonardo/Pro Micro)
×
1
Modul Bluetooth HC-05
×
1
Papan Rotan (umum)
×
1
Kabel Jumper (umum)
×
1
Kabel USB-A ke Micro-USB
×
1
Perangkat Android
×
1
Aplikasi dan Layanan Online
Aplikasi
Keterangan
Arduino IDE
Atau Anda dapat menggunakan Arduino Web Editor dengan Arduino Create Agent
Arduino Bluetooth Controller
Aplikasi dapat diunduh dari Google Play Store atau App Store.
Tentang Proyek Ini
Ini adalah proyek pertama saya di Hackster dan tentang mengurangi repot menyalin beberapa teks dari satu perangkat yang harus ditempelkan di perangkat lain. Saya terkadang mengirim email atau teks kepada diri sendiri apa yang ingin saya tempel lalu membuka email atau Facebook untuk menyalin teks itu. Meskipun Google sekarang menawarkan layanan tempat Anda dapat menempelkan di desktop Anda jika Anda memiliki Chrome dan akun Google, saya ingin menciptakan solusi secara keseluruhan yang akan bekerja di seluruh perangkat (dan sebagian besar karena saya suka bermain-main dengan Arduino dan ingin menciptakan proyek yang sederhana namun berguna untuk semua). Proyek ini cukup mudah dan dapat dibuat oleh siapa pun, bahkan jika Anda belum pernah menggunakan Arduino sebelumnya. Jadi jika Anda merasa telah menghadapi masalah ini, silakan mencoba proyek ini sendiri. Saya telah menjelaskan setiap hal yang diperlukan untuk memahami proyek ini.
Langkah Satu: Bagian yang Diperlukan
Untuk proyek ini, saya akan menggunakan Arduino Micro tetapi Anda dapat menggunakan papan Arduino kompatibel apa pun dengan ATmega32u4 sebagai prosesor utama, karena mampu bertindak sebagai Human Interface Device(HID); dalam hal ini, keyboard. Saya belum menguji proyek ini pada prosesor lain seperti Microchip's SAMD21 dan SAMD51.
Anda juga akan membutuhkan papan rotan dan beberapa kabel jumper, modul bluetooth HC-05 dan kabel micro USB type B untuk memprogram papan Arduino Anda.
Selain bagian-bagian ini, Anda jelas membutuhkan laptop dan ponsel pintar untuk menguji proyek Anda.
Langkah Dua: Diagram Sirkuit
Kami akan menggunakan Komunikasi Serial untuk menghubungkan Arduino Micro ke modul HC-05. Terdapat dua port komunikasi yang tersedia pada Arduino; Serial interface dicadangkan untuk komunikasi antara komputer Anda (Serial Monitor), jadi, kami akan menggunakan Serial1 interface untuk berkomunikasi antara Arduino dan modul HC-05. Koneksinya cukup sederhana:
RX dari HC-05 pergi ke TX dari Arduino Micro
TX dari HC-05 pergi ke RX dari Arduino Micro
GND dari HC-05 pergi ke GND dari Arduino Micro
VCC dari HC-05 pergi ke +5V dari Arduino Micro
Kami tidak akan menggunakan pin Key dan State dari HC-05.
Setelah koneksi, bangunan Anda harus terlihat seperti ini :
Langkah Tiga: Memahami Kode
/* Project Name : Text Teleporter * Receives some text in String format via bluetooth from one device and types (pastes) it into another device. * For : Arduino Micro/Leonardo/Due/Pro Micro (ATMega 32U4) * Author : Advik Singhania * Created On : 11th October, 2020; 11:23 AM IST */
//Keyboard header file for Arduino to take //control of the keyboard and paste the string #include "Keyboard.h"
void setup() { // Open the serial port for bluetooth: Serial1.begin(9600); // Initialize control for the keyboard: Keyboard.begin(); }
void loop() { // Check for incoming serial data: if (Serial1.available() > 0) { // Read incoming serial data: String a = Serial1.readString(); // Type the text: Keyboard.print(a); } delay(10); // Delay of 10 milliseconds }
Pertama, kita perlu memberi tahu compiler bahwa kita akan menggunakan file header Keyboard.h dari library untuk menggunakan fungsi HID yang tersedia untuk Arduino Micro. Compiler menghubungkan file header ini dengan program kita dan mengunggahnya ke papan.
Dalam fungsi default setup(), kita memulai proses untuk membuka port serial untuk menghubungkan ke modul. 9600 adalah baud rate default; kecepatan transmisi data yang digunakan oleh modul bluetooth HC-05. Kemudian inisialisasi Keyboard untuk digunakan. Cukup jelas sendiri. Blok ini akan dieksekusi sekali dan dapat dieksekusi ulang dengan menekan tombol reset pada Arduino.
Fungsi loop() akan terus mengulangi kode di dalamnya dan oleh karena itu kita dapat mengirim sejumlah teks yang ingin kita tempel berapa kali pun. Jika Arduino mendeteksi bahwa ada koneksi dan data siap dikirim melalui antarmuka Serial1, kita mendeklarasikan variabel a dengan tipe data String untuk menyimpan teks yang dikirim ke Serial1 (bluetooth) sebagai string dan menggunakan fungsi Keyboard.print() untuk mengambil kontrol keyboard dan mengetik String a (teks yang disalin). Kondisi if dapat bekerja tanpa kebutuhan blok else dan kita tidak perlu menulis apa pun jika kondisi gagal jadi itulah dan tidak ada yang rusak.
Kode ini juga tersedia di repositori GitHub saya di sini, jadi Anda dipersilakan untuk melakukan perubahan apa pun jika ada. Setelah menulis kode, pastikan Anda telah memilih Board dan Port yang benar dari menu tools lalu klik upload (Lepaskan kabel RX dan TX HC-05 sebelum mengunggah).
Langkah Empat: Mengonfigurasi Semuanya
Setelah mengunggah kode, sambungkan kembali kabel RX dan TX. Pergi ke pengaturan bluetooth ponsel Anda dan periksa apakah daftar pemindaian menunjukkan HC-05. Mengetuknya akan meminta kata sandi, yang secara default adalah 1234.
Setelah koneksi berhasil, Anda perlu menginstal aplikasi ini atau klien bluetooth lain yang dapat memberikan mode terminal:
Aplikasi akan meminta Anda untuk menyalakan bluetooth jika belum menyala, ketuk Ya/Izin. Kemudian akan menunjukkan 2 daftar: Hubungkan ke perangkat dan Perangkat yang tersedia. HC-05 Anda harus tercantum di bawah daftar pertama. Ketuk itu dan di bawah opsi Hubungkan dalam, klik Terminal mode. Jika berhasil, Anda harus melihat kotak mengetik perintah, tempat Anda dapat menempelkan teks yang disalin.
Anda juga dapat menggunakan aplikasi Bluetooth Serial Controller oleh NEXT PROTOTYPES. Di sini, Anda perlu klik tombol CONNECT di pojok kanan atas dan temukan HC-05. Antarmuka default adalah landscape dengan banyak tombol dan kotak terminal kecil untuk memasukkan teks Anda. Perhatikan bahwa Anda perlu ketuk tombol x di pojok kiri bawah setelah mengirim teks Anda jika ingin mengetik sesuatu yang baru.
Pastikan untuk membuka notepad atau memindahkan kursor tempat Anda ingin menempelkan teks sebelum menekan enter. Teks akan diketik pada layar. Penting untuk dicatat di sini bahwa Arduino mengambil kontrol keyboard Anda dan tidak akan membiarkan Anda mengetik apa pun lagi saat sedang bekerja.
Langkah Lima: Selesai. Apa Selanjutnya?
Jika Anda telah membuat proyek ini dan ingin membuatnya permanen, Anda dapat memolotnya ke PCB dengan modul bluetooth dan menyimpannya sebagai perangkat buatan sendiri untuk situasi di mana dapat berguna. Meskipun, ini juga memiliki beberapa penggunaan berbahaya seperti mengetik beberapa perintah di CMD yang dapat berbahaya. Oleh karena itu, waspadalah. Jika Anda memiliki kabel OTG Anda dapat menghubungkan kabel USB Arduino ke ponsel Anda dan itu akan bekerja sama. Terima kasih telah meluangkan waktu dan membuat proyek ini. Silakan berikan komentar di bawah masukan Anda dan tanyakan keraguan Anda jika ada. Saya akan mencoba menjawab sebanyak mungkin.
Kode
Text Teleporter Code
Text Teleporter CodeArduino
Salin kode di Arduino IDE. Periksa apakah Anda telah memilih board dan port yang benar dari menu Tools dan klik Upload.
/* Project Name : Text Teleporter * Receives some text in String format via bluetooth from one device and types (pastes) it into another device. * For : Arduino Micro/Leonardo/Due/Pro Micro (ATMega 32U4) * Author : Advik Singhania * Created On : 11th October, 2020; 11:23 AM IST */ //Keyboard header file for Arduino to take //control of the keyboard and paste the string #include "Keyboard.h" void setup() { // Open the serial port for bluetooth: Serial1.begin(9600); // Initialize control for the keyboard: Keyboard.begin(); } void loop() { // Check for incoming serial data: if (Serial1.available() > 0) { // Read incoming serial data: String a = Serial1.readString(); // Type the text: Keyboard.print(a); } delay(10); // Delay of 10 milliseconds }