View
10
Download
0
Category
Preview:
Citation preview
Clase 10: RS232, RS485 y USBSistemas 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 10: RS232, RS485 y USB 2019 1 / 54
Estandar RS-232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 2 / 54
Estandar RS-232
Estandar de la Electronic Industries Association (tambien conocido como EIA-232).
Define:I Caracterısticas de la senal electrica.I Caracterısticas de la interfaz mecanica (formato de los conectores y definicion de
pines).I Significado de las senales.
No define:I Bit rates, framing de datos, protocolo de comunicacion, encodings, compresion de
datos, y deteccion de errores.I Cada nodo debe adoptar los mismos valores y configuracion
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 3 / 54
Estandar RS-232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 4 / 54
Estandar RS-232
Puede operar sincronica o asincronicamente.
Nodos:I DTE: Data Terminal Equipment (nodos iniciadores).I DCE: Data Communication Equipment (dispositivos pasivos).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 5 / 54
Estandar RS-232La interfaz RS-232 debe mapear las senales al puerto serie a partir de una interfaz serie(por ejemplo vıa un UART).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 6 / 54
Estandar RS-232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 7 / 54
Estandar RS-232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 8 / 54
Estandar RS-232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 9 / 54
RS232
¿Que funcion cumplen Request to Send y Clear to Send?
¿Que funcion cumplen Transmit Data y Receive Data?
¿Que funcion cumple Signal Ground?
¿Que funcion cumple Data Terminal Ready?¿Que funcion cumple Data Carrier Detect?
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 10 / 54
RS232
¿Que funcion cumplen Request to Send y Clear to Send?
¿Que funcion cumplen Transmit Data y Receive Data?
¿Que funcion cumple Signal Ground?
¿Que funcion cumple Data Terminal Ready?¿Que funcion cumple Data Carrier Detect?
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 10 / 54
RS232
¿Que funcion cumplen Request to Send y Clear to Send?
¿Que funcion cumplen Transmit Data y Receive Data?
¿Que funcion cumple Signal Ground?
¿Que funcion cumple Data Terminal Ready?¿Que funcion cumple Data Carrier Detect?
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 10 / 54
RS232
¿Que funcion cumplen Request to Send y Clear to Send?
¿Que funcion cumplen Transmit Data y Receive Data?
¿Que funcion cumple Signal Ground?
¿Que funcion cumple Data Terminal Ready?
¿Que funcion cumple Data Carrier Detect?
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 10 / 54
RS232
¿Que funcion cumplen Request to Send y Clear to Send?
¿Que funcion cumplen Transmit Data y Receive Data?
¿Que funcion cumple Signal Ground?
¿Que funcion cumple Data Terminal Ready?¿Que funcion cumple Data Carrier Detect?
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 10 / 54
Ejemplo Max232
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 11 / 54
Estandar RS-485
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 12 / 54
Estandar RS-485
Estandar de la Electronic Industries Association (tambien conocido comoANSI/TIA/EIA-485).
Utilizado para comunicaciones en serie asincronicas a distancias de 1200m o10Mbit/s en ambientes ruidosos en un par trenzado
I lınea balanceada (lıneas del mismo tipo con igual impedancia a lo largo, respecto detierra y de otros circuitos)
I senalizacion diferencial (senales simetricas y opuestas)
Base para otros protocolos (CAN bus, Modbus, Profibus, etc).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 13 / 54
Estandar RS-485
Define:I Caracterısticas de la senal electrica (rangos de tension, carga, tension de circuitos
abiertos, etc).I Significado de las senales.
No define:I Valores de resistencias de terminacion, pull up y pull down (si se utilizan), ni
longitudes de los cables.I Caracterısticas de la interfaz mecanica (formato de los conectores y definicion de
pines).I bit rates, framing de datos, protocolo de comunicacion, encodings, compresion de
datos, y deteccion de errores.I Mecanismos de arbitraje de bus.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 14 / 54
Estandar RS-485
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 15 / 54
Estandar RS-485
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 16 / 54
Estandar RS-485Resistencias: los valores dependen de la impedancia del cable ( 120 ohms):
Formato de trama:
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 17 / 54
Ejemplo sistema RS-485
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 18 / 54
Ejemplo transceiver RS-485: Max485
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 19 / 54
Estandar USB
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 20 / 54
Estandar USB
Universal Serial Bus (USB): especificacion para comunicar dispositivos con uncontrolador hos
Surgio para reemplazar puertos serie y paralelos.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 21 / 54
Estandar USB
Topologıa en estrella escalonada.
Multiples hubs definen niveles (hasta5).
Cada host provee controladores de hosty c/u admite hasta 127 dispositivos.
Host oficia de master (controla lastransferencias).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 22 / 54
Estandar USBUniversal Serial Bus (USB): topologıa y diferentes velocidades (USB 1.1, 2.0 y 3.0).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 23 / 54
Estandar USBUSB: Los dispositivos se componen de subdispositivos logicos (uso de descriptores)
Implementan una o varias configuraciones
Implementan una o varias funciones (interfaz)
Direccion propia y comunicacion con endpoints vıa pipes.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 24 / 54
Clases de dispositivosDiversas clases de dispositivos para identificar la funcionalidad y cargar el driveradecuado.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 25 / 54
Endpoints
En los dispositivos (el host no posee)
Extremos de cada comunicacion
Buffer en el dispositivo que transmite o recibe datos
se definen con un numero (0-15) y un sentidoI IN endpoint: provee datos al hostI OUT endpoint: recibe datos provenientes del host
Cada dispositivo debe tener configurado su endpoint 0 para control (IN-OUT).
Limitaciones en cantidad de endpoints en funcion de tipo de dispositivo: Low, higho full speed.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 26 / 54
Estandar USBFlujo de datos en el bus mediante transferencias, transacciones y paquetes:
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 27 / 54
Estandar USBTipos de transferencia:
I Isocronica (isochronous): garantiza tasa de transferencia a costa de perder datos(por ejemplo video en tiempo real)
I Usando interrupciones (interrupt): latencia de respuesta acotada (ejemplo mouse,teclado)
I Masivas (bulk): largas y esporadicas (consumen todo el ancho de banda disponible– por ejemplo Hard Drives)
I De control (control): para enviar comandos cortos
Pipes: establecidos por el host:I Stream pipes: unidireccional (isocronica, interrupciones o
masivas).I Message pipes: bidireccional (control).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 28 / 54
Tipos de transferencias
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 29 / 54
Componentes de una transferencia
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 30 / 54
Estandar USB
Transacciones: Cada transaccion se inicia con un paquete queindica la direccion del dispositivo, el numero de endpoint y susentido:
Las transacciones de Setup son similares a las OUT pero no pueden ser rechazadas porel device. Inician una transferencia de control.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 31 / 54
Paquetes USB
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 32 / 54
Estandar USB
El dispositivo debe respetar elprotocolo USB y sus restriccionestemporales,
I Responder a los paquetes del host(cada cierto tiempo).
I En caso contrario, el host puedesuponer una desconexion deldispositivo y la consecuente perdidade funcionalidad digital.
Ej: Invocacion a funcion USBTasks cada cierto tiempo (USB stack/API de Microchip).Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 33 / 54
Estandar USB
Proceso de enumeracion de dispositivos: al conectar por primera vez un dispositivo,el host:
I Negocia tasa de transferencia,I Asigna direccion unica de 7 bits al dispositivo,I Lee descriptores del dispositivo,I Asigna y carga un driver para el dispositivo,I Selecciona una configuracion de dispositivo (requerimientos de alimentacion,
interfaces, etc.).
Descriptores: permiten al Host descubrir las caracterısticas del dispositivo que seconecta (mediante transferencias de control).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 34 / 54
Descriptores
Todos los dispositivos USB deben responder a las solicitudes del host (descriptoresestandar USB).
Veremos descriptores para:I DeviceI ConfigurationI InterfaceI Endpoint
Existen descriptores adicionales (Interface Association, SuperSpeed endpoints,String, Binary Object Store, etc.), y tambien particulares para ciertas clases dedispositivos (por ej. HID).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 35 / 54
Descriptores
Descriptor USB: Punteros a los descriptorese informacion del soporte USB.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 36 / 54
Descriptores - Clases
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 37 / 54
Descriptores de configuracion
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 38 / 54
Descriptores de interfazNumero de endpoints para la interfaz y clase USB (p/disp. con clase definida por lainterfaz).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 39 / 54
Descriptores de endpoint
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 40 / 54
Clases de dispositivosCDC: Communications Device Class
Para dispositivos de comunicaciones:telefonos, modems, terminales yadaptadores ISDN, dispositivos conpuertos COM virtuales (ej ArduinoUno). . .
Para dispositivos con funciones de red:ADSL modems, cablemo-dems,adaptadores y hubs ethernet. . .
Administrar dispositivos, llamadas,transmitir datos y notificaciones.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 41 / 54
Clases de dispositivosDFU Class
Ejemplo ATmega16U2:
Permite colocar un dispositivo enmodo de actualizacion del firmware.
Solicitudes especıficas en el protocolo.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 42 / 54
Clases de dispositivosHID (Human Interface Device) Class
Incluye mouses, teclados, joysticks, etc.
Los SOs en los hosts, suelen tener drivers para HIDs.
Limitados a transferencias control e interrupt.
Los datos HID viajan en reports (estructuras bien definidas).I Input item: lleva info hacia el host.I Output item: lleva info hacia el dispositivo.I Feature item: es bidireccional.
Solicitudes especıficas en el protocolo para obtener reports.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 43 / 54
Clases de dispositivos
Mass Storage (MSC):I Para dispositivos de almacenamiento masivo.I Discos rıgidos, unidades de CD/DVD, camaras que presentan su contenido
mediante un sistema de archivos, etc.I Usan transferencias bulk para intercambiar datos.
Media Transfer Protocol (MTP)I Extension al Picture Transfer Protocol (PTP - USB Image Class) usado para
transferir imagenes (camaras digitales)I Para transferir archivos transaccionalmente sin requerir acceso exclusivo al medio
(ejemplo acceso a memoria externa en smartphones sin bloquear Apps).I Utilizan trasferencias de tipo bulk e interrupt.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 44 / 54
Clases de dispositivos
Otras clases:I Audio (streaming de audio / MIDI)I IrDA Bridge: intercambio de datos por enlaces infrarrojos.I Personal Health CareI Printer: impresoras, CNCsI Smart CardsI Still Image Capture: camaras, scanners, PTP, MTP, etc.I VideoI Etc. . .
Dispositivos genericos (HID, CDC, MSC, etc)
Dispositivos Vendor-Specific (drivers especıficos).
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 45 / 54
Senales y conectores
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 46 / 54
Senales y conectores
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 47 / 54
Estandar USB
Tambien se definen consideraciones en cuanto a consumo y alimentacion de lospuertos y dispositivos.
I Devices bus-powered (5V, 3.3V).I Devices self-powered.
Numerosas variantes del estandar:I Distintas versiones: USB 1.0, 1.1, 2.0 y 3.0 (SuperSpeed)I Sleep & charge: Para carga con hosts suspendidos.I Powered USB: USB para alimentacion.I USB On the Go (OTG): Para conexion de 2 dispositivos sin hosts (par a par): Uso
de embedded hosts.I Wireless USB.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 48 / 54
Estandar USB
Dada la complejidad del protocolo, se suelemanejar con dispositivos especıficos en losSoC y mediante librerıas que gestionan losdiversos niveles en el stack.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 49 / 54
Estandar USB
Dada la complejidad del protocolo, se suelemanejar con dispositivos especıficos en losSoC y mediante librerıas que gestionan losdiversos niveles en el stack.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 49 / 54
USB DFU/CDC – Arduino UNO
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 50 / 54
Otros estandares de comunicacion serie
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 51 / 54
Otros estandares de comunicacion
Otros estandares de comunicacion serie adicionales a los vistos son:I EthernetI Point to Point Protocol (PPP)I Serial Line Internet Protocol (SLIP)I Wireless LAN
No los veremos en detalle.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 52 / 54
Tarea opcional
Buscar para la clase del Viernes 27/9 que es el protocolo
1–Wire.
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 53 / 54
Referencias
Atmel AVR ATmega328P Datasheet.
Atmel AVR ATmega16U2 Datasheet.
Atmel USB DFU Bootloader Datasheet.
Axelson, J. USB Complete: The Developer’s Guide (4th Ed.). Lakeview Research.2009. ISBN: 978-1931448086. Capıtulos 1 a 7, 11 y 12.
Noergaard, T. Embedded Systems Architecture: A Comprehensive Guide forEngineers and Programmers. Newnes. 2005. ISBN: 978–0750677929. Capıtulo 6.
PIC18F2455/2550/4455/4550 Data Sheet – Sec. 17 – USB
http://en.wikipedia.org
Prof: Lic. Jose H. Moyano (Departamento de Ciencias e Ingenierıa de la Computacion)Clase 10: RS232, RS485 y USB 2019 54 / 54
Recommended