Hardware
1.Arduino uno r32.bluetooth hc 063.1N40074.2N22225.relay6.load
INPUT
1.bluetooth hc 06
OUTPUT
1.relay
2.load
2.load
SOFTWARE
#include <SoftwareSerial.h> เรียกใช้Library bluetooth
const int rxPin = 4; Rx PIN ใช้ขา4
const int txPin = 2; TX PIN ใช้ขา2
SoftwareSerial mySerial(rxPin, txPin); กำหนดค่าลงใน Library bluetooth
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++) ถ้า I เท่ากับ0และน้อยกว่า4 ให้ i+ไปเรื่อยๆ
{
pinMode(Loads[i], OUTPUT); กำหนดให้ Load I เป็น OUTPUT
}
mySerial.begin(9600); แสดงค่า ออกทาง SERIAL MONITER 9600
for (int i=0;i<4;i++) ถ้า I เท่ากับ0และน้อยกว่า 4 ให้ i+ไปเรื่อยๆ
{
digitalWrite(Loads[i], LOW); ให้Load iเป็นสถานะ LOW
}
}
void loop()
{
if(mySerial.available() > 0) ถ้า mySerial.available() มากกว่า 0
{
state = mySerial.read(); state มีค่าเท่ากับ mySerial.available()
flag=0; ให้ flag มีค่าเป็น 0
}
{
case '0':digitalWrite(Loads[0], HIGH); case 0 แสดงค่า Load 0 เป็น High
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '1':digitalWrite(Loads[0], LOW); case 1 แสดงค่า Load 0 เป็น Low
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '2':digitalWrite(Loads[1], HIGH); case 2 แสดงค่า Load 1 เป็น High
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '3':digitalWrite(Loads[1], LOW); case 3 แสดงค่า Load 1 เป็น Low
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '4':digitalWrite(Loads[2], HIGH); case 4 แสดงค่า Load 2 เป็น High
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '5':digitalWrite(Loads[2], LOW); case 5 แสดงค่า Load 2 เป็น Low
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '6':digitalWrite(Loads[3], HIGH); case 6 แสดงค่า Load 3 เป็น High
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '7':digitalWrite(Loads[3], LOW); case 7 แสดงค่า Load 3 เป็น Low
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
case '8':digitalWrite(Loads[0], LOW); case 8 แสดงค่า Load 0 เป็น Low
digitalWrite(Loads[1], LOW); แสดงค่า Load 1 เป็น สถานะ Low
digitalWrite(Loads[2], LOW); แสดงค่า Load 2 เป็น สถานะ Low
digitalWrite(Loads[3], LOW); แสดงค่า Load 3 เป็น สถานะ Low
flag=1; flag เท่ากับ 1
break; หยุดการทำงาน
}
}