Вы находитесь на странице: 1из 16

SISTEMAS DE AUTOMATIZACIÓN

Y CONTROL ORIENTADO AL
CONOCIMIENTO Y APLICACIÓN
DE LOS SISTEMAS EMBEBIDOS

SESION 04
José Luis Albites Sanabria
MSc. Biomedical Engineering
Brown University, USA
correo: jose.albsab@gmail.com
Celular: 982890844
¿Por qué nos comunicamos?
COMUNICACIÓN SERIAL
La comunicación serial envía información mediante una secuencia de
bits. Para ello se necesitan al menos dos conectores para realizar la
comunicación de datos, RX (recepción) y TX (transmisión).

Todas las placas Arduino disponen al menos de un puerto serie


(conocido también como UART o USART).

Las placas Arduino UNO disponen de un puerto serie que opera a nivel
TTL 0V/ 5V, por lo que son directamente compatibles con la conexión
USB. Los pines empleados para la comunicación serial en el arduino
son: 0 (RX) y 1 (TX). Mientras estemos haciendo comunicación serial no
podemos usar estos pines como entradas o salidas digitales.
COMANDOS COMUNICACIÓN SERIAL
Serial.begin(rate): Abre un Puerto serie y especifica la velocidad de
transmisión. La velocidad típica para comunicación con el ordenador es
de 9600 aunque se pueden soportar otras velocidades.

void setup(){
Serial.begin(9600); // abre el Puerto serie
} // configurando la velocidad en 9600 bps

Serial.available(): Devuelve el número de caracteres disponibles para


leer desde el puerto serie. El buffer del puerto puede almacenar como
máximo 128 bytes.

void loop() {
if (Serial.available() > 0) {// pregunta si hay dato disponible
}
}
COMANDOS COMUNICACIÓN SERIAL
Serial.read(): Lee o captura un byte (carácter) desde el puerto serie.
Devuelve -1 si no hay ninguno.

void loop() {
if (Serial.available() > 0) { // Pregunta si hay dato disponible
dato = Serial.read(); // Lee el dato disponible
}
}
Serial.println(data,data type): Imprime o envía un número o una cadena
de caracteres al puerto serie, seguido por un retorno de carro y salto de
línea (CR y LF).
Serial.print(data,data type): Al igual que el anterior imprime o envía un
número o una cadena de caracteres al puerto serie, pero sin salto de
línea.
TIPOS DE DATOS A ENVIAR
Serial.print(n)
Envía el valor de n como un número decimal en caracteres ASCII.
int n = 20;
Serial.print(b); // envía “20".

Serial.print(n, DEC)
Envia el valor de n como un número decimal en caracteres ASCII.
int n = 20;
Serial.print(n, DEC); // envía “20".

Serial.print(n, HEX)
Vuelca o envía el valor de b como un número
hexadecimal en caracteres ASCII.
int n = 20;
Serial.print(n, HEX); // envía “14".
TIPOS DE DATOS A ENVIAR

Serial.print(n, OCT)
Envía el valor de n como un número octal en caracteres ASCII.
int n = 20;
Serial.print(n, OCT); // envía “24".

Serial.print(n, BIN)
Envía el valor de n como un número binario en caracteres ASCII.
int n = 20;
Serial.print(n, BIN); // envía “10100".
TIPOS DE DATOS A ENVIAR

Serial.print(n, BYTE)
Envía el valor de n como un byte.
int n = 48;
Serial.print(n, BYTE); // Devuelve caracter ASCII del valor
48
Serial.print(str)
Envía la cadena de caracteres como una cadena ASCII.
Serial.print(“Hola!"); // envía “Hola!"

Los tipos de datos usados para Serial.println() son los


mismos, pero se le adiciona su retorno de carro y salto de
línea (CR y LF)
EXPERIENCIA 1

IMPRIMIR “HOLA MUNDO” POR EL PUERTO SERIE


DESCRIPCIÓN.

En esta experiencia se aprenderá a usar el puerto Serial presente en


el arduino.
Se realizará una "comunicación serial" solo de "lectura", por lo tanto el
arduino enviará un mensaje que el usuario leerá a través del "Monitor
Serial".
EXPERIENCIA 1
EXPERIENCIA 1
ABRIR EL PUERTO SERIE
EXPERIENCIA 2

IMPRIMIR LOS ESTADOS DE UN LDR


DESCRIPCIÓN.

Gracias a la comunicación serial, podemos conocer el estado de las salidas o


entradas del arduino.

En esta experiencia se leerá el estado del sensor LDR (AI) y será mostrado al
usuario a través del "Monitor Serial", además de observar que existen
diferentes maneras de imprimir la información (ASCII, decimal, hexadecimal,
binaria).
EXPERIENCIA 2

MATERIALES:

- 1 resistencia 10k.
- 3 Jumpers.
- 1 LDR.
EXPERIENCIA 2
¿Qué aprendimos en la
cuarta sesión?

Вам также может понравиться