martes, 26 de julio de 2016

Arduino: PWM Con Joystick Encendiendo Led



Ejemplo 1




Código

/*
----------------------------------
Tutorial Numero  Conectemos Ideas
----------------------------------

Se enciende el Led conectado a las salida correspondiente del Arduino (PWM) según la posición de nuestro joystick

*/

int Led = 9;  // Salida pin 9


int xpin = A0; // Pin análogo A0 en donde está conectada la posición (x) de nuestro modulo
int valx = 0; // lo utilizamos para guardar el valor leido de xpin

int pwm1;     // lo utilizamos para guardar el valor convertido a pwm1

void setup() {
     pinMode(Led, OUTPUT); //Led como = Salida
        
}

void loop() {
  valx= analogRead(xpin);//Leemos el Pin análogo A0 (xpin) en donde está conectada la posición (x) de nuestro modulo
                         //Lo guardamos en (valx)

  
  pwm1 = map(valx, 0, 1023, 0, 255);
                        //Convertimos a PWM
                        //pwm1 = (valor que recibo, de Mínimo, de Máximo, a Mínimo, a Máximo)
  
   analogWrite(Led, pwm1); // Pwm1 en el pin 9       
            
         }             

Ejemplo 2


Código

/*
----------------------------------
Tutorial Numero 4 Conectemos Ideas
----------------------------------

Se encienden los Leds conectados a las salidas correspondientes del Arduino (PWM) según la posición de nuestro joystick

*/

int Ledxmax = 9;  // Salida pin 9
int Ledxmin = 6; // Salida pin 6

int xpin = A0; // Pin análogo A0 en donde está conectada la posición (x) de nuestro modulo
int valx = 0; // lo utilizamos para guardar el valor leido de xpin

int pwm1;     // lo utilizamos para guardar el valor convertido a pwm
int pwm2;     // lo utilizamos para guardar el valor convertido a pwm



void setup() {
     pinMode(Ledxmax, OUTPUT); //Ledxmax como = Salida
     pinMode(Ledxmin, OUTPUT); //Ledxmax como = Salida
   
}

void loop() {
  valx= analogRead(xpin);//Leemos el Pin análogo A0 (xpin) en donde está conectada la posición (x) de nuestro modulo
                         //Lo guardamos en (valx)

  
  pwm1 = map(valx, 0, 1023, 0, 255);
                        //Convertimos a PWM
                        //pwm1 = (valor que recibo, de Mínimo, de Máximo, a Mínimo, a Máximo)
  pwm2 = map(valx, 0, 1023, 255,0);
                        //Convertimos a PWM
                        //pwm2 = (valor que recibo, de Mínimo, de Máximo, a Mínimo, a Máximo)
  
            if(valx > 520) {// Si! el valor de la pocision x es mayor a 520
                  analogWrite(Ledxmax,pwm1);//Aplicamos pwm1 en Ledxmax
            }
            if(valx < 520) {//Si! el valor de la pocision x es menor a 520
                  digitalWrite(Ledxmax,LOW);// Apagamos Ledxmax

            } 
            
            if(valx < 500) { //Si! el valor de la pocision x es menor a 500
                  
           analogWrite(Ledxmin,pwm2);//Aplicamos pwm1 en Ledxmax
            }
            if(valx > 500) {//Si! el valor de la pocision x es mayor a 500
                  digitalWrite(Ledxmin,LOW);// Apagamos Ledxmin
                           }
//Si quieres usar el pulsador del modulo joystick seguir los ejemplos anteriores
            }