Para el siguiente experimento, enviaremos un dato que varía entre 0 a 100 que corresponde de 0 a 100%, que es análogo de los 0 a 255 bits que maneja la salida PWM a través de la función "AnalogWrite()", y que se distingue en la intensidad de luz del led, siendo 0% un led apagado y 100% un led totalmente prendido.
Los únicos pines que pueden usar la función de salida PWM en el caso del Arduino UNO de manera nativa son:
# 11
# 10
# 9
# 6
# 5
# 3
La conexión es la siguiente:
# PIN D11 : Arduino UNO => Resistencia => LED : Ánodo
# GND : Arduino UNO => LED : Cátodo
El programa usado para el Arduino es el que se muestra:
/* PROGRAMA DE PRUEBA DE COMUNICACION SERIAL CONEXION: Arduino (D11) : Anodo del led (pin positivo) Arduino (GND): Catodo del led (pin negativo) El siguiente programa nos ayuda a enviar una trama ingresada por puerto serial para ser leida por el Arduino y ser convertida en el valor del PWM de 0 a 100% (0 - 255 bits) NOTA: Los pienes que poseen salida PWM son 3, 5, 6, 9, 10 y 11 Autor: Renato Hurtado http://beetlecraft.blogspot.pe/ El siguiente programa es de uso publico, cualquier modificacion o mal uso del mismo que pudiera ocasionar el mal funcionamiento de la plataforma de uso de la misma no es responsabilidad del autor */ const int led = 11; // Variable asignada al pin led int data; // Variable de almacenamiento del dato por puerto serial void setup() { pinMode(led, OUTPUT); // Configuracion del pin led como salida Serial.begin(9600); // Comunicacion serial a 9600 bps Serial.println("Ingresar un valor de 0 a 100"); // Mensaje inicial } void loop() { if(Serial.available() > 0){ // Lectura del puerto mientras sigue abierto data = Serial.parseInt(); // Extraccion del integer del dato leido int pwm = map(data, 0, 100, 0, 255); // Cambio de formato del dato de 0 - 100%, a 0 - 255 // Muestra del dato en pantalla Serial.print("Porcentaje: "); Serial.print(data); Serial.println(" %"); Serial.print("PWM: "); Serial.println(pwm); analogWrite(led, pwm); // Salida PWM en el led de 0 a 255 } }El resultado es el siguiente:
No hay comentarios:
Publicar un comentario