Paso 5: Permite código Arduino
ARDUINO
Es un conocimiento común elegir Arduino para la mayoría de los sistemas encajados debido a su sencillez de programación y gran cantidad de recursos para obtener el máximo de duración pequeña de tiempo.
Así que conecta la placa Arduino a su escritorio o portátil (llamado de ahora en adelante como PC) y encender el Arduino Software
Ahora abrir el programa ejemplos > cristal líquido > Hola mundo como se muestra a continuación.
Hacer todas las conexiones del perno según lo descrito en los comentarios del programa al principio.
He representado por debajo de la referencia
El módulo LCD está ejecutando en una broca 4 modo en lugar de modo de 8 bits.
Dado que la transferencia de datos tarda dos veces, pero es suficiente para la TweeterBie.
Código de Arduino re-diseñada.
Los siguientes cambios de código introduce el efecto de desplazamiento sobre el texto que se mostrará.
#include
ya allí en el bosquejo de pantalla LCD
inicializar la biblioteca con los números de los pines de interfaz
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
inData Char [141]; Asignar espacio para el máximo de cadena de 140 charcters en Tweets
inChar Char; Dónde guardar el carácter de puerto serie
Índice de byte = 0; Índice en la matriz para la ubicación de memoria
bytesrecvd byte = 0; contador para comprobar los bytes entrantes
void setup() {}
Serial.Begin(9600); Puerto serie para enviar los caracteres que se mostrará
Serial.Write ("encendido"); Señalización en el puerto de depuración después de establecer la conexión encendido
LCD.Begin (16, 2); configurar número la pantalla del LCD de columnas y filas
LCD.Print ("Hola, mundo!"); Imprimir un mensaje en la pantalla LCD muestra de dibujo antiguo
Delay(1000); Tiempo de retardo hasta que el mensaje se lee fuera de la pantalla LCD
lcd.setCursor (0, 0); Ajustar LCD cursor a posición de inicio.
índice = 0; Ajuste la posición de indexación de carácter nulo (cero)
lcd.setCursor (0, 0); devolver el cursor a Inicio
LCD.Print ("último Tweet:"); Mostrar el encabezado en la primera línea
lcd.setCursor (16, 1); Ir a la última columna de la segunda línea y esperar a los personajes que aparecen.
}
Esto termina la configuración de la Arduino, ahora para crear el bucle de Super
void loop() {}
índice = 0; siempre se restablece a cero al principio de la recepción de datos
while(serial.Available() > 0) / / no entrar en la sección a menos que los datos están disponibles para leer
{
if(index < 140) / / uno menos que el tamaño de la matriz obtener sólo 140 caracteres
{
inChar = Serial.read(); Leer un carácter
inData [índice] = inChar; Guardar en array "inData"
Índice ++; Incremento donde escribir el siguiente incremento el índice de
inData [índice] = '\0'; Añadir que carácter (carácter nulo) para la siguiente posición
Delay(5); dar 5 diferencia de milisegundos para evitar la corrupción de datos
bytesrecvd = índice; obtener el número total de bytes recibidos
}
} / / mantener desarrollo hasta que haya datos disponibles
LCD.Clear(); claro ahora la pantalla de los datos anteriores
lcd.setCursor (0, 0); Ir a la posición inicial
LCD.Print ("último Tweet:"); Escriba la última cabecera de tweet en primera línea
lcd.setCursor (16, 1); ir al final de la línea en segunda fila
LCD.AutoScroll(); iniciar scroll automático (el problema es gire ambas filas)
para (int thisChar = 0; thisChar < bytesrecvd; thisChar ++) / / obtener un carácter de matriz almacenada
{/ / este personaje aumentará simultáneamente con el desplazamiento de texto
lcd.noAutoscroll(); detener desplazamiento
lcd.setCursor (thisChar + 1, 0); Desde Tweet más reciente es movido por una posición restablece el texto.
LCD.Print ("último Tweet:"); Configurar el texto en posición
lcd.setCursor (16 + thisChar, 1); ajustar la posición para el nuevo carácter que se carga en la pantalla
LCD.AutoScroll(); / / iniciar desplazamiento volver otra vez
LCD.Print(inData[thisChar]); Ahora imprimir el carácter en la posición pre-
Delay (300); Esto es el retardo de desplazamiento necesario para hacer legible el texto.
}
lcd.noAutoscroll(); Si ningún texto se actualiza detener desplazamiento.
Delay(5); Espere unos microsegundos antes de bucle hacia atrás...
}
Nota: El código anterior se ha adjuntado como archivo INO
Después descarga el código y ejecutar con "Garaje ingeniería" en Puerto serie