sistemas embebidos prof: lic. jos e h. moyano

65
Clase 08: Comunicaci´on en Sistemas Embebidos Sistemas Embebidos Prof: Lic. Jos´ e H. Moyano Departamento de Ciencias e Ingenier´ ıa de la Computaci´ on 2019 Prof: Lic. Jos´ e H. Moyano (Departamento de Ciencias e Ingenier´ Clase 08: Comunicaci´on en Sistemas Embebidos 2019 1 / 56

Upload: others

Post on 01-Jul-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Clase 08: Comunicacion en Sistemas EmbebidosSistemas Embebidos

Prof: Lic. Jose H. Moyano

Departamento de Ciencias e Ingenierıa de la Computacion

2019

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 1 / 56

Page 2: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 2 / 56

Page 3: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion

Usualmente en los microcontroladores encontramos dispositivos destinados aimplementar facilidades de comunicacion.

Uso de protocolos estandar:I Mayor interoperabilidad de los sistemasI Reuso de componentes de hardware

Si no se cuenta con el dispositivo adecuado en hardware, la implementacion delprotocolo necesariamente debe realizarse en software (por ejemplo utilizandopuertos y Bit Banging).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 3 / 56

Page 4: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion

Interfaces de comunicacion:I Comunicacion en serie: los bits de cada palabra se transmiten de “uno en uno”.

F Sincronica: Clock comun entre receptor y transmisor (lınea adicional). Clocksincronizado con datos p/diferenciarlos.

F Asincronica: Sin clock comun.

I Comunicacion en paralelo: “toda” la palabra es transmi-tida en una unidad detiempo.

Interfaces de red:I Son interfaces de comunicacion en sus capas basicas.I Las trataremos de manera separada ya que involucran un mayor soporte a nivel de

software (protocol stacks).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 4 / 56

Page 5: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de red vs interfaces de comunicacion

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 5 / 56

Page 6: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion

Interfaces de comunicacion:I Comunicacion en serie: los bits de cada palabra se transmiten de “uno en uno”.

F mas lentaF generalmente requiere hardware algo mas complejoF requiere menos lıneas de conexion

I Comunicacion en paralelo: “toda” la palabra es transmitida a la vez.F mas rapidaF requiere mas lıneas de conexion

Las interfaces series son mas utilizadas, debido a las desventajas de las interfacesparalelas.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 6 / 56

Page 7: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion serie

Pueden ser

simplex

half duplex

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 7 / 56

Page 8: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion serie

Pueden ser

simplex: un unico sentido

half duplex: un sentido de transmision por vez

full duplex: transmision simultanea en ambos sentidos

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 8 / 56

Page 9: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacionLas desventajas de la comunicacion serie cada dıa pierden relevancia (aun endistancias pequenas).

I Buses serie de alta velocidad (ej. SATA / USB / PCIe/etc.)I Menos lıneas implican menos espacioI Data/address buses vs SCL/SDA serial lines

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 9 / 56

Page 10: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion en paralelo

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 10 / 56

Page 11: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion paralelas

Las interfaces paralelas comparten las alternativas de las interfaces seriales:I sincronicas vs asincronicasI simplex, half duplex, full duplex

Los buses del sistema son inherentemente paralelo, pero existen otras aplicaciones:Impresoras, discos (IDE/P-ATA, SCSI), puertos propietarios para daugtherboards,displays, etc.

Difieren de las interfaces serie en la posibilidad de transmitir muchos bits al mismotiempo.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 11 / 56

Page 12: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion paralelasInterfaces de display

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 12 / 56

Page 13: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Interfaces de comunicacion paralelasEjemplo: Graphics PICtail Plus Daughter Board with 3.2inch Display Kit

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 13 / 56

Page 14: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie sincronica

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 14 / 56

Page 15: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie sincronicaHay que serializar las palabras alojadas en el microcontrolador: registros dedesplazamiento.

En N ciclos de reloj, una palabra de N bitspuede transmitirse de manera completa.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 15 / 56

Page 16: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie sincronicaDos registros de desplazamiento de proposito general con clock compartido constituyenun sistema de comunicacion en serie sincronico.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 16 / 56

Page 17: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie sincronicaMaster: controla la comunicacion (provee la senal de clock comun).Slaves: los demas nodos (ejemplo microcontroladores, dispositivos).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 17 / 56

Page 18: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Microwire y Serial Peripheral Interface (SPI)

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 18 / 56

Page 19: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

Estandares de comunicacion serie sincronica:I Microwire: estandar de National SemiconductorI SPI (Serial Peripheral Interface): estandar de Motorola

Ambos compatibles e interoperables entre sı.I Dispositivos de un estandar pueden comunicarse con dispositivos del otro.

Funcionan de la manera descripta anteriormente.

Permiten configurar sus caracterısticas:I transferir en flancos ascendentes/descendentes del clockI definir el modo de cada nodo: master o slaveI definir frecuencia de reloj (si es master)I etc.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 19 / 56

Page 20: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

¿La comunicacion es full duplex, half duplex o simplex?

¿Como es el SPI de ATMega328P?

¿Que es la fase?¿Que es la polaridad?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 21 / 56

Page 21: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

¿La comunicacion es full duplex, half duplex o simplex?

¿Como es el SPI de ATMega328P?

¿Que es la fase?¿Que es la polaridad?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 21 / 56

Page 22: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

¿La comunicacion es full duplex, half duplex o simplex?

¿Como es el SPI de ATMega328P?

¿Que es la fase?

¿Que es la polaridad?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 21 / 56

Page 23: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

¿La comunicacion es full duplex, half duplex o simplex?

¿Como es el SPI de ATMega328P?

¿Que es la fase?¿Que es la polaridad?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 21 / 56

Page 24: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)

