راهنمای راهاندازی ماژول بلوتوث HC-05 با استفاده از Arduino

در این پست از بلاگ بنو الکترونیک قصد داریم شیوهی راهاندازی ماژول بلوتوث HC-05 را با استفاده از Arduino آموزش دهیم.
1. معرفی
بلوتوث یک استاندارد تکنولوژی بیسیم است که برای مبادله داده در فاصلههای کوتاه (با استفاده از امواج رادیویی UHF با طول موج کوتاه در باند ISM از 2.4 تا 2.485 گیگاهرتز) از دستگاههای ثابت و متحرک استفاده میشود. این محدودهی مبادله داده حدود 10 متر است.
مشخصات فنی | |
2.45Ghz | Frequency |
2.1Mbps (max) .160Kbps | Asynchronous Speed |
Authentication | Security |
Bluetooth Serial Port | Profile |
+3.3 VDc | Power Supply |
>20C | Working Temperature |
2. دستورالعمل پینها
ماژول بلوتوث HC-05 دارای 6 پین خروجی است که طبق جدول زیر مورد استفاده قرار میگیرند:
دستورالعمل | پین |
If brought HIGH before power is applied, forces AT Command Setup Mode. LED blinks slowly (2 seconds) | "key" |
Power:3.6v~6V | "Vcc" |
Gnd | "Gnd" |
Transmit Serial Data from HC-05 to Arduino Serial Receive. NOTE: 3.3V HIGH level: OK for Arduino | "TXD" |
Receive Serial Data from Arduino Serial Transmit | "RXD" |
Tells if connected or not | "STATE" |
3. نمونه اتصال
در تصویر زیر نمونهی اتصال ماژول بلوتوث HC-05 به آردوینو را مشاهده میکنیم:
قبل از اینکه HC-05 را به کامپیوتر خود وصل کنید به یک ترمینال نیاز دارید تا پورت COM را مانیتور کنید.
4. نمونه کد
در ادامه نمونه کدی قرار داده شدهاست که به وسیله آن میتوانید LED متصل به D13 را به گونهای کنترل کنید که چشمک بزند. با فشار دادن شماره 1 روی کیبورد کامپیوتر LED روشن و با فشردن شماره 0 خاموش میگردد.
شروع کد
// This program shown how to control arduino from PC Via Bluetooth
// Connect ...
// arduino>>bluetooth
// D11 >>> Rx
// D10 >>> Tx
// you will need arduino 1.0.1 or higher to run this sketch
#include <SoftwareSerial.h>// import the serial library
SoftwareSerial Genotronex(10, 11); // RX, TX
int ledpin=13; // led on D13 will show blink on / off
int BluetoothData; // the data given from Computer
void setup() {
// put your setup code here, to run once:
Genotronex.begin(9600);
Genotronex.println("Bluetooth On please press 1 or 0 blink LED ..");
pinMode(ledpin,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if (Genotronex.available()){
BluetoothData=Genotronex.read();
if(BluetoothData=='1'){ // if number 1 pressed ....
digitalWrite(ledpin,1);
Genotronex.println("LED On D13 ON ! ");
}
if (BluetoothData=='0'){// if number 0 pressed ....
digitalWrite(ledpin,0);
Genotronex.println("LED On D13 Off ! ");
}
}
delay(100);// prepare for next data ...
}
اتمام کد
نظرات بازدیدکنندگان