Actualizado el 21 de Marzo del 2018 (Publicado el 31 de Diciembre del 2017)
1.374 visualizaciones desde el 31 de Diciembre del 2017
102,9 KB
13 paginas
Creado hace 11a (27/08/2012)
Arduino
Taller de Arduino
Comunicación con el Arduino
Eduardo Sacristán Ruiz-Funes
Arduino
Comunicación:
● Utilizando la biblioteca Serial
– Con el Monitor Serial
– Con Processing
– Con otros lenguajes
● Con otros protocolos
– Usando un shield con xBee
Arduino
Comunicación con el Arduino
● Todos los Arduinos tienen al menos un
puerto serial, UART o USART
● Usa los pines 0 (RX) y 1 (TX) y/o el USB
● Nos permite comunicarnos con el Arduino
● Lo podemos hacer por el conector USB
● Tiene un buffer de 128 bytes
Arduino
Comunicación con el Arduino
● El arduino puede funcionar:
– conectado a una computadora
– independientemente
● Y se puede comunicar:
– con la computadora a la que está conectado
– a través del puerto serial con otro equipo
– con otros equipos usando varios protocolos
– usando algún shield de comunicación
Arduino
Comunicación usando Serial
● Es un biblioteca incorporada al lenguaje
● Con varias funciones o métodos:
– Serial.begin(9600); para iniciar la comunicación
– Serial.available(); para saber si hay datos
– Serial.read(); para leer los datos de entrada
– Serial.print(dato); para enviar datos a la pc
– Serial.println(dato); print con retorno de línea
– y otras más
Arduino
Serial.begin(velocidad);
● Se usa para inicializar la comunicación
● Abre el puerto serie con la velocidad indicada
● La velocidad está dada en baudios, baudrate
● Ambos extremos deben usar el mismo
baudrate.
Serial.begin(9600);
Arduino
Serial.available();
● Para saber si hay datos en el buffer
– devuelve el número de bytes en el buffer
– un cero si no hay datos
● Podemos usarla con un if
if (Serial.available() > 0) {
// lee los datos
}
Arduino
Serial.read();
● Para leer los datos en el buffer
– devuelve el primer byte disponible en el buffer
– o un -1 si no hay datos
● Podemos usarla en una asignación
datoEntrada = Serial.read();
Arduino
Serial.print(dato);
● Para enviar un dato.
– envía el dato por el serial
– el dato puede ser de cualquier tipo
– lo envía como ASCII
● Serial.println(dato)
– envía con un retorno de línea
● La podemos usar con:
Serial.print(variable);
Serial.print(“cadena de texto”);
Arduino
Otras funciones de Serial
● end() - termina la conexión
● peek() - lee el siguiente dato sin removerlo
● flush() - vacia el buffer
● write() - envía el dato en binario
Arduino
Como podemos usar Serial
● Desde el monitor serial
– Lo abrimos desde el toolbar
● Desde un lenguaje de programación
– Que pueda escribir y/o leer en el puerto serial
Arduino
Otras opciones de comunicación
● Usando otros protocolos de comunicación
– tipo SPI o 12C
● Usando shields con equipos de
comunicación
– ethernet, wi-fi, bluetooth, xbee, ...
Arduino
Proyectos
● Recibiendo datos en el Monitor Serial
● Enviando datos desde el Monitor Serial
● Conectando dos arduinos con el serial
● Recibiendo datos con Processing
● Enviando datos con Processing
● Enviando y recibiendo con Python
Comentarios de: Taller de Arduino - Comunicación con el Arduino (0)
No hay comentarios