ATmega328P Modulo SPI:Funcionalidad similar al anterior.

El ATmega328P tambien permiteconfigurar su USART en modo masterSPI.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 22 / 56

Page 25: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Serial Peripheral Interface (SPI)ATmega328P Modulo SPI

Registros de control, flags,interrupciones al microprocesador

Tambien con la USART en modo SPIMaster.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 23 / 56

Page 26: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

SPI bajo el osciloscopioTransmision en flancos: descendentes (a) / ascendentes (b)

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 24 / 56

Page 27: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Limitaciones de SPI y Microwire

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 25 / 56

Page 28: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Limitaciones de SPI y Microwire

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 25 / 56

Page 29: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Limitaciones de SPI y Microwire

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 25 / 56

Page 30: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Limitaciones de SPI y Microwire

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 25 / 56

Page 31: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Inter-Integrated Circuit I2C

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 27 / 56

Page 32: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion Serie Sincronica – I2C

Relacion Master-Slave, pero el master no es fijo

Diferentes velocidades (100Khz, 400Khz y hasta 3.4Mhz).

Solo dos lıneas de comunicacion (SDA, datos – SCL, clock)I Half duplex.I Cada dispositivo tiene una direccion en el bus.

TWI (Two Wire Interface) o TWSI (Two Wire Serial Inter-face) son nombres paraI2C de Atmel y otros fabricantes.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 28 / 56

Page 33: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Caracterısticas I2C

Las dos lıneas sonbidireccionales.

El master actual genera elclock.

Salidas open drain.

Capacidad de las lıneaslimitadas por el estandar.

La cantidad de dispositivos esta limitada por:I La cantidad de direcciones disponibles.I La capacidad que los dispositivos suman a cada lınea (no superar el maximo

permitido).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 29 / 56

Page 34: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Diseno del bus I2C

Resistencias de pull-up en funcion de la capacidad de las lıneas (Circuito RC).

No superar los 400 pF de capacidad: Ascenso de flancos en menos de 1us.

A menor R, flancosmas veloces y mayorcorriente drenada(consumo).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 30 / 56

Page 35: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Protocolo de comunicacion I2CHandshaking

Inicio, transmision de la direccion, bit R/W, bit Ack, transmision de datos (con susAcks) y finalizacion.

Datos transmitidos en bytes. Direcciones de 7 o 10 bits.

El master gestiona clock y controla Inicio y fin de cada trama.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 31 / 56

Page 36: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Protocolo de comunicacion I2CHandshaking

Luego de cada byte enviado, el transmisor libera el control de la lınea para que elreceptor pueda hacer el Ack (Pull Down de SDA).

Address = 00h: broadcast.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 32 / 56

Page 37: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Protocolo de comunicacion I2CHandshaking

Durante la transmision, SDA solo puede variar mientras SCL esta bajo. Si SCL estaalto, SDA debe mantenerse estable (para distinguir la transmision del start/stop).

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 33 / 56

Page 38: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Protocolo de comunicacion I2CHandshaking

Cada nodo puede ser master o slave.

Cuando el bus esta libre, cualquier nodo potencialmente podrıa hacerse con sucontrol.

Si mas de un nodo intenta acceder al bus al mismo tiempo, resulta necesarioarbitrar el recurso (mecanismo de deteccion de colisiones y retransmision)

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 34 / 56

Page 39: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Recepcion (master write) en I2C modo slave

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 35 / 56

Page 40: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Transmision (master read) en I2C modo slave

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 36 / 56

Page 41: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Transmision (master write) en I2C modo master

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 37 / 56

Page 42: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

TWI ATMega328P

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 38 / 56

