Skip to content

Instantly share code, notes, and snippets.

@esperienzeelettroniche
Created March 8, 2022 18:57
Show Gist options
  • Save esperienzeelettroniche/cc550b138c867e0aa3e546c2c1a8f41f to your computer and use it in GitHub Desktop.
Save esperienzeelettroniche/cc550b138c867e0aa3e546c2c1a8f41f to your computer and use it in GitHub Desktop.
/******************************************
* Control 3 LEDs using bluetooth *
* EsperienzeElettroniche 2022 *
******************************************/
#include <SoftwareSerial.h>
/* Pins used for software serial connection */
#define rxPin 2
#define txPin 3
/* Pins used for LEDs */
#define ledA 4
#define ledB 5
#define ledC 6
/* Bluetooth / Serial connection speed */
#define baudrate 57600
/* Initalize software-emulated serial port (Bluetooth module) */
SoftwareSerial bt(rxPin, txPin);
char data;
void setup() {
pinMode(ledA, OUTPUT);
pinMode(ledB, OUTPUT);
pinMode(ledC, OUTPUT);
bt.begin(baudrate);
Serial.begin(baudrate);
}
void loop() {
/* Wait for Bluetooth or serial data */
while(!bt.available() && !Serial.available())
;
if(bt.available())
data=bt.read();
else
data=Serial.read();
/* Use received character to turn corresponding LED on or off */
switch(data){
case 'A':
digitalWrite(ledA, 1);
break;
case 'a':
digitalWrite(ledA, 0);
break;
case 'B':
digitalWrite(ledB, 1);
break;
case 'b':
digitalWrite(ledB, 0);
break;
case 'C':
digitalWrite(ledC, 1);
break;
case 'c':
digitalWrite(ledC, 0);
break;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment