สอบแก้
Arduino Home Bluetooth
Hardware
MCU = Arduino UNO R3
OUTPUT = relay 4 ch, หลอดไฟ 4 ดวง
INPUT = HC - 05 Bluetooh Module
Software
code
#include <SoftwareSerial.h> //การเรียกใช้ไรบรารี้
const int rxPin = 4; //กำหนด rxPin = 4
const int txPin = 2; //กำหนด txPin = 2
SoftwareSerial mySerial(rxPin, txPin); //กำหนดขาของ RX และ TX
const int Loads[] = {9, 10, 11, 12}; //กำหนดตัวแปลแบบอะเลย์
int state = 0; //กำหนด state = 0
int flag = 0; //กำหนด flag = 0
void setup()
{
for (int i=0;i<4;i++)
{
pinMode(Loads[i], OUTPUT); //สร้าง Output แบบวนลูบจงกว่าจะครบ 4 คร้งโดยใช้ For
}
mySerial.begin(9600); //ตั้งค่าเริ่มต้นของ mySerial
for (int i=0;i<4;i++)
{
digitalWrite(Loads[i], LOW); // กำหนดให้ D9 D10 D11 D12 = LOW โดยใช้วิธีวงลูป For
}
}
void loop()
{
if(mySerial.available() > 0)
{
state = mySerial.read(); //ถ้าบลูทูธมีการส่งค่า > 0 ให้ state = mySerial.read() เก็บค่า
flag=0; //กำหนดค่า flag = 0
}
switch(state) //ตรวจสอบค่า state
{
case '0':digitalWrite(Loads[0], HIGH); //ถ้า = 0 สั่ง D9 = HIGH
flag=1;
break; //break ถ้ายังเป็นจริงให้หลุดออกลูป
case '1':digitalWrite(Loads[0], LOW); //ถ้า = 1 สั่ง D9 = LOW
flag=1;
break;
case '2':digitalWrite(Loads[1], HIGH); //ถ้า = 2 สั่ง D10 = HIGH
flag=1;
break;
case '3':digitalWrite(Loads[1], LOW); //ถ้า = 3 สั่ง D10 = LOW
flag=1;
break;
case '4':digitalWrite(Loads[2], HIGH); //ถ้า = 4 สั่ง D11 = HIGH
flag=1;
break;
case '5':digitalWrite(Loads[2], LOW); //ถ้า = 5 สั่ง D11 = LOW
flag=1;
break;
case '6':digitalWrite(Loads[3], HIGH); //ถ้า = 6 สั่ง D12 = HIGH
flag=1;
break;
case '7':digitalWrite(Loads[3], LOW); //ถ้า = 7 สั่ง D12 = LOW
flag=1;
break;
case '8':digitalWrite(Loads[0], LOW); //ถ้า = 8 สั่ง D9 = LOW
digitalWrite(Loads[1], LOW); D10 = LOW
digitalWrite(Loads[2], LOW); D11 = LOW
digitalWrite(Loads[3], LOW); D12 = LOW
flag=1;
break;
}
}
การทำงาน
เมื่อกด LOAD 1 NO ทำให้หลอดไฟด้วยที่ 1 ดิ เมื่อกด LOAD 1 OFF ทำให้หลอดไฟดวงที่ 1 ปิดเมื่อกด All LOADS OFF ทำใหนหลอดไฟดวงที่ 1-4 ดับลง
App Bluetooth Contreller
ทำการเชื่อมต่อ HC - 05 รหัส 1234 เมื่อเชื่อมต่อเส็จในตั้งค่าดังรูป
พร้องใช้งาน
Flowchart
ความคิดเห็น
แสดงความคิดเห็น