Page 43: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Protocolo de comunicacion I2C

Los dispositivos de comunicacion I2C (MSSP/TWI) proveen un mayor numero demecanismos de control (el protocolo I2C es mas complejo):

I registros de control (mayor numero)I flags (mayor cantidad)I interrupciones al microprocesador

Hay que mantener un cuidadoso temporizado en el manejo de los bits deconfiguracion y control, y al momento de enviar/recibir los datos.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 39 / 56

Page 44: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C bajo el osciloscopio

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 40 / 56

Page 45: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 46: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 47: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 48: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 49: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 50: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

I2C

¿Full duplex, half duplex o simplex?

¿Como agrego otro master?

¿Como envıo informacion a un esclavo en particular?

¿Como se que el esclavo recibio el mensaje?

¿Que sucede con la electronica si necesito agregar esclavos?

¿Como detecto que el mensaje se corrompio?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 41 / 56

Page 51: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie sincronica

¿Que es lo que hace que una comunicacion serie sea consideradasincronica?

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 42 / 56

Page 52: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Conclusiones comunicacion serie sincronica

Requiere una lınea adicional para propagar la senal de clock.

El ancho de banda de la senal de clock es el doble del ancho de banda para losdatos: limitacion en la tasa de transferencia.

En grandes distancias, la senal de clock puede desincronizarse con la senal de datos.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 43 / 56

Page 53: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronica

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 44 / 56

Page 54: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronica

Se elimina la utilizacion de la lınea adicional de clock.

El receptor extrae informacion del temporizado examinando la lınea de datos.I Transmisores y receptores mas complejos.I Usualmente la tasa de transmision esta prefijada (cada nodo requiere una senal

precisa y estable de reloj)I Para cada palabra a ser transmitida se define un “frame” anadiendo un bit de start,

otro de stop y potencialmente un bit de paridad.I Se define un estado ocioso de la lınea que se corresponde con determinado nivel

logico de la misma.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 45 / 56

Page 55: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronicaEjemplo

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 46 / 56

Page 56: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronicaSincronizando y muestreando la senal de datos

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 47 / 56

Page 57: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronica

El dispositivo encargado de implementar este esquema de comunicacion asincronicoes el Universal Asynchronous Receiver Transmitter (UART).

Si el dispositivo, ademas, tiene soporte para transmision sincronica, se lo denominaUniversal Synchronous Asynchronous Receiver Transmitter (USART).

Presentan una interface al procesador central.

La comunicacion Full Duplex requiere dos lıneas.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 48 / 56

Page 58: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

USART ATMega328P

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 49 / 56

Page 59: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

USART ATMega328P

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 50 / 56

Page 60: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion asincronica bajo osciloscopio

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 51 / 56

Page 61: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie asincronica

Usando direcciones con el PIC16F87XA USART (multiples nodos conectados a lalınea):

I Establecer el modo de 9 bits.I Habilitar el modo de direcciones.I Un 1 en el 9o bit: indica que el byte asociado es una direccion.I Un 0 en el 9o bit: indica que el byte asociado es un dato.

La deteccion de destinatario se realiza en software (i.e. examinando los datosrecibidos).

El USART del ATmega328P provee una funcionalidad similar.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 52 / 56

Page 62: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion entre ATMega16U2 y ATMega328P

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 53 / 56

Page 63: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion entre ATMega16U2 y ATMega328P

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 54 / 56

Page 64: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Comunicacion serie

Hemos analizado algunos dispositivos de hardware que implementan interfaces enserie.

Sin embargo, es posible implementar protocolos de comunicacion sin estosdispositivos (Ej. Serial Bit Banging):

I Programando el handshaking vıa puertos en software.I Viable para protocolos simples.I CPU resuelve las tareas de la USART.I Cuando la complejidad de los protocolos a utilizar crece, la conveniencia en cuanto

a costos debe evaluarse.

Por ejemplo, la biblioteca SoftwareSerial de Arduino.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 55 / 56

Page 65: Sistemas Embebidos Prof: Lic. Jos e H. Moyano

Referencias

Barr, M., Massa, A. Programming Embedded Systems: With C and GNUDevelopment Tools, 2nd Edition. O’Reilly Media. 2006. ISBN: 978–0596009830.Capıtulo 13.

Noergaard, T. Embedded Systems Architecture: A Comprehensive Guide forEngineers and Programmers. Newnes. 2005. ISBN: 978–0750677929. Capıtulo 6.

Wilmshurst, T. Designing Embedded Systems with PIC Microcontrollers: Principlesand Applications. Newnes. 2006. ISBN: 978–0750667555. Capıtulos 8 y 11.

Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 08: Comunicacion en Sistemas Embebidos 2019 56 / 56