// Encabezado
// UTFT, Utouch, UTFT_Geometry
// (C)2013 Henning Karlsen
// web: http://www.henningkarlsen.com/electronics
// librerías
#include <UTFT.h>
#include <UTouch.h>
#include <UTFT_Geometry.h>
#include <SPI.h>
#include <SD.h>
// Comunicación mediante el pinout del hardware específico
// UTFT myGLCD(2,38,39,40,41); // HY32D
UTFT myGLCD(5,38,39,40,41); // TFT 2.8" ILI9325D
UTouch myTouch( 6, 5, 4, 3, 2);
UTFT_Geometry geo(&myGLCD);
// Fuentes para presentar texto y valores en pantalla
extern uint8_t BigFont[];
extern uint8_t SmallFont[];
// Definición de variables, perfil 0
int R = 0; //color rojo
int R1 =0;
int G = 0; //color verde
int G1=0;
int B = 0; //color azul
int Azul=0;
//Variable de control de la velocidad del ventilador: Fan 1
int T=0;
int T1=T;
// leds RGB
int Rled = 8; //Rojo
int Gled = 9; //Verde
int Bled = 10; //Azul
// Fan 1, PWM-Due
int PWMFan1 = 11;
int PorcFan1;
// control de posición bidimensional de la pantalla táctil
int x, y;
/*************************
** Funciones **
*************************/
// Barra de slider horizontal
void BarraSliderHRojo()
{
// Canal Rojo
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,150,20);
myGLCD.setColor(255,0,0);
myGLCD.drawRect(19,10,150,20);
myGLCD.setColor(R,0,0);
}
void BarraSliderHVerde()
{
// Canal Verde
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,150,40);
myGLCD.setColor(0,255,0);
myGLCD.drawRect(19,30,150,40);
myGLCD.setColor(0,G,0);
}
void BarraSliderHAzul()
{
// Canal Azul
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,150,60);
myGLCD.setColor(0,0,255);
myGLCD.drawRect(19,50,150,60);
myGLCD.setColor(0,0,B);
}
void BarraSliderBTFT()
{
// Control del brillo de la retroilumincación del TFT
myGLCD.setColor(0,0,175);
myGLCD.fillRect(290,79,300,200);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(290,79,300,200);
}
void botonSliRojo()
{
myGLCD.setColor(R,0,0);
myGLCD.fillRect(x,10,x+10,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(x,10,x+10,20);
}
void botonSliVerde()
{
myGLCD.setColor(0,G,0);
myGLCD.fillRect(x,30,x+10,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(x,30,x+10,40);
}
void botonSliAzul()
{
myGLCD.setColor(0,0,B);
myGLCD.fillRect(x,50,x+10,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(x,50,x+10,60);
}
void botonSliBTFT()
{
myGLCD.setColor(0,255,0);
myGLCD.fillRect(290,y,300,y+10);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(290,y,300,y+10);
}
void ledR()
{
analogWrite(Rled, R);
// delay(10);
}
void ledG()
{
analogWrite(Gled, G);
// delay(10);
}
void ledB()
{
analogWrite(Bled, B);
// delay(10);
}
//Renombrar la variable
void Fan1()
{
analogWrite(PWMFan1, T);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(99,64,145,75);
myGLCD.setColor(0,255,0);
// myGLCD.printNumI(T, 100, 65);
myGLCD.printNumI(PorcFan1, 100, 65);
}
void Panelprincipal()
{
myGLCD.setColor(R1,G1,Azul);
myGLCD.fillRect(15, 80, 195, 200);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(15, 80, 195, 200);
// Botón de limpieza del panel principal
myGLCD.setColor(R1,G1,Azul);
myGLCD.fillRect(200, 80, 220, 105);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(200, 80, 220, 105);
// Gráfica RGB
//Color actual RGB
myGLCD.setColor(R1,G1,Azul);
myGLCD.fillRect(300, 10, 310, 20);
//Marco exterior
myGLCD.setColor(0,0,0);
myGLCD.fillRect(210, 10, 300, 60);
// myGLCD.setColor(0,50,0);
myGLCD.setColor(80,0,100);
myGLCD.drawRect(210, 10, 300, 60);
//Divisores horizontales
myGLCD.drawLine(210, 15, 300, 15);
myGLCD.drawLine(210, 20, 300, 20);
myGLCD.drawLine(210, 25, 300, 25);
myGLCD.drawLine(210, 30, 300, 30);
myGLCD.drawLine(210, 35, 300, 35);
myGLCD.drawLine(210, 40, 300, 40);
myGLCD.drawLine(210, 45, 300, 45);
myGLCD.drawLine(210, 50, 300, 50);
myGLCD.drawLine(210, 55, 300, 55);
//Divisores verticales
// myGLCD.setColor(0,30,0);
myGLCD.drawLine(215, 10, 215, 60);
myGLCD.drawLine(220, 10, 220, 60);
myGLCD.drawLine(225, 10, 225, 60);
myGLCD.drawLine(230, 10, 230, 60);
myGLCD.drawLine(235, 10, 235, 60);
myGLCD.drawLine(240, 10, 240, 60);
myGLCD.drawLine(245, 10, 245, 60);
myGLCD.drawLine(250, 10, 250, 60);
myGLCD.drawLine(255, 10, 255, 60);
myGLCD.drawLine(260, 10, 260, 60);
myGLCD.drawLine(265, 10, 265, 60);
myGLCD.drawLine(270, 10, 270, 60);
myGLCD.drawLine(275, 10, 275, 60);
myGLCD.drawLine(280, 10, 280, 60);
myGLCD.drawLine(285, 10, 285, 60);
myGLCD.drawLine(290, 10, 290, 60);
myGLCD.drawLine(295, 10, 295, 60);
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
void BotonReset()
{
myGLCD.setColor(0,0,0);
myGLCD.fillRect(160,10,195,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(160,10,195,60);
}
//Colores de referencia
void coloresRef()
{
//Color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(230, 80, 280, 90);
myGLCD.setColor(255,0,0);
myGLCD.drawRect(230, 80, 280, 90);
//Color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(230, 95, 280, 105);
myGLCD.setColor(0,255,0);
myGLCD.drawRect(230, 95, 280, 105);
//Color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(230, 110, 280, 120);
myGLCD.setColor(0,0,255);
myGLCD.drawRect(230, 110, 280, 120);
//Color Blanco
myGLCD.setColor(255,255,255);
myGLCD.fillRect(230, 125, 280, 135);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(230, 125, 280, 135);
//Color Rosa
myGLCD.setColor(255,0,255);
myGLCD.fillRect(230, 140, 280, 150);
myGLCD.setColor(255,0,255);
myGLCD.drawRect(230, 140, 280, 150);
//Color Amarillo
myGLCD.setColor(255,255,0);
myGLCD.fillRect(230, 155, 280, 165);
myGLCD.setColor(255,255,0);
myGLCD.drawRect(230, 155, 280, 165);
//Color Azul claro
myGLCD.setColor(0,255,255);
myGLCD.fillRect(230, 170, 280, 180);
myGLCD.setColor(0,255,255);
myGLCD.drawRect(230, 170, 280, 180);
//Color negro
myGLCD.setColor(0,0,0);
myGLCD.fillRect(230, 185, 280, 195);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(230, 185, 280, 195);
}
void setup() {
// Iniciar TFT
myGLCD.InitLCD();
// Limpiar TFT
myGLCD.clrScr();
// Iniciar pantalla táctil
myTouch.InitTouch();
// Ajustar precisión de la pantalla táctil
myTouch.setPrecision(PREC_HI);
// Asignar tamaño de fuente
myGLCD.setFont(SmallFont);
myGLCD.fillScr(0,0,0);
// Activar función para dibujar botones, si el programa corresponde solo a un menú, no es necesario
// llamarla de nuevo dentro del programa principal, asi evitamos parpadeos de pantalla
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
BarraSliderBTFT();
BotonReset();
Panelprincipal();
coloresRef();
Fan1();
//boton color rojo inicial
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,30,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,10,30,20);
//boton color verde inicial
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,30,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,30,30,40);
//boton color azul inicial
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,30,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,50,30,60);
//botón control Fan1
myGLCD.setColor(0,255,0);
myGLCD.fillRect(290,190,300,200);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(290,190,300,200);
// Texto bajo el panel principal
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R, 15, 204);
myGLCD.printNumI(G, 97, 204);
myGLCD.printNumI(B, 180, 204);
}
void loop() {
// Control de la entrada de pantalla
while (true)
{
if (myTouch.dataAvailable())
{
// Aquí iría el menú principal --- revisar posteriormente
// Leer datos del puntero sobre la pantalla táctil
myTouch.read();
x=myTouch.getX();
y=myTouch.getY();
// Actualiza el color de la ventana principal
// Mostrar coordenadas X y Y del puntero en la pantalla táctil, bajo el panel principal
myGLCD.setColor(0, 0, 0);
myGLCD.fillRect(49, 214, 180, 225);
myGLCD.setBackColor(0, 0, 0);
myGLCD.setColor(0, 255, 0);
myGLCD.print("x=", 50, 215);
myGLCD.printNumI(x, 66, 215);
myGLCD.print("y=", 120, 215);
myGLCD.printNumI(y, 136, 215);
//Slider control del ventilador (Fan 1)
// Ubicar la barra del slider
// myGLCD.fillRect(290,80,300,200);
if ((y>=79) && (y<=190)) // Rango en y
{
if ((x>=290) && (x<=300)) // Rango en x
{
T = 0 + 255 * (190-y)/(111);
PorcFan1 = 100*(190-y)/(111);
// T = 255;
Fan1();
BarraSliderBTFT();
botonSliBTFT();
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
T1=T;
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
if (y<=79)
{
T=195;
}
if (y>>190)
{
T=255;
}
}
}// fin slider retroiluminación del TFT
//Slider canal rojo
// Ubicar la barra del slider
// myGLCD.fillRect(20,10,150,20);
if ((y>=10) && (y<=20)) // Rango en y
{
if ((x>=19) && (x<=140)) // Rango en x
{
R = 255 * (x-19)/121;
ledR();
BarraSliderHRojo();
botonSliRojo();
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
R1=R;
myGLCD.printNumI(R1, 15, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
if (x<=19)
{
R=0;
}
if (x>>140)
{
R=255;
}
}
}// fin slider canal rojo
//Slider canal verde
// Ubicar la barra del slider
// myGLCD.fillRect(20,10,150,20);
if ((y>=30) && (y<=40)) // Rango en y
{
if ((x>=19) && (x<=140)) // Rango en x
{
G = 255 * (x-19)/121;
ledG();
BarraSliderHVerde();
botonSliVerde();
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
G1=G;
myGLCD.printNumI(G1, 97, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
if (x<=19)
{
G=0;
}
if (x>>140)
{
G=255;
}
}
}// fin slider canal verde
//Slider canal azul
// Ubicar la barra del slider
// myGLCD.fillRect(20,10,150,20);
if ((y>=50) && (y<=60)) // Rango en y
{
if ((x>=19) && (x<=140)) // Rango en x
{
B = 255 * (x-19)/121;
ledB();
BarraSliderHAzul();
botonSliAzul();
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
Azul=B;
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
if (x<=19)
{
B=0;
}
if (x>>140)
{
B=255;
}
}
}// fin slider canal azul
//Reseteo del mezclador
// myGLCD.drawRect(160,10,195,60);
if ((y>=10) && (y<=60)) // Rango en y
{
if ((x>=160) && (x<=195)) // Rango en x
{
x=19;
R = 0;
R1=0;
ledR();
BarraSliderHRojo();
botonSliRojo();
G = 0;
G1=0;
ledG();
BarraSliderHVerde();
botonSliVerde();
B = 0;
Azul =0;
ledB();
BarraSliderHAzul();
botonSliAzul();
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin reseteo
// Referencia color Rojo
// myGLCD.fillRect(230, 80, 280, 90);
if ((y>=80) && (y<=90)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
R = 255;
R1=R;
G=0;
G1=G;
B=0;
Azul=B;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliRojo();
myGLCD.setColor(255,0,0);
myGLCD.fillRect(140,10,150,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,10,150,20);
//boton color verde inicial
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,30,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,30,30,40);
//boton color azul inicial
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,30,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,50,30,60);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color rojo
// Referencia color amarillo
// myGLCD.fillRect(230, 155, 280, 165);
if ((y>=155) && (y<=165)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
G = 255;
G1=G;
R=255;
R1=R;
B=0;
Azul=B;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliVerde();
myGLCD.setColor(0,G,0);
myGLCD.fillRect(140,30,150,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,30,150,40);
// botonSliRojo();
myGLCD.setColor(255,0,0);
myGLCD.fillRect(140,10,150,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,10,150,20);
//boton color azul inicial
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,30,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,50,30,60);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color amarillo
// Referencia color Verde
// myGLCD.fillRect(230, 95, 280, 105);
if ((y>=95) && (y<=105)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
G = 255;
G1=G;
R=0;
R1=R;
B=0;
Azul=B;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliVerde();
myGLCD.setColor(0,G,0);
myGLCD.fillRect(140,30,150,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,30,150,40);
//boton color rojo inicial
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,30,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,10,30,20);
//boton color azul inicial
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,30,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,50,30,60);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color verde
// Referencia color Azul
// myGLCD.fillRect(230, 110, 280, 120);
if ((y>=110) && (y<=120)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
B = 255;
Azul=B;
R=0;
R1=R;
G=0;
G1=G;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliAzul();
myGLCD.setColor(0,0,B);
myGLCD.fillRect(140,50,150,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,50,150,60);
//boton color rojo inicial
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,30,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,10,30,20);
//boton color verde inicial
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,30,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,30,30,40);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color azul
// Referencia color Azul claro
// myGLCD.fillRect(230, 170, 280, 180);
if ((y>=170) && (y<=180)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
B = 255;
Azul=B;
R=0;
R1=R;
G=255;
G1=G;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliAzul();
myGLCD.setColor(0,0,B);
myGLCD.fillRect(140,50,150,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,50,150,60);
//boton color rojo inicial
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,30,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,10,30,20);
// botonSliVerde();
myGLCD.setColor(0,G,0);
myGLCD.fillRect(140,30,150,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,30,150,40);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color azul claro
// Referencia color Blanco
// myGLCD.fillRect(230, 125, 280, 135);
if ((y>=125) && (y<=135)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
B = 255;
Azul=B;
R=255;
R1=R;
G=255;
G1=G;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliAzul();
myGLCD.setColor(0,0,B);
myGLCD.fillRect(140,50,150,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,50,150,60);
// botonSliVerde();
myGLCD.setColor(0,G,0);
myGLCD.fillRect(140,30,150,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,30,150,40);
// botonSliRojo();
myGLCD.setColor(255,0,0);
myGLCD.fillRect(140,10,150,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,10,150,20);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color blanco
// Referencia color rosa
// myGLCD.fillRect(230, 140, 280, 150);
if ((y>=140) && (y<=150)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
B = 255;
Azul=B;
R=255;
R1=R;
G=0;
G1=G;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
// botonSliAzul();
myGLCD.setColor(0,0,B);
myGLCD.fillRect(140,50,150,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,50,150,60);
// botonSliRojo();
myGLCD.setColor(255,0,0);
myGLCD.fillRect(140,10,150,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(140,10,150,20);
//boton color verde inicial
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,30,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,30,30,40);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
//Barra de color Rojo
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// fin referencia color rosa
// Referencia color negro
// myGLCD.fillRect(230, 185, 280, 195);
if ((y>=185) && (y<=195)) // Rango en y
{
if ((x>=230) && (x<=280)) // Rango en x
{
B = 0;
Azul=B;
R=0;
R1=R;
G=0;
G1=G;
ledR();
ledG();
ledB();
BarraSliderHRojo();
BarraSliderHVerde();
BarraSliderHAzul();
//boton color rojo inicial
myGLCD.setColor(R,0,0);
myGLCD.fillRect(19,10,30,20);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,10,30,20);
//boton color verde inicial
myGLCD.setColor(0,G,0);
myGLCD.fillRect(19,30,30,40);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,30,30,40);
//boton color azul inicial
myGLCD.setColor(0,0,B);
myGLCD.fillRect(19,50,30,60);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(19,50,30,60);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(14, 204, 94, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(R1, 15, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(96, 204, 175, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(G1, 97, 204);
myGLCD.setColor(0,0,0);
myGLCD.fillRect(179, 204, 200, 213);
myGLCD.setColor(255,255,255);
myGLCD.printNumI(Azul, 180, 204);
Panelprincipal();
}
}// fin referencia color negro
// Dibujo con el puntero dentro del panel principal
//Identificar el área donde está ubicado el panel principal
// myGLCD.drawRect(15, 80, 195, 200);
if ((y>=81) && (y<=200)) // Rango en y
{
if ((x>=16) && (x<=195)) // Rango en x
{
// INICIO dibujar a mano alzada
// Color inverso al actual
// myGLCD.setColor(R1, G1, Azul);
// myGLCD.fillRect(200, 80, 220, 105);
// myGLCD.setColor(255,255,255);
// myGLCD.drawRect(200, 80, 220, 105);
myGLCD.setColor(255-R1, 255-G1, 255-Azul);
if ((x!=-1) and (x!=-1))
{
myGLCD.drawPixel (x, y);
myGLCD.drawPixel (x-1, y);
myGLCD.drawPixel (x, y-1);
myGLCD.drawPixel (x-1, y-1);
}
}
}// FIN dibujar a mano alzada
// Limpieza solo del trazo dentro del panel principal
//Identificar el área del botón de limpieza del panel principal
// myGLCD.fillRect(200, 80, 220, 95);
if ((y>=80) && (y<=105)) // Rango en y
{
if ((x>=200) && (x<=220)) // Rango en x
{
Panelprincipal();
myGLCD.setColor(R1,G1,Azul);
myGLCD.fillRect(200, 80, 220, 105);
myGLCD.setColor(255,255,255);
myGLCD.drawRect(200, 80, 220, 105);
myGLCD.setColor(255,0,0);
myGLCD.fillRect(215, 60, 235, (60-(R1*50/255)));
//Barra de color Verde
myGLCD.setColor(0,255,0);
myGLCD.fillRect(245, 60, 265, (60-(G1*50/255)));
//Barra de color Azul
myGLCD.setColor(0,0,255);
myGLCD.fillRect(275, 60, 295, (60-(Azul*50/255)));
myGLCD.setColor(255,0,0);
myGLCD.drawLine(215, 60, 235, 60);
myGLCD.setColor(0,255,0);
myGLCD.drawLine(245, 60, 265, 60);
myGLCD.setColor(0,0,255);
myGLCD.drawLine(275, 60, 295, 60);
}
}// FIN limpieza panel principal
}
}
}