Práctica: Usar la resistencia interna de pull up de Arduino para detectar la pulsación de un botón (leer estado de una entrada digital) y encender un led cuando tenga pulsado el botón. Adicionalmente sacar por el monitor serie el estado de pulsación del botón
Tutorial: http://arduino.cc/en/Tutorial/InputPullupSerial
Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio08-pullup
Práctica: Modificar el ejemplo anterior para contar el número de veces que se pulsa un botón detectando flancos ascendentes o descendentes y sacarlo por el monitor serie. Adicionalmente encender o apagar el led cada vez que haya 4 pulsaciones del botón.
Tutorial: http://arduino.cc/en/Tutorial/ButtonStateChange
Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio09-cuentapulsos
Añadir una solución a los rebotes que se dan con el código del ejercicio 9.
Solución a los rebotes: http://miarduinounotieneunblog.blogspot.com.es/2016/01/pulsador-antirrebote-con-contador-de.html o via HW con un condensador.
Práctica avanzada: Ver el funcionamiento de la función tone() para generar notas. Tone() genera una onda cuadrada de una frecuencia específica y con un 50% de duty cycle en el pin especificado. La duración del tono puede ser especificado o en caso contrario continúa hasta llamar a la función noTone().
Solo un tono puede ser generado simultáneamente, si un tono ya se está ejecutando en otro pin, la llamada a tone() no tendrá efecto.
Para más información:
- Función tone(): https://www.arduino.cc/en/Reference/Tone
- https://code.google.com/archive/p/rogue-code/wikis/ToneLibraryDocumentation.wiki#Ugly_Details
NOTA: no confundir tone con PWM. PWM tiene una frecuencia fija de 500Hz, por lo que entre línea verde y verde hay siempre 2ms.
Esquema de conexión:
Tutoriales:
Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio10-tone
Pingback: Día 7. Entradas y Salidas Arduino – Aprendiendo Arduino
Pingback: Día 8. Actuadores y Motores – Aprendiendo Arduino
Pingback: Día 3. Hardware Arduino – Aprendiendo Arduino