Ejemplos con Arrays, strings y Strings

Efectos con leds mejorado

El ejemplo anterior de las luces con el efecto del coche fantástico puede hacerse de una forma más eficiente con el uso de los arrays y la estructura de control for. Además hacer otros efectos de luces o cambios en el realizado es mucho más sencillo usando arrays.

Tutorial: https://www.arduino.cc/en/Tutorial/KnightRider

Solución:

Añadir el cambio de velocidad dentro del código al leer de un potenciómetro de forma que no haya que esperar a un ciclo de loop para cambiar la velocidad: “timer = analogRead(A0);”

O un LDR:

Probar a hacer otros efectos como: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio48-Efectos_Led

Manejar Strings

Aprender a manejar cadenas de caracteres es muy importante, a lo largo del curso se va a usar muy a menudo para comunicaciones y para interaccionar con el usuario.

Tutoriales para aprender a usar los Strings:

Ejercicio Strings_vs_strings: Partiendo de la base del ejercicio StringsComparisonOperators intentar hacer las operaciones de comparación de igualdad y distinto de los StringOne y StringTwo con string en lugar de String. Ver como es más complicado y para iniciarse en la programación es mejor usar String (objeto) que string (char array).

Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio18-strings/_5-String_vs_string

Ejercicio String Interactivo: Hacer un programa donde al iniciar Arduino pregunta que introduzca un string cualquiera y lo mando por puerto serie. Luego lo almacena en una variable y muestra lo leído por el puerto serie.

No olvidar poner en el setup() la inicialización del puerto serie: Serial.begin(9600);

Para leer por el puerto serie:

while (Serial.available() == 0){

   //Ho hago nada

 }

 do{

   caracter_leido = Serial.read();

   cadena_Leida += caracter_leido;

   delay(5);

 }  while (Serial.available() > 0);

Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio18-strings/_6-interactivo

Ejercicio String Numeros: Hacer otra versión del ejercicio anterior donde me pide un número al iniciar Arduino y lo paso por el puerto serie. Luego multiplicar por 15 ese número y sacar por el puerto serie el resultado. En caso que lo introducido no sea un número sacar por pantalla el error.

Esto lo aplicaremos en la práctica de dimmer para manejar la luminosidad de un led con un valor que paso por el puerto serie más adelante.

Recordar que es necesario usar la función toInt(): http://arduino.cc/en/Reference/StringToInt

Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio18-strings/_7-String_Numeros

Ejercicio coche fantástico 4: Sobre la versión 2 del coche fantástico, modificar el código para que el valor del tiempo que está encendido el led se pase por puerto serie y Arduino lo recoja y lo modifique para cambiar la velocidad a la que lucen los leds.

NOTA: Al igual que modificamos un valor con lo recibido por el puerto serie, la forma de trabajar si la comunicación es por wifi, bluetooth, XBee, etc… es la misma, Arduino está escuchando por el puerto de comunicación y cuando recibe una petición válida ejecuta una acción.

Solución: https://github.com/jecrespo/Aprendiendo-Arduino/tree/master/Ejercicio17-CocheFantastico_4   

Anuncios

2 pensamientos en “Ejemplos con Arrays, strings y Strings

  1. Pingback: Día 4. Programación Arduino I – Aprendiendo Arduino

  2. Pingback: Día 5. Programación Arduino II – Aprendiendo Arduino

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s