4 Channel Relay Board-Bluetooth
/*
Software serial multple serial test
Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.
The circuit:
* RX is digital pin 10 (connect to TX of other device)
* TX is digital pin 11 (connect to RX of other device)
Note:
Not all pins on the Mega and Mega 2560 support change interrupts,
so only the following can be used for RX:
10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69
Not all pins on the Leonardo support change interrupts,
so only the following can be used for RX:
8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).
/*
Software serial multple serial test
Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.
The circuit:
* RX is digital pin 2 (connect to TX of other device)
* TX is digital pin 3 (connect to RX of other device)
SENDING DATA FORMAT
1N TO ON RELAY1
1F TO OFF RELAY1
2N TO ON RELAY2
2F TO OFF RELAY2
3N TO ON RELAY3
3F TO OFF RELAY3
4N TO ON RELAY4
4F TO OFF RELAY4
This example code is in the public domain.
*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3); // RX, TX
int rec;
void setup()
{
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
mySerial.begin(9600);
}
void loop() // run over and over
{
while(!mySerial.available());
rec=mySerial.read();
if(rec=='1')
{
while(!mySerial.available());
rec=mySerial.read();
if(rec=='N')
digitalWrite(4, HIGH);
else if(rec=='F')
digitalWrite(4, LOW);
}
else if(rec=='2')
{
while(!mySerial.available());
rec=mySerial.read();
if(rec=='N')
digitalWrite(5, HIGH);
else if(rec=='F')
digitalWrite(5, LOW);
}
else if(rec=='3')
{
while(!mySerial.available());
rec=mySerial.read();
if(rec=='N')
digitalWrite(6, HIGH);
else if(rec=='F')
digitalWrite(6, LOW);
}
else if(rec=='4')
{
while(!mySerial.available());
rec=mySerial.read();
if(rec=='N')
digitalWrite(7, HIGH);
else if(rec=='F')
digitalWrite(7, LOW);
} //
}