#include /* * Define the RX and TX pins. Choose any two * pins that are unused. Try to avoid D0 (pin 5) * and D2 (pin 7) if you plan to use I2C. */ #define RX 8 // For ColorTimer = 0 // For beaver board = 1 // For Master = 8 #define TX 7 // For ColorTimer = 1 // For beaver board = 0 // For Master = 7 /* * Define the software based serial port. Using the * name Serial so that code can be used on other * platforms that support hardware based serial. On * chips that support the hardware serial, just * comment this line. */ SoftwareSerial Serial(RX,TX); // Set the color of the LED [ Color Timer 2 = blue, 3 = green, 8 = red] [ Color Timer 1 = blue, 2 = green, 3 = red] int LED_R_PIN = 2; int LED_G_PIN = 3; int LED_B_PIN = 0; void setup() { // Set pin mode (Input/Output) pinMode(LED_R_PIN,OUTPUT); pinMode(LED_G_PIN,OUTPUT); pinMode(LED_B_PIN,OUTPUT); // Set everything off digitalWrite(LED_R_PIN,HIGH); digitalWrite(LED_G_PIN,HIGH); digitalWrite(LED_B_PIN,HIGH); // Start serial communication Serial.begin(9600); //Sets the data rate in bits per second (baud) for serial data transmission Serial.println("Initializing..."); } void loop() { if(Serial.available()){ // If data is available char val = Serial.read(); if(val == 'r'){ // If red received digitalWrite(LED_R_PIN,LOW); digitalWrite(LED_G_PIN,HIGH); digitalWrite(LED_B_PIN,HIGH); } if(val == 'g'){ // If green received digitalWrite(LED_R_PIN,HIGH); digitalWrite(LED_G_PIN,LOW); digitalWrite(LED_B_PIN,HIGH); } if(val == 'b'){ // If blue received digitalWrite(LED_R_PIN,HIGH); digitalWrite(LED_G_PIN,HIGH); digitalWrite(LED_B_PIN,LOW); } } }