/* Blink Turns an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to the correct LED pin independent of which board is used. If you want to know what pin the on-board LED is connected to on your Arduino model, check the Technical Specs of your board at: https://www.arduino.cc/en/Main/Products modified 8 May 2014 by Scott Fitzgerald modified 2 Sep 2016 by Arturo Guadalupi modified 8 Sep 2016 by Colby Newman This example code is in the public domain. https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink */ const int ledPin = 6; // define the pin for the pushbutton const int buttonPin = 7; // define the pin for the trimmer/potentiometer const int pot = 0; // define the RGB LED pins const int ledPinR = 8; const int ledPinB = 9; const int ledPinG = 10; // Define the initial color values int redValue = 255; int greenValue = 0; int blueValue = 0; // define an initial trimmer/potentiometer value int potValue = 0; // Define a variable to store the button state int buttonState = 0; int lastButtonState = 0; // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(ledPin, OUTPUT); pinMode(ledPinR, OUTPUT); pinMode(ledPinB, OUTPUT); pinMode(ledPinG, OUTPUT); pinMode(buttonPin, INPUT); } // the loop function runs over and over again forever void loop() { // Read the state of the pushbutton buttonState = digitalRead(buttonPin); // Check if the button is pressed if (buttonState != lastButtonState && buttonState == HIGH) { // Change the color when the button is pressed changeColor(); } // Save the current button state for the next iteration lastButtonState = buttonState; } void changeColor() { // Generate random color values redValue = random(256); greenValue = random(256); blueValue = random(256); // Write the color values to the RGB LED pins analogWrite(ledPinR, redValue); analogWrite(ledPinG, greenValue); analogWrite(ledPinB, blueValue); // Delay for debounce (optional) delay(100); } // int button1check = digitalRead(button1); // if (button1check == HIGH) // { // digitalWrite(ledPinR, HIGH); // digitalWrite(ledPinB, HIGH); // digitalWrite(ledPinG, HIGH); // } // else { // digitalWrite(ledPinR, HIGH); // digitalWrite(ledPinB, HIGH); // digitalWrite(ledPinG, LOW); // digitalWrite(ledPin, HIGH); // turn the LED on (HIGH is the voltage level) // delay(1000); // wait for a second // digitalWrite(ledPin, LOW); // turn the LED off by making the voltage LOW // delay(1000); // wait for a second