Está en la página 1de 4

FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

Carrera de Tecnologías de la Información


Carrera de Telecomunicaciones

LABORATORIO DE SISTEMAS EMBEBIDOS

PRÁCTICA N°7
1. TEMA
MANEJO DE COMUNICACIÓN SERIAL I2C, UART Y SPI EN ARDUINO

2. OBJETIVOS

2.1. Relacionar al estudiante con el uso y manejo de comunicación serial: I2C, UART y SPI de
la placa de desarrollo Arduino Uno.
2.2. Identificar las diferencias entre comunicación serial: UART, I2C y SPI en Arduino.

3. TRABAJO PREPARATORIO
3.1. Consultar las características relacionadas al uso de Comunicación serial asincrónica UART
y Comunicación serial sincrónica SPI e I2C en la placa Arduino, enfatizar los modos de
comunicación, tipos de conexiones y tramas de comunicación.
3.2. Investigar las librerías para el uso de comunicación serial I2C y SPI, describir los comandos,
objetos de configuración y aplicaciones.
3.3. Realizar un programa en Tinkercad que permita simular un sistema de alarma casero, para
ello se emplearán 2 placas de desarrollo Arduino Uno interconectadas entre si mediante el
protocolo de comunicación UART. En la primera placa Arduino Uno se utilizarán los pines
analógicos y digitales para el uso de barrido de teclado y conexión al LCD, los mismos que
permitirán ingresar y mostrar al usuario la clave ingresada.
En la segunda placa Arduino se utilizarán un sensor PIR y un sensor magnético MC-38 para
el monitoreo de la entrada de la casa. Si, se detecta movimiento o apertura del sensor
magnético, se activará una alarma sonora, un led RGB se coloca en rojo y se solicitará el
ingreso por teclado de la clave correcta, luego de tres intentos erróneos el sistema se
bloqueará por 30 segundos. Para la simulación en Tinkercad se recomienda utilizar un
switch de dos estados que reemplace al sensor magnético.
Tener en cuenta las siguientes consideraciones:
• La clave del sistema debe ser fijada una vez energizada la placa Arduino.
• Al presionar la tecla D el sistema entra en modo “Armado” y un led RGB presenta
el color anaranjado como indicador del sistema y dos cerraduras emuladas por dos
relés, conectados al esclavo, se cierran (cambian de estado NA-NC).
• Al ingresar la clave correcta el led RGB presenta el color Verde y las cerraduras se
abren.
• Presentar mensajes fáciles de comprender por el usuario final.
El archivo que se generará en el aula de Tinkercad responderá al siguiente nombre:”
Apellido_Nombre_Prep_N8_eje1_Grx”, dónde “x” representa el grupo al que pertenecen.

3.4. Realizar un programa en Tinkercad que permita la creación y visualización de los 3


caracteres personalizados mediante el LCD 16X2. El conjunto de caracteres a representar

Período: 2023-B | detri.epn.edu.ec Página 1 de 4


LABORATORIO DE SISTEMAS EMBEBIDOS

serán los símbolos de “Dinosaurio” que se presenta en Google cuando no existe conexión
a Internet.
Cada carácter está integrado por una matriz de 5x8 pixeles como se puede observar en la
figura 1. Para el diseño de cada símbolo se utilizará una matriz de 4x2 caracteres,

Figura 1. Conjunto de caracteres o fotogramas personalizados.

Se recomienda revisar el siguiente enlace para el diseño de caracteres:


https://maxpromer.github.io/LCD-Character-Creator/
El archivo que se generará en el aula de Tinkercad responderá al siguiente nombre:”
Apellido_Nombre_Prep_N8_eje2_Grx”, dónde “x” representa el grupo al que pertenecen

