Devices & Components
Arduino Nano
MDF 3.00mm
Jumpers for protoboard
10kOhm potentiometer
Arduino Compatible RGB LED Module
Mini breadboard - White
USB Power Bank (Generic)
Hardware & Tools
drill
Soldering iron (generic)
Software & Tools
Arduino IDE
Project description
Code
3POTRGB
cpp
Simple sentences for analog inputs
1const int redControl = A0; 2const int greenControl = A1; 3const int blueControl = A2; 4 5int ledRojo = 3; //Declara Pin LED Rojo 6int ledVerde=5; //Declara Pin LED Verde 7int ledAzul=6; //Declara Pin LED Azul 8 9int pinPot0 = A0; //Declara Pin Potenciometro Rojo 10int pinPot1 = A1; //Declara Pin Potenciometro Verde 11int pinPot2 = A2; //Declara Pin Potenciometro Azul 12 13int valorsensor0 = 0; //Valores analogicos de salida del potenciometro 14int valorsensor1 = 0; // || || || || 15int valorsensor2 = 0; // || || || || 16 17float divisionR; 18float divisionV; 19float divisionA; 20 21//------------------------------------ 22 23void setup() // Se ejecuta cada vez que el Arduino se inicia 24{ 25 pinMode(ledRojo,OUTPUT); //El LED Rojo como una salida 26 pinMode(ledVerde,OUTPUT); //El LED Verde como una salida 27 pinMode(ledAzul,OUTPUT); //El LED Azul como una salida 28 Serial.begin(9600); 29 30} 31 32//------------------------------------ 33 34void loop() { 35 36 // Llamada a la función Color que recibe 37 // 1er posicion: Intensidad Rojo 38 // 2da posición: Intensidad Verde 39 // 3ra posición: Intensidad Azul 40 41 float Constante = (float) 255 / 1023; //Divide el máximo valor de color entre el máximo valor del potenciómetro 42 43 valorsensor0 = analogRead(pinPot0); 44 valorsensor1 = analogRead(pinPot1); 45 valorsensor2 = analogRead(pinPot2); 46 47 divisionR = Constante * valorsensor0; 48 divisionV = Constante * valorsensor1; 49 divisionA = Constante * valorsensor2; 50 51 color(divisionR,divisionV,divisionA); // Carga un valor para (ROJO,VERDE,AZUL) 52 //segun el valor de tres potenciómetros. 53 54} 55 56//------------------------------------ 57//Funcion color 58//------------------------------------ 59 60void color(int rojo, int verde, int azul){ 61 62 //ROJO. Le resta al total (255) el valor obtenido de los potenciometros 63 analogWrite(ledRojo, 255-rojo); 64 65 //VERDE. Le resta al total (255) el valor obtenido de los potenciometros 66 analogWrite(ledVerde, 255-verde); 67 68 //AZUL. Le resta al total (255) el valor obtenido de los potenciometros 69 analogWrite(ledAzul, 255-azul); 70}
Downloadable files
Schematic
Simulated schematic with Arduino UNO, Similar conn
Esquema.jpg

Comments
Only logged in users can leave comments