Hola electrónicos, hoy les dejo una aplicación Java hecha en Processing que acabo de rehacer desde cero. Sirve para variar el brillo de hasta seis salidas analógicas en nuestro Arduino (como el pin 3 o cualquier otro compatible con PWM). Esta aplicación funciona en pantalla completa y cuenta con seis sliders independientes, ideales para controlar múltiples LEDs o dispositivos desde tu computadora de forma sencilla.
Links:
Aplicación 64 bits
Programa de Arduino
La aplicación envía un valor de 0 a 255 dependiendo de la posición de cada slider. El valor se transmite al Arduino en forma de cadena de caracteres usando un formato simple y directo:
P{Pin}V{Valor}
donde {Pin} indica el número del pin al que se enviará el dato, y {Valor} es el nivel de brillo (duty cycle del PWM) correspondiente.
Por ejemplo, si el slider está controlando el pin 3 y se encuentra a la mitad, la cadena enviada será P3V128.
Así es como se ve la aplicación
Por otra parte, el código a cargar en nuestro Arduino puede parecer algo complicado, ya que debe decodificar las cadenas de caracteres enviadas desde la aplicación. Por suerte, contamos con la poderosa instrucción Serial.parseInt(), que nos facilita mucho el trabajo.
En este caso, utilizamos dos llamadas a Serial.parseInt(): la primera para leer el número de pin, y la segunda para obtener el valor del PWM. Con estos datos, el Arduino puede ajustar fácilmente el ciclo de trabajo de la salida correspondiente usando analogWrite().
Este método también puede adaptarse para otros fines, como mostrar datos en una pantalla LCD u OLED, variar el ángulo de un servo, o modificar la frecuencia de un tono, entre muchas otras aplicaciones.
Algoritmo para la decodificación de cadenas de texto numéricas
Links:
Aplicación 64 bits
Programa de Arduino
Comentarios
Publicar un comentario