4. EQUIPOS Y SOFTWARE
• Computadora.
• Tinkercad/ Arduino IDE.
• 2 placas Arduino IDE.
• Módulo adaptador I2C para LCD de 16X2.
• LCD 16X2.
• Sensor PIR, sensor Magnético MC-38, sensor DHT11.
• Buzzer.
• 2 Relés
• Teclado matricial 4x4.
• Cables (macho-hembra) y elementos de conexión.

5. PROCEDIMIENTO

5.1. Indicaciones generales por parte del instructor acerca del uso de los protocolos de
comunicación UART, SPI e I2C que maneja la placa de desarrollo Arduino Uno.
5.2. Modificar el programa 3.4 del trabajo preparatorio de modo que los símbolos dibujados
con forma de Dinosaurio realicen un desplazamiento de izquierda a derecha en la pantalla
LCD, simulando una animación. Para ello se deberá emplear variaciones de los tres
fotogramas presentados en la Figura 1. Se recomienda utilizar el módulo adaptador I2C
para el LCD.
5.3. Presentar el Circuito 3.3 del trabajo preparatorio e incorporar un sensor de temperatura al
Arduino esclavo, el cual detectará la temperatura máxima y mínima y las almacenará para
su posterior presentación en el LCD. Al presionar la tecla A del teclado matricial, se
mostrará la temperatura actual, máxima y mínima de la casa. Al finalizar la presentación

Período: 2023-B | detri.epn.edu.ec Página 2 de 4


LABORATORIO DE SISTEMAS EMBEBIDOS

de información de temperatura, se visualizará una secuencia de barrido de fotogramas del


literal 5.2.
5.4. Realizar las modificaciones solicitadas por el instructor.

6. INFORME

6.1. Establecer una tabla comparativa de los protocolos de comunicación serial (SPI, UART,
I2C) que maneja Arduino Uno, comparar tasas de transmisión, modos de comunicación,
cantidad de dispositivos, asignación de direcciones, instrucciones y librerías asociadas,
entre otros.
6.2. Escribir ventajas y desventajas del uso de los protocolos de comunicación UART, I2C y
SPI.
6.3. Realizar un programa en Tinkercad para control inteligente de luces de una casa. Se
utilizará la comunicación SPI para conectar 2 placas de desarrollo Arduino. La primera
placa se instalará en un lugar visible de la casa y funcionará como estación de control. En
esta placa se conectará un sensor infrarrojo y mediante un control remoto permitirá realizar
diferentes acciones en el sistema. La segunda placa Arduino estará incrustada en la pared
y tendrá conectado las luces de cocina, comedor, sala y estudio. El sistema tendrá los
siguientes modos de funcionamiento.

Modo Botón presionado Luces encendidas

Fiesta 1 Cocina, Comedor, Sala

Cena 2 Cocina, Comedor

Trabajo 3 Estudio

Entretenimiento 4 Sala

El archivo que se generará en el aula de Tinkercad responderá al siguiente nombre:”


Apellido_Nombre_Inf_N8_eje1_Grx”, dónde “x” representa el grupo al que pertenecen.
6.4. Conclusiones y Recomendaciones.
6.5. Referencias.

7. REFERENCIAS

[1] Arduino, https://www.arduino.cc/


[2] Blum, J. (2013). Arduino a fondo. Anaya. EEUU.
[3] Galeano Atehortúa, G. A. (2009). Programación de sistemas embebidos en C, teoría y
prácticas aplicadas a cualquier microcontrolador. México: Alfaomega Grupo Editor.
Retrieved Jan 18, 2023.
[4] Kothari, D. P., Shriram, K. V., & Sundaram. (2012). Embedded Systems. Daryaganj, IND:
New Age International. Retrieved Jan 18, 2023.

Período: 2023-B | detri.epn.edu.ec Página 3 de 4


LABORATORIO DE SISTEMAS EMBEBIDOS

Elaborado por: Ing. Edison Tatayo, MSc

Revisado por: Ing. Ramiro Morejón, MSc. / Jefe de Laboratorio

Período: 2023-B | detri.epn.edu.ec Página 4 de 4

También podría gustarte