/*
 * **********************************************************************
 * *                                                                    *
 * *     ESTE PROGRAMA, SACA UNA SEÑAL ANALOGICA(PWM) POR EL PIN 11     *
 * *     ES DECIR LEERA LA ENTRADA ANALOGICA 0, QUE ESTARA CONECTADA    *
 * *     A UN POTENCIOMETRO Y VARIARA LA LUMINOSIDAD DEL LED            *
 * *     CONECTADO EN EL PIN 11                                         *
 * *     VARIABLES:                                                     *
 * *               LectAnalog = Variable donde guardamos el valor       *
 * *                            de la entrada Analogica                 *          
 * *                                                                    *
 * *  ¿QUE DEBEMOS SABER?                                               *
 * *    - El rango de salida digital es de 0 a 255, siendo 0 salida     *
 * *    y 255 el valor máximo 5V                                        *
 * *                                                                    *
 * *    - La salida analógica, hace uso de unos registros internos      *
 * *    especiales llamados Timer, que son registros internos           *
 * *    que van contando. Arduino UNO tiene 3 TIMERS de este tipo       *
 * *    que tienen asociadas unas patillas que son:                     *
 * *      TIMER0 asociado a las patillas digitales 5 y 6                *
 * *      TIMER1 asociado a las patillas digitales 9 y 10               *
 * *      TIMER2 asociado a las patillas digitales 3 y 11               *
 * *    por tanto si alguna libreria hace uso de estos TIMERS, no       *
 * *    podremos usar estas patillas como salida digital(PWM).          *
 * *    asi si usamos la libreria                                       *
 * *          Servo : no podremos usar Timer1 o sea patillas 9 y 10     *
 *                  como salida PWM(ANalogica).                         *
 * *          Tone  : no podremos usar Timer2 (patillas 3 y 11)         *
 * *                                                                    *
 * **********************************************************************
 */
        
#define PinAnalog 0  // Patilla Analogica donde conectaremos la entrada 

int LectAnalog = 0;  // Valor de la lectura analogica
int Led = 11;    // patilla del led 

void setup() 
{
  pinMode(Led,OUTPUT);
}

void loop() 
{

//  LectAnalog = map(analogRead(PinAnalog),0,1024,0,255);

  LectAnalog = analogRead(PinAnalog)/4; // Convertimos el rango de 0-1023 a 0-255
  analogWrite(Led,LectAnalog);
  delay(20); 
}