Lab_interaccio/2009/WII_RGB_DEMO/WII_RGB_DEMO.pde

156 lines
2.3 KiB
Plaintext
Raw Normal View History

2025-02-25 21:21:58 +01:00
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int onoff = 6;
int green = 9;
int red = 10;
int blue = 11;
int time = 0;
int i=0;
int varred=0;
int vargreen=0;
int varblue=0;
void setup () {
pinMode(led1, INPUT);
pinMode(led2, INPUT);
pinMode(led3, INPUT);
pinMode(led4, INPUT);
pinMode(onoff, OUTPUT);
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
pinMode(blue, OUTPUT);
/*blanco();
delay(1000);
amarillo();
delay(1000);
rojo();
delay(1000);
magenta();
delay(1000);
azul();
delay(1000);
verde();
delay(1000);
off();
wiiconnect();*/
}
void wiiconnect(void)
{
digitalWrite(onoff, HIGH); // wii connect
delay(100);
digitalWrite(onoff, LOW);
}
void blanco(void)
{
analogWrite(red, 0xFF);
analogWrite(green, 0xFF);
analogWrite(blue, 0xFF);
}
void amarillo(void)
{
analogWrite(red, 0xFF);
analogWrite(green, 0xFF);
analogWrite(blue, 0x00);
}
void rojo(void)
{
analogWrite(red, 0xFF);
analogWrite(green, 0x00);
analogWrite(blue, 0x00);
}
void magenta(void)
{
analogWrite(red, 0xF7);
analogWrite(green, 0x1C);
analogWrite(blue, 0xB6);
}
void azul(void)
{
analogWrite(red, 0x00);
analogWrite(green, 0x32);
analogWrite(blue, 0xFF);
}
void verde(void)
{
//analogWrite(red, 0x1F);
analogWrite(red, 0x00);
analogWrite(green, 0xFF);
analogWrite(blue, 0x00);
}
void off(void)
{
analogWrite(red, 0x00);
analogWrite(green, 0x00);
analogWrite(blue, 0x00);
}
int ledRead(void)
{
int l1;
int l2;
int l3;
int l4;
int codigo = 0;
l1 = !digitalRead(led1);
l2 = !digitalRead(led2);
l3 = !digitalRead(led3);
l4 = !digitalRead(led4);
codigo = l1 + 2*l2 + 4*l3 + 8*l4;
return(codigo);
}
void loop () {
time = 50;
for (varred=0; varred<256; varred++)
{
delay(time);
analogWrite(red, varred);
}
for (varblue=0; varblue<256; varblue++)
{
delay(time);
analogWrite(blue, varblue);
}
for (vargreen=0; vargreen<256; vargreen++)
{
delay(time);
analogWrite(green, vargreen);
}
for (varred=255; varred>0; varred--)
{
delay(time);
analogWrite(red, varred);
}
for (varblue=255; varblue>0; varblue--)
{
delay(time);
analogWrite(blue, varblue);
}
for (vargreen=255; vargreen>0; vargreen--)
{
delay(time);
analogWrite(green, vargreen);
}
}