#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C LCD(0x27,16,2);
int ROJO=13;
int VERDE=8;
int AZUL=7;
int PR=A0;
int PV=A1;
int PA=A2;
void setup() {
LCD.init();
LCD.backlight();
LCD.setCursor(0,0);
LCD.print ("Rojo Verde Azul");
pinMode(ROJO, OUTPUT);
pinMode(VERDE, OUTPUT);
pinMode(AZUL, OUTPUT);
pinMode(PR, INPUT);
pinMode(PV, INPUT);
pinMode(PA, INPUT);
setColor(255,0,0);
delay(1000);
}
void loop()
{
int VR=analogRead(PR);
int VV=analogRead(PV);
int VA=analogRead(PA);
int ValorR=map(VR,0,1023,0,255);
int ValorV=map(VV,0,1023,0,255);
int ValorA=map(VA,0,1023,0,255);
setColor(ValorR,ValorV,ValorA);
String XR=String(ValorR);
String XV=String(ValorV);
String XA=String(ValorA);
switch (XR.length())
{
case 1:
XR=" " + XR;
break;
case 2:
XR=" " + XR;
break;
}
switch (XV.length())
{
case 1:
XV=" " + XV;
break;
case 2:
XV=" " + XV;
break;
}
switch (XA.length())
{
case 1:
XA=" " + XA;
break;
case 2:
XA=" " + XA;
break;
}
LCD.setCursor(1,1);
LCD.print(XR);
LCD.setCursor(6,1);
LCD.print(XV);
LCD.setCursor(11,1);
LCD.print(XA);
/*
for (int r=0;r<=255;r=r+5)
{
String rr=String(r);
if (rr.length()==1)
{
rr=" " + rr;
}
if (rr.length()==2)
{
rr=" " + rr;
}
LCD.setCursor(1,1);
LCD.print(rr);
for (int v=0;v<=1023;v=v+5)
{
String vv=String(v);
if (vv.length()==1)
{
vv=" " + vv;
}
if (vv.length()==2)
{
vv=" " + vv;
}
LCD.setCursor(6,1);
LCD.print(vv);
for (int a=0;a<=255;a=a+5)
{
String aa=String(a);
if (aa.length()==1)
{
aa=" " + aa;
}
if (aa.length()==2)
{
aa=" " + aa;
}
LCD.setCursor(12,1);
LCD.print(aa);
setColor(r,v,a);
delay(10);
}
}
}
*/
}
void setColor(int r, int v, int a)
{
analogWrite(ROJO, r);
analogWrite(VERDE, v);
analogWrite(AZUL, a);
}