Descripción General de un Microcontrolador (Módulos de Comunicación)

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Descripción General de un Microcontrolador (Módulos de Comunicación)"

Transcripción

1 CeTAD Facultad de Ingeniería - UNLP Descripción General de un Microcontrolador (Módulos de Comunicación) (Basado en Freescale HC08 y HCS08) Cátedra de Circuitos digitales y Microprocesadores Autores: Ing. Jorge R. Osio Ing. Luis Antonini Ing. Walter Aróztegui Ing. José A. Rapallini Septiembre de 2011 Versión 1.0 Descripción General de un Microcontrolador (Módulos de Comunicación) Página 1

2 INDICE. 1. Introducción 1.1. Módulos de Comunicación disponibles en Microcontroladores 1.2. Módulos Específicos de la Familia HCS SCI Serial Communications Interface SPI Serial Periferal Interfaz IIC Inter-Integrated Circuits USB Universal Serial Bus 2. Interfaz de Comunicación Serie (SCI) 2.1. Descripción del Protocolo Formato de Transmisión Detección de error de Trama 2.2. Características del Módulo SCI 2.3. Descripción de la comunicación serie mediante el Módulo SCI 2.4. Diagrama en Bloques del Transmisor y Receptor 2.5. Registros de Configuración del SCI Registros SCI de Baud Rate Registro de Control 1 (SCIxC1) Registro de Control 2 (SCIxC2) Registro de estados 1 (SCIxS1) Registro de estados 2 (SCIxS2) Registro de Control 3 (SCIxC3) Registro de Datos (SCIxD) 3. Interfaz de Comunicación Serie (SPI) 3.1. Descripción del Protocolo SPI Breve repaso de las comunicaciones seriales sincrónicas 3.2. Características Principales del Módulo SPI 3.3. Descripción funcional del módulo SPI Modo Master Modo Slave 3.4. Diagrama en bloques 3.5. Registros de configuración Descripción General de un Microcontrolador (Módulos de Comunicación) Página 2

3 Registro de control 1 (SPIxC1) Registro de control 2 (SPIxC2) Registro de Baud rate (SPIxBR) Registro de Estados (SPIxS) SPI Data Registers (SPIxDH:SPIxDL) SPI Match Registers (SPIxMH:SPIxML) 4. Interfaz I 2 C (Inter Integrated circuit) 4.1 Descripción del protocolo I 2 C 4.2. Descripción del módulo I 2 C en el HC9S Diagrama de Bloques del Módulo I 2 C 4.4. Registros asociados al módulo I 2 C Registro de dirección (IICA) Registro divisor de frecuencia del reloj (IICF) Registro de control 1 (IICC1) Registro de estado (IICS) Registro de datos (IICD) Registro de control 2 (IICC2) 4.5. Otras funciones importantes del módulo IIC 5. Universal Serial Bus (USB) 5.1. Prestaciones del protocolo 5.2. Principales características Implementación Física Aspecto eléctrico Velocidad de Transferencia USB On-The-Go Componentes del Bus 5.3. Elementos de una transferencia USB Endpoints Pipes Tipos de transferencias Trasferencias y transacciones Características de un Bloque en una transferencia Fases de una transacción Chequeo de error Enumeración de dispositivos Proceso de enumeración. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 3

4 Descriptores 5.5. Registros asociados al módulo USB Registro del ID del periférico (PER_ID) Registro de ID complementario (ID_COMP) Registro de la revisión del periférico(rev) Registro de información adicional del periférico (ADD_INFO) Registro del estado de la interrupción en modo OTG (OTG_INT_STAT) Registro del control de la interrupción en modo OTG (OTG_INT_EN) Registro de estado de interrupción (OTG_STAT) Registro de control OTG (OTG_CTRL) Registro de estado de interrupción (INT_STAT) Registro de habilitación de interrupciones (INT_ENB) Registro de estado de interrupción por error (ERR_STAT) Registro de habilitación de interrupción por error (ERR_ENB) Apéndice 1. Módulo Serial en la Familia HC Características 1.2. Descripción de la comunicación serie [2] 1.3. Registros I/O del SCI Registo SCI de Baud Rate Registro de Interrupciones y de configuración del Tx SCI Status Register 1 (SCS1) SCI Data Register (SCDR) SCI Status Register 2 (SCS2) Descripción General de un Microcontrolador (Módulos de Comunicación) Página 4

5 1. Introducción Entre los módulos disponibles en las distintas familias de Microcontroladores se encuentra los módulos que permiten implementar mediante la configuración de registros los protocolos de comunicación más comunes en el diseño Digital Módulos de Comunicación disponibles en Microcontroladores En la Actualidad la mayoría de los Microcontroladores contienen módulos para la implementación de interfaces de comunicación tales como, SPI, SCI, I2C y USB. Adicionalmente, algunas familias más potentes proveen interfaces Ethernet y CAN para el diseño de sistemas Más avanzados. Todos estos dispositivos vienen provistos de Librerías específicas de Diseño que felicitan la implementación del módulo Módulos Específicos de la Familia HCS08 Ente los módulos de comunicación más comunes en la Familia de Microcontroladores HCS08 enumeran, el SCI serial asincrónico, el SPI sería sincrónico, el I 2 C o IIC Inter- Integrated Circuit y el USB (Universal Serial Bus). En este capítulo se tratarán estos módulos que proveen una variedad de funcionalidades al microcontrolador, permitiendo su interacción con una gran variedad de dispositivos SCI Serial Communications Interface La interfaz de comunicación serie es una interfaz asincrónica que permite envías datos entre dispositivos en forma serie sobre una única línea de transmisión y una única línea de recepción. Su característica principal es que la línea se encuentra normalmente en alto y cuando se desea enviar información se debe enviar un bit de inicio un cero lógico y seguido de este los bits de datos SPI Serial Periferal Interface Esta interfaz permite enviar datos en forma serie, pero a diferencia de la anterior, requiere de sincronismo para el envío de datos. Por lo que se utiliza una línea de clock para indicar cuándo se enviará un dato, obviamente sincronizado con el clock. Este protocolo permite comunicar un dispositivo Master con varios Slaves. Lo que quiere decir es que el Master puede decidir con que dispositivo intercambiar datos, poniendo en cero la línea de selección (CS chip select) correspondiente al esclavo seleccionado IIC Inter-Integrated Circuits Esta interfaz es mucho más simple en cuanto a las líneas necesarias para su implementación, pero mucho más compleja en cuanto a la configuración necesaria para el envío de datos. Se utilizan solo 2 líneas para la implementación, una línea de clock para el sincronismo y una línea de datos. Este protocolo permite múltiples Masters y múltiples Slaves. Cada Slave tiene asignada una dirección específica, mediante la cual el Master dirigirá la información. Los paquetes a transmitir siempre estarán formados por un byte de control en donde se indica la dirección del dispositivo hacia el cual se le enviará el dato, seguido del byte de datos. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 5

6 USB Universal Serial Bus Esta interfaz es mucho más compleja que las anteriores. Es la interfaz por excelencia de las computadoras actuales y de todos los dispositivos de última generación. Este protocolo es muy eficiente para el envío de datos y requiere de un dispositivo Host que maneja la comunicación y de uno o varios dispositivos Slaves que se conectan al host para iniciar una transferencia de datos. Este protocolo permite la conexión de varios Slaves hacia el host mediante la utilización de un Hub USB. Una de las grandes ventajas de este protocolo es que cada dispositivo conectado se enumera automáticamente indicando al Host sus características principales y permitiendo que este instale los drives para permitir el correcto funcionamiento del dispositivo USB conectado. Este protocolo tiene varios modos de transferencia, dependiendo del tipo de dispositivo que se esté conectando y de su funcionamiento. También se debe destacar que el protocolo soporta varias velocidades de comunicación y que las velocidades más altas requieren un diseño de HW específico. Para la comunicación requiere solo dos líneas de datos diferenciales, pero los paquetes de comunicación son mucho más complejos que cualquiera de los protocolos anteriores. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 6

7 2. Interfaz de Comunicación Serie (SCI) Este módulo no se encuentra en el HC908QY4, pero se encuentra en la mayoría de los MCUs de la Familia HC908 ([3], [4]), cuya descripción se realiza en el Apéndice 1. En este Capítulo se describe el protocolo serie asincrónico y la descripción de Módulo SCI que lo implementa en toda la familia HCS Descripción del Protocolo. El protocolo serial asincrónico SCI utiliza 2 líneas, una para transmisión Tx y una para recepción RX. Las velocidades de transmisión más comunes son: 1200, 2400, 4800, 9600, 19200, 38400, y baudios Formato de Transmisión Figura 1. Modos de transmisión El protocolo SCI usa el formato estándar de transmisión non-return-to-zero (NRZ), que consiste en un bit de inicio seguido de 8 bits de datos y un bit de parada. Esto es comúnmente referenciado como Formato 8-N-1 (8 bits de datos, sin bit de paridad, un bit de parada). El dato es transmitido y recibido comenzando por el bit menos significativo (LSB). Cada bit tiene una duración Tp que define el Baud Rate (tasa de baudio). t p = periodo de un bit = 1/ tasa de baudio Figura 2. Formato de transmisión La comunicación serie trabaja con la línea en alto (idle line) cuando no hay transferencia de datos, y el bit de inicio es un cero lógico. Cada bit de dato puede ser ya sea un uno o un cero lógico. El bit de parada es un uno lógico. El bit de inicio, el bit de parada y cada bit de dato constituyen una trama de datos, como se muestra en la Figura 2. En la Figura 1 se muestran los distintos modos de transmisión. En la operación Half-duplex, solo un nodo transmite a la vez. El dispositivo no puede recibir mientras está transmitiendo, y no puede Descripción General de un Microcontrolador (Módulos de Comunicación) Página 7

8 transmitir mientras está recibiendo. La implementación del protocolo por software debe realizarse en modo Half-duplex, por causa de la secuencialidad del software. Esta incapacidad es una desventaja en comparación con el Hardware SCI, que puede transmitir y recibir al mismo tiempo por ser concurrente. Esto se conoce como sistema full duplex Detección de error de Trama El bit de parada está definido como un uno lógico, si el bit de parada recibido es un cero, quiere decir que ocurrió un error de Trama Características del Módulo SCI Full duplex, Alta Velocidad, asincrónico, programable de 8 o 9 bit de largo de caracter. Dos métodos de receiver wakeup. Pedidos de Interrupción separados para Rx y Tx. Habilitación separada del Transmisor y el Receptor. Polaridad programable de la salida del Transmisor. Operación dirigida por interrupciones con ocho Flags de interrupción. Transmitter Empty Transmission Complete Receiver Full Idle Receiver Input Receiver Overrun Noise Error Framing Error Parity Error Modo de operación Low power Detección de Error de frame en el receptor Baud rate programable Chequeo de Paridad por Hardware 2.3. Descripción de la comunicación serie mediante el Módulo SCI Utiliza el sistema doble buffer, como muestra la figura 3. El flag SCTE se setea cada vez que un nuevo dato es transferido desde el buffer TDR al shift register de transmisión serie. El flag SCRF se setea cada vez que un nuevo dato es transferido desde el shift register al buffer RDR. El registro SCDR es un solo registro que al escribirlo, se escribe el buffer TDRx y al leerlo, se lee el buffer RDRx. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 8

9 Figura 3. Sistema de comunicación SCI doble buffer. Se pueden seleccionar 2 formatos de datos diferentes a transmitir, uno de ellos es de 8 bits (Figura 4), donde hay un bit de inicio, un bit de stop y 8 bit de datos. El otro Formato es de 9 bits (Figura 5), con 1 bit de inicio, un bit de stop, un bit de paridad extra u otro stop y 8 bit de datos. Figura 4. Formato de datos de 8 bits. Caracteres de Datos Especiales: Figura 5. Formato de datos de 9 bits. Break - No tiene bits de Start o Stop, existe como un cero lógico por un tiempo de 10 ó 11 bit (Formato de Datos de 8 o 9 bits respectivamente) Idle - No tiene bits de Start o Stop, existe como un uno lógico por un tiempo de 10 ó 11 bit (Formato de Datos de 8 o 9 bits respectivamente) Preámbulo - Un caracter idle de sincronismo Descripción General de un Microcontrolador (Módulos de Comunicación) Página 9

10 2.4. Diagrama en bloques del Transmisor y Receptor El diagrama de transmisión de la figura 6 muestra como el dato almacenado en el buffer SCID se envía a un registro de desplazamiento para ser transmitido por el puerto de transmisión TXD. También se observa un bloque de Control, desde donde se envían los requerimientos de las interrupciones seleccionadas y se selecciona la velocidad de transmisión Baud rate. Figura 6. Diagrama en bloques del transmisor La Figura 7 muestra el diagrama en bloques receptor, en donde los datos recibidos por el registro de desplazamiento son almacenados en el buffer SCID. El bloque receptor también tiene una lógica de Hardware para el chequeo de error de paridad, en donde si se detecta error en la paridad, se envía un aviso al transmisor pidiendo la retransmisión de datos. Adicionalmente se cuenta con la lógica para enviar el requerimiento de interrupción al microprocesador, por la llegada de un dato al puerto RX. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 10

11 Figura 7. Diagrama en bloques del receptor Registros de Configuración del SCI Ocho registros I/O controlan y monitorean la operación del SCI: SCI Control Register 1 (SCIxC1) Descripción General de un Microcontrolador (Módulos de Comunicación) Página 11

12 SCI Control Register 2 (SCIxC2) SCI Control Register 3 (SCIxC3) SCI Status Register 1 (SCIxS1) SCI Status Register 2 (SCIxS2) SCI Data Register (SCIxD) SCI Baud Rate Register (SCIxBDH y SCIxBDL) Registros SCI de Baud Rate Este par de registros permite seleccionar el baud rate mediante el control del divisor de preescaler. Para actualizar los 13 bits del seteo de baud rate [SBR12:SBR0], primero se escribe el SCIxBDH para almacenar la parte alta del nuevo valor y luego escribe el SCIxBDL. Figura 8. Registro de selección de tasa de baudios (SCIxBDH). LBKDIE (Habilita interrupción por detección de break LIN): Si este bit está en 1 lógico, Se produce un requerimiento de interrupción por HW cuando el flag LBKIF está en 1. RXEDGIE (Habilita interrupción por detección por flanco activado por entrada RxD): Si este bit está en 1, se produce un requerimiento de interrupción por HW cuando el flag RXEDGIF está en 1. Figura 9. Registro de selección de tasa de baudios, parte baja (SCIxBDL). SBR[ bits (12:0)](Divisor de módulo de Baud rate): estos 13 bits representan el valor de BR, que representa el divisor del módulo generador de baud rate. Cuando BR=0, el generador de baud rate es deshabilitado a bajo consumo. Cuando BR toma un valor entre 1 y 8191, el baud rate será SCI = BUSCLK/(16xBR) Registro de Control 1 Este registro es usado para configurar varias características de control del sistema SCI. Figura 10. Registro de Control 1 - SCIxC1 Descripción General de un Microcontrolador (Módulos de Comunicación) Página 12

13 LOOPS: Selección del modo loop. Este bit en 1 conecta el bus RX con el TX SCISWAI: detiene el SCI en modo wait. Este bit en 1 detiene el clock SCI en modo wait RSRC: selección de fuente de recepción. Este bit en 1 conecta el pin TxD a la salida del transmisor y a la entrada del receptor. M: Selección de modo 8 bit o 9 bit de datos. Si este bit está en 1 se selecciona el modo de 9 bits de datos. WAKE: selecciona el método de recepción wakeup. ILT: Selección de tipo de línea Idle. PE: Habilita paridad. El bit en 1 habilita paridad PT: Selección del tipo de paridad. El bit en 1 selecciona la paridad impar Registro de Control 2 Este registro puede ser leído o escrito en cualquier momento. Figura 11. Registro de Control - SCIxC2 TIE: Habilita la interrupción de transmisión TCIE: Habilita interrupción por transmisión completa RIE: Habilita la interrupción del recepto ILIE: habilita la interrupción de línea IDLE TE: Habilita el Transmisor RE: Habilita Recepción RWU: Control wakeup del receptor SBK: envía un break Registro de Estados 1 Este registro tiene 8 flags de solo lectura. Figura 12. Registro de Estados - SCIxS1. TDRE: Flag de registro de datos del transmisor vacio TC: Flag de transmisión completa RDRF: Flag de registro de datos del receptor vacio IDLE: Flag de línea IDLE. OR: Flag de sobre ejecución del receptor. NF: Flag de ruido Descripción General de un Microcontrolador (Módulos de Comunicación) Página 13

14 FE: Flag de error de Frame PF: Flag de error de paridad Registro de Estados 2 Este registro tiene un flag de estados de solo lectura. Figura 13. Registro de Estados - SCIxS2. LBKDIF: Flag de interrupción de detección de break LIN RXEDGIF: Flag de interrupción activo por flanco en el pin RxD RXINV: Inversión de datos del receptor RWUID: Detecta activación de IDLE en el receptor BRK13: Generación de break de carácter extensa LBKDE: Habilita detección de break LIN RAF: Flag de receptor activo Registro de Control 3 (SCIxC3) Figura 14. Registro de Control - SCIxC3. L8: Recepción de 9 bits de datos T8: Transmisión de 9 bits de datos TXDIR: Configuración de dirección del pin TxD en el modo simple línea TXINV: Inversión de datos de Transmisión. ORIE: Habilitación de interrupción por sobre escritura NEIE: Habilitación de interrupción por error de ruido FEIE: Habilitación de interrupción por error de Frame PEIE: Habilitación de interrupción por error de paridad Registro de Datos (SCIxD) Este registro cumple dos funciones diferentes. Cuando se lee devuelve el valor del buffer de recepción RX. Cuando se escribe guarda el valor en el Buffer de transmisión TX. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 14

15 Figura 15. Registro de Datos (SCIxD). Descripción General de un Microcontrolador (Módulos de Comunicación) Página 15

16 3. Interfaz de Comunicación Serie (SPI) 3.1. Descripción del Protocolo SPI La interfaz periférica serie es una interfaz sincrónica master-slave que se basa en un registro de desplazamiento de 8 bits. El master SPI genera una señal de clock usada por todos los dispositivos SPI para coordinar la transferencia de datos. Como muestra la Figura 16, el dispositivo periférico conectado al SPI también incluye un registro de desplazamiento. Juntos, los 2 registros de desplazamiento de 8 bits son conectados desde un registro de rotación a izquierda de 16 bits. Una transferencia de datos consiste de un desplazamiento de 8 bits, el cual resulta en una transferencia de datos entre el dispositivo master y el slave. Muchos dispositivos, tales como los conversores AD, conversores DA y Chips de memoria Flash, SRAM, FRAM, SD, etc, poseen interfaz SPI. Figura 16. Diagrama de conexión Master Slave Breve repaso de las comunicaciones seriales sincrónicas Una comunicación sincrónica es aquella en donde los datos se envían sincronizados con una señal de clock, ya sea como una línea independiente o embebida dentro de la misma. Generalmente existe un dispositivo maestro, que es el generador de la sincronía de la comunicación. De tal manera que el reloj es generado en una línea independiente del sistema y es el maestro quien lo presenta en el canal de comunicación. Los demás dispositivos del sistema actúan como esclavos de la comunicación y la señal de reloj entra por un pin a cada uno de ellos, estableciendo el sincronismo de los bits de información que llegan o salen. Otros sistemas utilizan la misma señal de datos, para generar el sincronismo de los bits. La Figura 17 ilustra el protocolo Manchester, del cual se puede extraer el reloj del sistema. Basta con tomar cualquier flanco de la señal de clock para lograr una relación entre, (utilizando el flanco) el reloj y los datos. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 16

17 Figura 17. Sincronismo entre señal de clock y datos. En los sistemas seriales sincrónicos para la interconexión de periféricos, se manejan distancias cortas y modos de un solo maestro y múltiples esclavos. Un maestro podría perder su función y convertirse en un esclavo, mediante un mecanismo de arbitraje de bus. De esta manera cualquier dispositivo podría ser maestro en un momento determinado. Las tramas de comunicación son de variada presentación y algunas sólo involucran la carga útil, sin adicionar bits que permitan el handshaking (coordinación) entre esclavos y maestro. Para estos protocolos deberá existir una línea tanto para el dato saliente (TxD) como para el dato entrante (RxD), así como la posibilidad de hacer comunicación simultánea y bidireccional (Full Duplex) (Ejemplo: SPI). Figura 18. Diferentes Configuraciones en el envío de datos durante el primer flanco de clock Descripción General de un Microcontrolador (Módulos de Comunicación) Página 17

18 Figura 19. Diferentes Configuraciones en el envío de datos durante el segundo flanco de clock. En la figura 18 se muestra la configuración del módulo en donde el dato a enviar se mantiene estable durante el primer flanco de clock y el siguiente bit se envía en el segundo flanco de clock, tenga este cualquiera de las 2 polaridades posibles (línea normalmente en alto o en bajo). En la figura 19 se muestra la configuración del módulo en donde cada dato se establece en el primer flanco del pulso de clock y el dato se mantiene estable durante el segundo flanco del clock Características del Módulo SPI El modulo SPi incluye las siguientes características: Operación en modo master o slave Modo bidireccional en Full-duplex o simple línea Tasa de bit de transmisión programable Registro de datos de transmisión y recepción de Doble buffer Opciones de polaridad y fase del clock Salida de selección de slave Flag de modo de error por falla con posibilidad de interrupción de CPU Control de operación de SPI durante el modo wait Desplazamiento de datos primero MSB o primero LSB seleccionable Longitud de datos de transmisión programable a 8 o 16 bits 3.3. Descripción Funcional del módulo SPI El módulo se habilita seteando el bit SPI enable (SPE) en el Registro SPI Control Register 1. Mientras el bit SPE esté seteado, los cuatro pines asociados al módulo SPI cumpliendo las funciones de: Selector de esclavo (SS) clock serial (SPSCK) Master out/slave in (MOSI) Descripción General de un Microcontrolador (Módulos de Comunicación) Página 18

19 Master in/slave out (MISO) Una transferencia SPI se inicia en el dispositivo master leyendo el registro de estados SPI (SPIxS) cuando SPTEF = 1 y escribiendo el dato en el buffer de transmisión de datos (escribiendo SPIxDH:SPIxDL). Cuando se completa una transferencia, el dato recibido se almacena en el buffer de datos recibidos. Los Registros SPIxDH:SPIxDL actúan como el buffer de datos de recepción SPI cuando es leido y como el buffer de datos de transmisión SPI cuando se escribe. El bit de control de fase de clock (CPHA) y el bit de control de polaridad de clock (CPOL) ubicados en el registro de control 1 SPI (SPIxC1) permiten seleccionar uno de los cuatro posibles formatos de clock a ser usados por el sistema SPI. El bit CPOL selecciona una inversión o no de polaridad en el clock. El bit CPHA se usa para coordinar dos protocolos para el muestreo de datos sobre los flancos impares llamados SPSCK o sobre los flancos pares llamados SPSCK. El SPI puede configurarse como master o como slave. Cuando se setea el bit MSTR del registro de control 1, se habilita como master, cuando se borra el bit MSTR, se selecciona el modo slave Modo Master El Módulo SPI opera en modo master cuando el l bit MSTR se encuentra seteado. Solo en modo master se pueden iniciar transmisiones. Una transmisión se inicia leyendo el registro SPIxS mientras el SPTEF = 1 y escribiendo el registro de datos SPI. Si el registro de desplazamientos está vacío, el byte se transfiere inmediatamente al a este registro para ser enviado. El dato comienza a desplazarse hacia el pin de salida MOSI bajo la referencia del clock de control serial. SPSCK: Los bits de selección de baud rate SPR2, SPR1, y SPR0 conjuntamente con los bits de preselección de baud rate SPPR2, SPPR1, y SPPR0 en el registro de control generan un baud rate y determinan la velocidad de transmisión. El pin SPSCK es la salida de clock SPI. A través de este pin el generador de baud rate del master controla el registro de desplazamiento del periférico slave. Los pines MOSI, MISO en modo master, tienen la función de pin de datos de salida (MOSI) y pin de datos de entrada (MISO), esto está definido por los bits de control SPC0 y BIDIROE. El pin SS cuando los bits MODFEN y SSOE están seteados, se configura como selector de slave de salida. El pin SS de salida se pone en bajo para una transmisión y en alto cuando la línea está en estado desocupado idle. Si el bit MODFEN está seteado y el SSOE borrado, el pin SS se configura como entrada para detectar el modo de error por falla en la transmisión. Si la entrada SS está en bajo, indica un error por falla error cuando otro master trata de manejar las líneas de MOSI y SPSCK. En este caso, el SPI cambia a modo slave, borrando el bit MSTR y deshabilitando el buffer de salida slave MISO Modo Slave El SPI funciona en modo slave cuando el bits MSTR en el registro de control 1 está borrado. SPSCK: En modo slave, SPSCK es el clock entrada que llega desde el master. Pines MISO, MOSI: En modo slave, el pin (MISO) tiene la función de salida de datos y el pin (MOSI) tiene la función de entrada de datos, esto se determina por los bits SPC0 y BIDIROE en el registro de control 2. Pin SS: El pin SS es la entrada de selección del slave. Antes de una transmisión de datos, el pin SS del slave debe estar en bajo y debe mantenerse en este estado hasta que finalice dicha transmisión. Si el pin SS está en alto, el SPI se fuerza a estado idle. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 19

20 La entrada SS también controla el pin de salida de datos seriales, Si el SS está en alto (no detectado), el pin de salida de datos estará en alta impedancia, y, si SS está en bajo el primer bit en el registro de datos SPI se enviará a al pin de salida de datos seriales. También si el SS del slave está en alto, se ignora la señal de clock enviada por el master. Con el sistema de varios slaves, es posible implementar una comunicación serial enviando a varios slaves la misma transmisión desde el master, aunque el master no recibirá información de todos los slaves a la vez. Si el bit CPHA en el registro de control 1 está borrado, un número impar de flancos sobre la entrada SPSCK causará que el dato se mantenga en el pin de entrada de datos. Un número par de flancos causará que el valor previamente almacenado desde el pin de entrada de datos seriales se displace en el LSB o MSB del registro de desplazamientos del SPI, dependiendo del bit LSBFE. Si se setea el bit CPHA, un numero par de flancos en la entrada del SPSCK causará que el dato se mantenga en el pin de entrada de datos serie. Un número impar de flancos casará que el valor previamente almacenándose displace desde el pin de entrada serie al LSB o MSB del registro de desplazamientos, dependiendo del bit LSBFE. Cuando el CPHA es seteado, el primer flanco se usa para enviar el primer bit de datos al pin de salida serie. Cuando el CPHA es borrado y la entrada SS está en bajo (slave seleccionado), e primer bit de datos del SPI se envía por el pin de salida de datos. Después del octavo (SPIMODE = 0) o el dieciseisavo (SPIMODE = 1) deslazamiento, la transferencia se considera finalizada y el dato recibido es transferido a registro de dat6s del SPI. Para indicar que la transferencia se completó, se setea el flag SPRF en el Registro de estados del SPI. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 20

21 3.4. Diagrama en bloques 3.5. Registros de configuración Registro de control 1 (SPIxC1) Figura 20. Diagrama en bloques del módulo SPI Figura 21. Registro de control 1 - SPIxC1 SPIE: Habilitación de interrupción (para SPRF y MODF) SPE: Habilitación de sistema Descripción General de un Microcontrolador (Módulos de Comunicación) Página 21

22 SPTIE; Habilitación de interrupción por transmisión MSTR: Selección de modo Master/Slave CPOL: polaridad de Clock CPHA: Fase de clock SSOE: habilitación de salida de selección de slave LSBFE: primer bit LSB (dirección de desplazamiento) Tabla 1. Bits de selección de modo Master o Slave MODFEN SSOE Modo Master Modo Slave 0 0 I/O de propósito general Entrada de selección de slave 0 1 I/O de propósito general Entrada de selección de slave 1 0 Entrada SS para modo falla Entrada de selección de slave 1 1 Salida SS automática Entrada de selección de slave Registro de control 2 (SPIxC2) Figura 22. Registro de control 2 (SPIxC2) SPMIE: Habilitación de interrupción por coincidencia SPIMODE: Modo 8 o 16 bits MODFEN: Habilita función en modo falla como master BIDIROE: habilita salida en modo bidireccional SPISWAI: Stop en modo wait SPC0: Control de pin 0 Tabla 2. Modos de Operación Modo de Pin SPC0 BIDIROE MISO MOSI Operación de Modo Master NORMAL 0 X Entrada Master Salida Master BIDIRECCIONAL 1 0 MISO no usado Entrada Master 1 por SPI Master E/S Operación de Modo slave NORMAL 0 X Salida Slave Slave BIDIRECCIONAL 1 0 Entrada Slave MOSI no usado 1 Slave E/S por SPI Descripción General de un Microcontrolador (Módulos de Comunicación) Página 22

23 Registro de Baud rate (SPIxBR) Tabla 3. Selección de baud rate de Transferencia SPPR2:SPPR1:SPPR0 Preescalador Divisor 0:0:0 1 0:0:1 2 0:1:0 3 0:1:1 4 1:0:0 5 1:0:1 6 1:1:0 7 1:1:1 8 Figura 23. Registro de Baud rate (SPIxBR) 6:4 SPPR[2:0]: Preescalador Divisor de Baud Rate 2:0 SPR[2:0]: Divisor de Baud Registro de Estados (SPIxS) Tabla 4. Divisor de Baud Rate SPR2:SPR1:SPR0 Divisor de tasa 0:0:0 2 0:0:1 4 0:1:0 8 0:1:1 16 1:0:0 32 1:0:1 64 1:1: :1:1 256 Baud rate= CGMOUT/(2xBD) Figura 24. Registro de estados (SPIxS) SPRF: Flag de buffer de lectura lleno Descripción General de un Microcontrolador (Módulos de Comunicación) Página 23

24 SPMF: Flag de Match. Cuando el valor en el buffer de recepción coincide con el valor en SPIMH:SPIML SPTEF: Flag de buffer de transmisión vacio MODF: Flag modo master por falla SPI Data Registers (SPIxDH:SPIxDL) Figura 25. Registro de Datos parte alta (SPIxDH) Figura 26. Registro de Datos parte baja (SPIxDL) En modo 8-bit, solo está disponible SPIxDL. La lectura de SPIxDH retornará todos ceros. La escritura en SPIxDH será ignorada. En modo 16-bit, leyendo cualquier byte (SPIxDH o SPIxDL) se guarda el contenido de ambos bytes en el buffer en donde se mantiene hasta que se leo otro byte. Escribiendo cualquier byte (SPIxDH o SPIxDL) se mantiene el valor en el buffer. Cuando ambos bytes han sido escritos, se transferirá como un valor de 16 bits en el buffer de datos de transmisión Registros de Coincidencia (SPIxMH:SPIxML) Figura 27. Registro de Coincidencia parte alta (SPIxMH) Figura 28. Registro de Coincidencia parte baja (SPIxML) En modo 8-bit, solo está disponible SPIxML. La lectura de SPIxMH retornará ceros. La escritura a SPIxMH será ignorada. En modo 16-bit, leyendo cualquier byte (SPIxMH o SPIxML) se mantiene el contenido de ambos bytes en un bufferen donde se conservará hasta la lectura de otro byte. Escribiendo cualquier byte (SPIxMH o SPIxML) se transfiere el valor a un buffer. Cuando Descripción General de un Microcontrolador (Módulos de Comunicación) Página 24

25 ambos buffer hayan sido escritos, se transferirá el contenido como un valor a los registros de coincidencia del SPI. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 25

26 4. Interfaz I 2 C (Inter Integrated circuit) 4.1 Descripción del protocolo I 2 C Este sistema de comunicaciones fue desarrollado por Philips como un sistema multi-master, para la conexión de periféricos a distancias relativamente cortas y velocidades de unos cientos de Kbps. El protocolo se implementa sobre dos líneas, una línea de clock de sincronismo (SCL: Serial Clock) y otra para los datos (SDA: Serial Data). Como los datos se transmiten por una sola línea, el sistema es bidireccional del tipo maestro/esclavo. Las Líneas de Clock SCL y de Datos SDA son manejadas por el master durante una comunicación típica. La Figura 29 muestra una trama, para la transmisión de datos en 8 bits (también existe en 10 bits). En la trama se puede apreciar que el protocolo requiere una condición de inicio, seguido por los bits de datos, después se presenta un bit para la señal de reconocimiento (ACK) y finalmente la condición de stop. En un Bus I 2 C típico cada esclavo tiene asignada una dirección de entre 7 y 10 bits que se usa para seleccionar el esclavo con el que se desea entablar una comunicación. Figura 29. Trama de una transmisión I 2 C Condición de start: La condición de inicio se produce mediante un flanco descendente en la Señal SDA cuando la señal de clock SCL se encuentra en estado alto. Bits de datos: Luego de haberse dado la condición de start, los bits de datos se transmiten comenzando por el más significativo (MSb), manteniendo el valor del bit durante todo el periodo alto de la señal de clock SCL. El cambio de bit se debe realizar durante el estado bajo de la línea de clock o durante el flanco ascendente del mismo. Bit de comando (R/W): Cuando se está direccionando el dispositivo con el cual se va a establecer una comunicación I 2 C, este bit no pertenece al dato como tal, sino a la acción de escritura o lectura sobre el dispositivo en cuestión (Lectura (R) = nivel alto y Escritura (W) = nivel bajo). Bit de reconocimiento (ACK = Acknowledge): Este bit es verdadero en estado bajo y lo envía quien recibe el dato. Condición de stop: Se produce cuando estando la señal de SCL en estado alto, se presenta un flanco de subida de la señal de SDA. Dependiendo del tipo de transferencia que se desee realizar, las tramas I 2 C se pueden configurar de la siguiente manera: Descripción General de un Microcontrolador (Módulos de Comunicación) Página 26

27 Transmisión de un byte de datos: La Figura 30 detalla las tramas para el envío de un byte hacia un esclavo. En la primera trama la carga útil conforma la dirección de destino de la información. También se especifica la acción sobre el esclavo, que en este caso detalla una escritura sobre el destino (nivel bajo en el bit R/W). La dirección del dispositivo puede estar representada en 8 o 10 bits, de tal manera que podría existir un byte adicional para completar la dirección (este byte carecería de bit de start y de stop). La segunda trama, carece de bit de start y representa el byte de Dato a transferir. Figura 30. Envío de un Byte de Datos a una dirección de esclavo de 8 y 10 bits de largo. Envío de n bytes a un destino: La Figura 31 detalla las tramas para el envío de n bytes hacia un destino. Es idéntico al caso anterior, sólo que los datos se presentan uno a continuación del otro. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 27

28 Figura 31. Envío de varios byte de datos a una dirección de esclavo de 8 y 10 bits de largo. Lectura de un byte desde un dispositivo: La Figura 32 detalla las tramas para la lectura de un byte desde un dispositivo. En este caso el bit de lectura/escritura (R/W) va al estado 1. Las primeras tramas envían la dirección del dispositivo a leer y las siguientes la acción de lectura sobre el mismo. Figura 32. Lectura de un byte de datos enviado desde un dispositivo esclavo. Lectura de n bytes desde un dispositivo: La Figura 33 detalla las tramas para la lectura de n bytes desde un dispositivo. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 28

29 Figura 33. Lectura de n bytes de datos enviados desde u dispositivo esclavo. La conexión de varios dispositivos en un bus I 2 C, obedece al modelo maestro/esclavo y puede existir la posibilidad de que varios maestros manipulen el bus. Esto último se logra mediante un mecanismo de arbitraje de bus definido para resolver conflictos de acceso cuando dos masters tratan de acceder al bus simultáneamente. Para facilitar la conexión de múltiples masters, SCL y SDA son líneas open-drain, lo que facilita el arbitraje y el control de flujo, que requieren pull-ups externos para generar un estado lógico alto en la línea. Todos los masters monitorean el bus y solo uno puede accede cuando la línea está desocupada (idle) (cuando ambas líneas están en alto entre un bit de stop y uno de start). Si un master no está manejando la línea SDA en bajo pero sensa que está en bajo, entonces interpreta que otro master está usando el bus y se detiene la transmisión; en este caso el master perdió el arbitraje. De manera similar, si un master sense que SCL está en bajo cuando debería estar en alto, esto indica que un esclavo está extendiendo el clock para indicar que todavía no está listo para proceder con la transferencia del siguiente byte, proveyendo un mecanismo de control de flujo básico. La Figura 34 muestra una conexión maestro/esclavo I 2 C típica. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 29

30 Figura 34. Configuración maestro-esclavo Típica 4.2. Descripción del módulo I 2 C en el HC9S08 Las características más importantes del módulo I 2 C son: o Trabaja hasta 100Kbps con máxima carga. o El número máximo de dispositivos que se pueden conectar al bus I 2 C está limitado por la capacitancia de carga máxima de 400pF. o Compatible con el bus I 2 C estándar. o Operación en modo multi-maestro. o Hasta 64 frecuencias distintas de clock del maestro. o Generación y detección de bit de aknnowledge, seleccionable por software. o Posibilidad de generar una interrupción por: _ La transferencia de cada byte. _ Pérdida del arbitraje del bus por parte del maestro. _ Identificación de un llamado a una dirección. o Generación y detección de señal de start y stop. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 30

31 o Repetición de la señal de start. o Detección de bus ocupado. o Reconocimiento de llamado general. o Extensión de la dirección a 10 bits Diagrama de Bloques del Módulo I 2 C La Figura 35 detalla el diagrama en bloques del módulo I 2 C. El dato en el módulo I 2 C se recibe y se envía sobre el mismo registro (configuración double buffered), el bloque shift register controla esta función. Figura 35. Diagrama en bloques funcional 4.4. Registros asociados al módulo I 2 C Registro de dirección (IICA) La Figura 36 muestra el registro de dirección del módulo IIC. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 31

32 Figura 36. Registro de direcciones AD1:AD7: Bits que conforman la dirección baja del esclavo en un bus IIC Registro divisor de frecuencia del reloj (IICF) La Figura 37 ilustra sobre el registro para dividir la frecuencia del reloj de bus, que controla la tasa de baudios del módulo I 2 C. Figura 37. Registro divisor de Frecuencias MULT: Bits para definir un factor multiplicador de la rata de baudios IIC. 00: Multiplica por 1 01: Multiplica por 2 10: Multiplica por 4 11: Reservado ICR: Bits para definir la rata de baudios IIC. La siguiente ecuación define la tasa de baudios de una comunicación IIC y los tiempos de las señales de start y stop. Tasa de Baudios = Frecuencia del reloj de BUS / ( MULT x Divisor_SCL) Tabla 5. Tabla de valores del divisor de frecuencias de bus ICR (Hex) Divisor SCL ICR (Hex) Divisor SCL A 36 2A 448 0B 40 2B 512 0C 44 2C 576 0D 48 2D 640 0E 56 2E 768 0F 68 2F 960 Descripción General de un Microcontrolador (Módulos de Comunicación) Página 32

33 A 112 3A B 128 3B C 144 3C D 160 3D E 192 3E F 240 3F Registro de control 1 (IICC1). La Figura 38 ilustra sobre el registro de control 1 del módulo I 2 C. Figura 38. Registro de control 1. IICEN: Bit para habilitar la operación del módulo IIC. 0: Inhibe la operación del módulo IIC 1: Habilita la operación del módulo IIC IICIE: Bit para habilitar un posible evento de interrupción del módulo IIC. 0: Inhibe la interrupción del módulo IIC 1: Habilita la interrupción del módulo IIC MST: Bit para asignar la operación del módulo como maestro. 0: Modo esclavo 1: Modo Maestro TX: Bit para seleccionar la dirección de la transferencia en modo maestro y esclavo. En modo maestro este bit deberá estar de acuerdo con el tipo de transferencia requerida. Para ciclos de envío de direcciones, este bit siempre estará en 1. En caso de un direccionamiento sobre un esclavo, este bit se llevará a 1, vía software y depende del estado del bit SRW. 0: Receptor 1: Transmisor TXACK: Bit para determinar el valor del espacio de bit dedicado al acknowledge (ACK), en la recepción de el esclavo o el maestro. 0: Una señal de ACK es enviada fuera del BUS, después de recibirse un byte de dato 1: No se envía ACK como respuesta RSTA: Bit para insertar un evento de start en el BUS, dada por el maestro. El maestro podría perder el arbitramiento del BUS si inyecta esta señal en un momento no indicado. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 33

34 Registro de estado (IICS). La Figura 39 ilustra sobre el registro de estado del módulo IIC. Figura 39. Registro de Estados TCF: Bandera para indicar cuándo se ha completado la transferencia de un byte. Esta bandera se aclara cuando se lee el registro de datos IICD, en modo receptor o cuando se escribe un nuevo dato en el IICD, en modo transmisor. 0: Transferencia en progreso 1: Se ha completado una transferencia IAAS: Esta bandera indica cuando un esclavo, solicitado por coincidencia en dirección, ha respondido al llamado o cuando el bit GCAEN es 1 y un evento de llamada general ha sido recibido. Escribir en el registro IICC1, aclara esta bandera. 0: No se ha dado un direccionamiento 1: Ha coincidido un direccionamiento BUSY: Esta bandera indica el estado del BUS sin importar si se es maestro o esclavo. Esta bandera es 1 cuando se ha detectado un evento de start y es 0 cuando se detecta un evento de stop. 0: El BUS está desocupado (IDLE) 1: El BUS está ocupado ARBL: Esta bandera indica cuando un maestro ha perdido el arbitramiento del BUS. Esta bandera se aclara escribiendo un 1 en ella. 0: Sistema en operación normal 1: Se ha perdido el arbitramiento SRW: Cuando se está direccionando un esclavo, este bit indica el valor del bit R/W de la dirección a la que se llama y que fue enviada por el maestro. 0: Esclavo recibiendo, el maestro escribe sobre el esclavo 1: Maestro recibiendo, el esclavo escribe sobre el maestro IICIF: Este bit indica cuando hay una interrupción pendiente. Esta bandera se aclara escribiendo un 1 en ella, durante la rutina a la atención de interrupción. Los eventos que ponen a 1 esta bandera son: _ Se ha completado la transferencia de un byte _ Se ha dado una coincidencia en la solicitud de dirección sobre un esclavo _ Se ha perdido el arbitramiento 0: No hay interrupción pendiente 1: Hay interrupción pendiente RXAK: Bandera que indica que se ha dado una señal de acknowledge (ACK), desde el dispositivo que ha recibido el dato enviado. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 34

35 0: Se recibió señal de ACK 1: No se recibió señal de ACK Registro de datos (IICD) La Figura 40 ilustra sobre el registro de datos del módulo I 2 C. La lectura sobre este registro devuelve el byte que acaba de llegar y la escritura deposita el byte siguiente a enviarse Registro de control 2 (IICC2) Figura 40. Registro de Datos La Figura 41 ilustra sobre el registro de control 2 del módulo IIC. Figura 41. Registro de control 2 GCAEN: Bit para habilitar generación de una llamada general en el BUS IIC. 0: Inhibe una llamada general 1: Habilita una llamada general ADEXT: Bit para determinar el formato de la dirección de los dispositivos. 0: Direcciones en 7 bits 1: Direcciones en 10 bits AD8:AD10: Bits que configuran la parte alta de la dirección del dispositivo, en modo de 10 bits 4.5. Otras funciones importantes del módulo IIC o Repetición de la condición de start: Esta propiedad del módulo IIC permite que se genere, en cualquier momento, una condición de start sin necesidad de haber sucedido una condición de stop anterior. o Procedimiento de arbitraje: Esta propiedad permite que varios maestros estén conectados al BUS IIC. Cuando dos o más maestros tratan de acceder al BUS al mismo tiempo, un proceso de sincronización determinará si el maestro pierde esta propiedad. Un maestro pierde el arbitramiento si este transmite un 1 mientras otro maestro está transmitiendo un 0, en ese momento el maestro perdedor se deberá conmutar como esclavo. Para Descripción General de un Microcontrolador (Módulos de Comunicación) Página 35

36 este caso, la trama hacia el esclavo no llevará condición de stop. Esta acción es indicada por el bit IICS[ARBL] = 1. o Procedimiento de llamada general: Esta propiedad permite al maestro encuestar sobre la presencia de un esclavo con una dirección determinada. Una llamada general se puede hacer en formato de 7 o 10 bits de dirección. Cuando un esclavo identifica que el llamado coincide con su propia dirección, el bit IICS[IAAS] es puesto a 1 y el llamado deja de ser general. Si la dirección llamada es la 0x00, se tratará entonces de una llamada general y el software del usuario determinará la acción a tomar. Si el bit IICC2[GCAEN] = 0, el bit de ACK no es devuelto y el dato es ignorado. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 36

37 5. Universal Serial Bus (USB) Una interfaz para muchos dispositivos. Este protocolo es muy versátil para una variedad de dispositivos periféricos. Dispositivos de almacenamiento, mouse, teclado, impresora, etc. Configuración automática. Cuando se conecta el dispositivo a una PC, este es detectado automáticamente, indicando a la PC que drivers necesita para su funcionamiento. Cables estándar. Utiliza cables para conexión estándar y de variadas longitudes No requiere seteos ni configuraciones. Cuando se conecta un dispositivo, automáticamente se configura y se reporta a la PC indicando las características de funcionamiento. No requiere suministro de potencia. El protocolo provee un pin de 5V, y permite suministrar hasta 500mA Principales características Implementación Física Aspecto eléctrico A nivel eléctrico, el cable USB transfiere la señal y la alimentación sobre 4 hilos. Figura 42. Líneas de comunicación USB 1.1 y 2.0 A nivel de alimentación, el cable proporciona la tensión nominal de 5 V. Es necesario definir correctamente el diámetro del hilo con el fin de que no se produzca una caída de tensión demasiado importante en el cable. Una resistencia de terminación instalada en la línea de datos permite detectar el puerto y conocer su configuración (1,5 o 12 Mbits/s). A nivel de señal, se trata de un par trenzado con una impedancia característica de 90 Ω. La velocidad puede ser tanto de 12 Mbits/s como de 1,5 Mbits/s. La sensibilidad del receptor puede ser de, al menos, 200mV y debe poder admitir un buen factor de rechazo de tensión en modo común. El reloj se transmite en el flujo de datos, la codificación es de tipo NRZI, existiendo un dispositivo que genera un bit de relleno (bit stuffing) que garantiza que la frecuencia de reloj permanezca constante. Cada paquete va precedido por un campo de sincronismo. Consumo: Cada sección puede proporcionar una determinada potencia máxima siendo el PC el encargado de suministrar la energía. Además, el periférico puede estar autoalimentado (self powered). Descripción General de un Microcontrolador (Módulos de Comunicación) Página 37

38 Control de consumo: El ordenador gestiona el consumo, teniendo capacidad de poner en reposo (suspend) o en marcha a un periférico USB. En reposo, este reduce su consumo (si puede), quedándose la parte USB funcional. Esta gestión está orientada especialmente a los equipos portátiles Velocidad de Transferencia El protocolo USB puede funcionar comúnmente a 3 velocidades. Dichas velocidades tiene características específicas de implementación dependiendo de la especificación USB: La especificación USB 1.0 define low and full speed. Low speed permite una velocidad de bus de 1,5 Mbits/seg. A full speed el bus USB puede funcionar a 12 Mbits/seg. La especificación USB 2.0 permite una velocidad de Bus de 480 Mbits/seg, lo que permite una tasa de transferencia de datos de 53 MBytes/seg. Hay una diferencia notable entre esta especificación y la anterior. Se debe aclarar que para implementar el USB 2.0 se requiere un diseño de HW especial, mediante 2 líneas diferenciales de datos. Cada línea tiene una impedancia característica de 45 Ohms a tierra o de 90 ohms diferenciales y componentes para el filtrado de ruido USB On-The-Go Como USB se convirtió en la interfaz preferida para todo tipo de periféricos, los desarrolladores empezaron a pedir una forma de conectar sus periféricos directamente entre sí y con otros periféricos USB. Por ejemplo, un usuario puede querer conectar una impresora directamente a una cámara o conectar dos unidades en conjunto para el intercambio de archivos. On-The-Go (OTG) Suplemento para la especificación USB 2.0 lanzado en 2001define una limitada capacidad de función de host que pueden implementar los dispositivos para permitir la comunicación con los periféricos Componentes del Bus Los componentes físicos del Universal Serial Bus consisten de los circuitos, conectores, y cables entre un host y uno o más dispositivos. El host es una PC u otro dispositivo que contenga un controlador host USB y un hub root. Estos componentes trabajan juntos para habilitar el sistema operativo que permite la comunicación con los dispositivos del bus. El formato de datos del controlador del host para transmitir sobre el bus y traducir el dato recibido a un formato que los componentes del sistema operativo puedan entender. A hub has one or more ports for connecting devices. Each device must contain circuits and code that know how to communicate with the host. The USB specification defines the cables and connectors that connect devices to hubs. El controlador host también realiza otras funciones relacionadas con la gestión de las comunicaciones en el bus. El hub root tiene uno o más conectores para conexión de dispositivos. El Hub root, en combinación con el controlador host, detecta y remueve los dispositivos, lleva a cabo las solicitudes desde el controlador host, y transfiere los datos entre los dispositivos y el controlador de host. Los dispositivos son los periféricos y hubs adicionales que se conectan al bus. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 38

39 Un Hub tiene uno o más puertos para conectar dispositivos. Cada dispositivo debe contener los circuitos y el código que le indique cómo comunicarse con el host. La especificación USB define los cables y conectores que conectan los dispositivos a los Hubs. Figura 43. Diagrama en bloques de un bus típico Elementos de una transferencia USB. Cada transferencia USB está integrada por una o más transacciones, y a su vez, cada transacción contiene paquetes. Antes de explicar cómo está conformada una transferencia, se definen algunos términos Endpoints Todo el tráfico del bus viaja desde o hacia los endpoint de cada dispositivo. Un endpoint es un buffer que almacena datos. Típicamente es un bloque de memoria o un registro ubicado en el chip Descripción General de un Microcontrolador (Módulos de Comunicación) Página 39

40 del controlador del dispositivo. Los datos almacenados en un endpoint son datos recibidos o datos que están esperando ser transmitidos. El host también tiene buffers que almacenan los datos recibidos y los datos que esperan ser transmitidos, pero no tienen endpoint. En su lugar, el host da inicio o fin a las comunicaciones con los endpoints de los dispositivos. La especificación USB define a un endpoint como una porción única direccionable del dispositivo USB que es origen o destino de la información en el flujo de comunicación entre el host y el dispositivo. La dirección de un endpoint está compuesta por el número de endpoint y su sentido. El número de endpoint es un valor entre 0 a 15, y el sentido está definido desde la perspectiva del host. Un endpoint de entrada ( IN ) proporciona datos para ser enviados al host, y un endpoint salida ( OUT ) almacena datos recibidos del host. Un endpoint configurado para transferencias de control debe transferir datos en ambos sentidos, por lo que está compuesto por un endpoint cuya sentido es de entrada y salida, compartiendo el mismo número. Los endpoints de control son una clase especial por ser bidireccionales. Cada dispositivo debe tener un endpoint cero configurado como endpoint de control. Raramente se necesitan adicionales. Otros tipos de transferencias envían datos en un solo sentido. Un número simple de endpoint puede soportar los dos tipos de sentidos, entrada o salida. Un dispositivo, por ejemplo, puede tener un endpoint 1 de entrada para enviar datos al host y otro endpoint 1 de salida para recibir datos del host. Adicionalmente al endpoint 0, un dispositivo full o high speed tiene hasta 30 endpoint adicionales, el número del endpoint desde uno a quince y el sentido de transmisión, entrada o salida. En cambio un dispositivo low speed está limitado a dos endpoint adicionales con cualquier combinación de sentidos. Cada transacción en el bus comienza con un paquete que contiene un número de endpoint y un código que indica el sentido del flujo de datos y si se inicia o no una transferencia de control. Los códigos utilizados son IN, OUT y SETUP. Una transacción del tipo SETUP es similar a una OUT por la razón de que los datos viajan desde el host al dispositivo, pero es especial porque inicia una transferencia de control. Los dispositivos deben identificar este tipo de transacción porque esta es el único tipo de transacción que un dispositivo siempre debe aceptar, además porque el dispositivo necesita identificarse y responder las solicitudes contenidas en los datos recibidos Pipes. Antes de que una transferencia pueda realizarse, se debe establecer entre el host y el dispositivo lo que se denomina una tubería o pipe. Es una asociación entre el endpoint de un dispositivo y el software del controlador del host. Durante el proceso de enumeración se establecen pipes. Si el dispositivo es removido del bus, el host remueve las tuberías que no son necesarias. Cada dispositivo tiene un control por defecto de pipe utilizando el endpoint cero. La información de configuración recibida por el host incluye un descriptor de endpoint para cada endpoint que el dispositivo quiera usar. Este descriptor de endpoint es un bloque de información que le dice al host todo lo que necesita saber sobre el endpoint del dispositivo para poder comunicarse con él. La información incluye la dirección del endpoint, el tipo de transferencia a usar, el tamaño máximo de los paquetes de datos, y cuando sea necesario, el intervalo deseado para las trasferencias. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 40

41 Tipos de transferencias La interfaz USB está diseñada para manejar distintos tipos de dispositivos con una gran variedad de requerimientos en relación a la frecuencia de transferencia, tiempo de respuesta y corrección de errores. En la especificación USB se definen cuatro tipos de transferencias de datos, cada uno de estos tipos de transferencias manejan diferentes necesidades, y cada dispositivo puede utilizar la forma de transferencias que mejor se adecuen a sus necesidades. Los tipos de transferencias USB son de control, bulk, interrupt, y por último isochronous. En la tabla 6 se muestra, para cada tipo de transferencia, diferentes características. La transferencia de control es la única que está definida en la especificación USB, es utilizada por el host para aprender sobre el dispositivo. Permite al host obtener información sobre el dispositivo, establecer su dirección, seleccionar configuraciones, entre otras características. Las transferencias de control también pueden enviar pedidos específicos del fabricante del dispositivo. Todo dispositivo USB debe dar soporte a este tipo de transferencia. Las transferencias Bulk son usadas cuando la velocidad de transferencia no es crítica; como enviar datos a una impresora o cuando se quiere acceder a archivos de un dispositivo de almacenamiento. Para estas aplicaciones son necesarias las transferencias rápidas pero los datos pueden esperar de ser necesario. Si el bus se encuentra muy ocupado la transferencia se demora pero de encontrarse libre la transferencia es la más rápida. Únicamente dispositivos full o high speed pueden realizar transferencias de este tipo. Los dispositivos de la clase Mass storage utilizan estas transferencias. Transferencias Interrupt son utilizadas por dispositivos que necesitan en forma periódica, la atención del host o de otros dispositivos. Aparte de las transferencias de control, este tipo de transferencia es la única forma de transferir datos para dispositivos low speed. Dispositivos como teclados o mouse utilizan este tipo de transferencias para enviar datos. Finalmente, las transferencias isochronous, tienen asegurado el tiempo de envió pero no posee corrección de errores. Esta transferencia es utilizada para audio o video reproducido en tiempo real. Es el único tipo de transferencia que no soporta retransmisión automática por detección de errores en los datos recibidos, a causa de esto se aceptan errores en forma ocasional. Únicamente dispositivos full y high speed soportan estas transferencias. Tipo de transferencia Tabla 6. Características principales para cada tipo de transferencia Control Bulk Interrupt Isochronous Uso Típico Identificación y configuración. Escáner, dispositivos mass storage. Mouse, keyboard. Audio y video en tiempo real. Requerido Sí. No. No. No. Usa low speed? Sí. No. Sí. No. Dirección del flujo de datos IN y OUT. In - OUT. In - OUT IN - OUT Descripción General de un Microcontrolador (Módulos de Comunicación) Página 41

42 Corrección de errores Tasa de transferencia garantizada? Latencia garantizada? Sí. Sí. Sí. No. No. No. No. Sí. No. No. Sí. Sí Trasferencias y transacciones. La especificación USB define trasferencia como el proceso de establecer y transportar las solicitudes de comunicación. Una transferencia puede ser muy corta, enviando unos pocos bits de datos de una aplicación, o muy larga enviando el contenido de archivos muy extensos. Cada transferencia está compuesta por una o más transacciones, a su vez cada transacción está formada por uno, dos o tres paquetes. La especificación USB define transacción como la prestación de un servicio a un endpoint. En este caso servicio puede significar que el host envía información a un dispositivo, o que el host solicita y recibe información de un dispositivo. Cada transacción incluye identificación, chequeo de errores e información de control, así como todos los datos a enviar. Una transferencia completa puede estar compuesta por múltiples frames o microframes. Una transacción no puede ser interrumpida ni puede establecerse otra comunicación en el bus que pueda interrumpir una transacción. Una transferencia con una pequeña cantidad de datos puede requerir únicamente una transacción, en cambio otras transferencias pueden requerir múltiples transacciones con una pequeña cantidad de datos cada una Características de un Bloque en una transferencia La figura siguiente muestra los elementos de una transferencia típica. Hay transferencias y transacciones, etapas y fases, transacciones de datos y paquetes de datos, etapas de estados y fases de handshake. Las Etapas de Datos tienen paquetes de handshake y las etapas de estados tienen paquetes de datos. La Tabla 7 muestra los elementos de cada uno de los 4 tipos de transferencias. Cada transferencia consiste de una o más transacciones, y cada transacción consiste de uno, dos o tres paquetes. Los tres tipos de transacción se definen por su propósito y dirección en cuanto al flujo de datos. El Setup de una transacción envía requerimientos de transferencia de control a un dispositivo. Las transacciones OUT envían otra información de datos o estados al dispositivo. Las transacciones IN envían información de datos o estados al host. La especificación USB define una transacción como el suministro de servicios a un endpoint. En este caso se define servicio como el envío de información desde el host al dispositivo, o requerimientos del host y recepción de información desde el dispositivo. Cada transacción incluye identificación, chequeo de error, estados, y control de información en todo intercambio de datos. Una transferencia completa quizás requiera múltiples frames o micro frames, pero una transacción se debe completar sin interrupciones. Ninguna otra comunicación puede irrumpir en el bus en el medio de una transacción. En una transacción el dispositivo debe responder rápidamente con los requerimientos de información de datos o estados. El firmware del Descripción General de un Microcontrolador (Módulos de Comunicación) Página 42

43 dispositivo configura típicamente, un endpoint para responder a los paquetes recibidos, y el hardware responde a los paquetes cuando llegan. Figura 44. Características de una trama de Datos Una transferencia con una pequeña cantidad de datos, tal vez requiere solo una transacción. Otras transferencias requieren múltiples transacciones con un conjunto de datos en cada Fases de una transacción. Cada uno de los tipos de transferencias definidos, están compuesto por una o más transacciones, a su vez cada transacción está integrada por dos o tres fases, en la tabla 7 se muestra las fases integrantes para cada tipo de transferencia. Una transacción tiene hasta tres fases o partes que ocurren en secuencia, token, datos y handshake. A su vez en cada fase se transmiten en uno o dos paquetes. Cada uno es un bloque de información con un formato definido. Al comienzo de cada paquete se coloca información de identificación llamado Packet ID (PID). Dependiendo de la transacción, el PID puede estar seguido por una dirección de endpoint, datos, información de estado o el número de frame junto con los bits de chequeo de error. Fase token: el host inicia la comunicación enviando este paquete. El PID indica el tipo de transacción: SETUP, IN, OUT o comienzo del frame. Fase de datos: el host o el dispositivo trasfiere cualquier tipo de información en el paquete de datos. El PID incluye un valor de secuencia de datos ( data toggle ) que es Descripción General de un Microcontrolador (Módulos de Comunicación) Página 43

44 usado para proteger a datos perdidos o duplicados cuando la transferencia tiene múltiples paquetes. Fase de handshake: el host o el dispositivo envía un código que indica el estado de la transferencia, si resultó exitosa u ocurrió algún tipo de error. En transferencias isochronous no se utiliza esta fase. Los códigos utilizados en el PID son ACK, NAK, STALL o NYET. Tabla 7: fases integrantes de cada tipo de transferencia. Tipo de transferencia Transacción Fases (Paquetes) Token. Setup. Una transacción. Data. Handshake. Token. Control. Data. Cero o más transacciones Data. Handshake. Token. Estado. Una transacción. Data. Handshake. Bulk. Una o más transacciones. (IN - OUT). Token. Data. Handshake. Interrupt. Isochronous. Una o más transacciones. (IN - OUT). Una o más transacciones. (IN - OUT). Token. Data. Handshake. Token. Data. Las señales de handshake son transmitidas en los paquetes de handshake o datos. En todos los casos, quien recibe la información de handshake, la utiliza para decidir qué hacer a continuación. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 44

45 ACK: indica que el host o el dispositivo ha recibido los datos sin errores. NACK: significa que el dispositivo está ocupado o no hay datos que devolver. El host nunca utiliza este código. STALL: tiene tres significados: solicitud de control no soportado, pedido de control fallido o fallo del endpoint. NYET: únicamente dispositivos high speed lo utilizan. Después que un paquete de datos es recibido por el endpoint en un dispositivo, este puede devolver este tipo de handshake. Significa que el endpoint acepta los datos pero no está listo para recibir otro paquete de datos. Cuando el host piensa que el dispositivo puede estar listo, envía un paquete con un token especial llamado PING. El endpoint retorna un ACK para indicar que el dispositivo está listo para recibir el siguiente paquete de datos o devuelve un NAK o STALL de no estarlo. Este procedimiento es más eficiente que enviar todo el paquete de datos, encontrar que el dispositivo no está listo, y tener que reenviar más tarde. ERR: The ERR handshake is used only by high-speed hubs in complete-split transactions. ERR indicates the device didn t return an expected handshake in the transaction the hub is completing with the host Chequeo de error. La especificación USB da los requerimientos de hardware necesarios para reducir el ruido en las líneas, y de esta forma reducir la probabilidad de errores. De todas formas cualquier perturbación, como la desconexión de un cable USB, puede alterar otra transmisión. Por esa razón, se incorpora a cada paquete, bits para el chequeo de errores. Adicionalmente, para transferencias que requieren múltiples transacciones, se incorpora un valor llamado data toggle que mantiene al transmisor y al receptor en forma sincronizada de manera de no omitir una transacción. Los bits para el chequeo de errores son calculados utilizado el algoritmo llamado comprobación de redundancia cíclica (CRC). El dispositivo transmisor realiza el cálculo y envía el resultado con los datos transmitidos, luego el dispositivo receptor realiza un cálculo similar con los datos recibidos. Si el resultado coincide significa que no han ocurrido errores por lo que se devuelve un ACK. En caso de no coincidir no se envía el handshake, lo que significa que se debe retransmitir Enumeración de dispositivos. Antes de que una aplicación pueda comunicarse con un dispositivo, el host necesita aprender de este. En el proceso de enumeración es cuando ocurre el intercambio de información que cumple con esta tarea, para esta tarea se utiliza las transferencias del tipo de control utilizando el endpoint cero. El proceso completo incluye asignarle una dirección al dispositivo, leer los descriptores del dispositivo, asignar y cargar el controlador del dispositivo, y finalmente seleccionar la configuración de alimentación requerida por el dispositivo, endpoints y otras características. Una vez finalizado este proceso, el dispositivo está listo para trasferir o recibir datos utilizando los endpoint del dispositivo Proceso de enumeración. Una de las capacidades del hub es detectar cuando un dispositivo se conecta o desconecta. Cada hub tiene un endpoint IN para reportar estos eventos al host. En el arranque del sistema el host Descripción General de un Microcontrolador (Módulos de Comunicación) Página 45

46 interroga a su root hub si hay dispositivos conectados, después del arranque periódicamente se realiza esta acción. En el proceso de reconocimiento de un nuevo dispositivo, el host envía una serie de solicitudes al hub donde se conecto el dispositivo. El hub establece la comunicación entre el dispositivo y el host. Luego, el host intenta enumerar el dispositivo realizando transferencias de control, las cuales contienen solicitudes estándar dirigidas al endpoint cero del dispositivo. Para que este proceso termine satisfactoriamente, el dispositivo debe responder a cada solicitud retornando la información pedida y realizando las tareas solicitadas. Típicamente el firmware de un dispositivo contiene toda la información que el host puede solicitar pero no debe asumir que el proceso va a ocurrir en un orden determinado Descriptores. Los descriptores son estructuras de datos o bloques de información, que le permiten al host aprender del dispositivo. Cada descriptor contiene información del dispositivo en su totalidad o de un elemento del dispositivo. Son solicitados durante el proceso de enumeración por el host utilizando transferencias del tipo de control. A medida que el proceso de enumeración progresa la solicitud de descriptores se concentra en características más específicas: primero en todo el dispositivo, después en cada configuración, posteriormente en la configuración de cada interfaz, y finalmente, en los endpoint de cada interfaz. El descriptor tiene un registro que indica el tamaño en bytes del mismo llamado blength. En la tabla 8 se muestran los distintos tipos de descriptores, en dicha tabla la columna bdescriptor Type contiene un valor hexadecimal que identifica el tipo de descriptor. Tabla 8. Se muestran los tipos de descriptores bdescriptor Tipo descriptor. Requerido? 01h Dispositivo. Sí. 02h Configuración. Sí. 03h string No. Texto descriptivo opcional. 04h Interfaz. Sí. 05h 06h 07h Endpoint. device qualifier. other_speed_configuration No, si el dispositivo únicamente usa endpoint 0. Sí, para dispositivos que soportan full y high speed. Sí, para dispositivos que soportan full y high speed. 08h interface_power No. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 46

47 09h OTG Solo para dispositivos OTG. 0Ah debug No. 0Bh interface_association Para dispositivos compuestos. A continuación se describen los principales tipos de descriptores: Descriptor de dispositivo: contiene información básica acerca del dispositivo, al conectarse un dispositivo, este es el primer descriptor que el host solicita. Un dispositivo puede tener un sólo descriptor de este tipo. Estos descriptores proveen información general acerca del fabricante, número de producto, número de serie, clase de dispositivo y el número de configuraciones admitidas. A continuación se indican los elementos que forma parte del descriptor de dispositivo: - bcdusb: indica la versión en BCD, ej versión 2.0 se indica 0200h - idvendor: el host tiene un archivo.inf que contiene este valor - idproduct: identificación del producto - bcddevice: versión del producto en BCD - imanufacturer: es un índice que apunta a una descripción del fabricante - iproduct: índice que apunta a una descripción del producto - iserialnumber: un índice que apunta al número de serie del dispositivo Descriptor de configuración: Provee información acerca de los requerimientos de alimentación del dispositivo y cuantas interfaces son soportadas. Puede existir más de una configuración para un dispositivo, aunque típicamente se utiliza una. - bnumconfigurations: número de configuraciones que soporta el dispositivo - bmaxpacketsize0: el tamaño máximo de paquete para el endpoint 0. Para full speed se puede usar hasta 64 - bdeviceclass: para dispositivos cuya función es definida a nivel de dispositivo. Por Ejemplo un hub o un controlador wireless - bdevicesubclass: es una subclase de una clase, ejemplo controlador RF es una subclase del controlador wireless - bdeviceprotocol: indica el protocolo de la clase, ejemplo bluetooth para un controlador wireless. Descriptor de endpoint: identifican el tipo de transferencia, su sentido y otros datos específicos de un endpoint. En un dispositivo puede haber varios endpoints y pueden compartir distintas configuraciones. Descriptor String : son descriptores opcionales, proveen información descriptiva acerca de una característica del dispositivo. Adicionalmente a los descriptores estándar, un dispositivo puede contener descriptores específicos del fabricante. Estos descriptores ofrecen una vía estructurada para que el dispositivo pueda proporcionar información detallada sobre sí mismo. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 47

48 5.5. Registros asociados al módulo USB Registro del ID del periférico (PER_ID) La Figura 45 ilustra sobre el registro del ID del periférico del módulo USB. Figura 45. Registro de ID del Periférico IDx: Bits para la identificación del periférico. Por defecto siempre se lee como un periférico 0x Registro de ID complementario (ID_COMP) La Figura 46 ilustra sobre el registro de ID complementario del módulo USB. Figura 46. Registro ID complementario NIDx: Bits como complemento a 1 del ID del periférico Registro de la revisión del periférico(rev) La Figura 47 ilustra sobre el registro de revisión del módulo USB. Figura 47. Registro de Revisión del USB REVx: Bits que indican el número de revisión del núcleo del USB Registro de información adicional del periférico (ADD_INFO) La Figura 48 muestra el registro de información adicional del módulo USB. Descripción General de un Microcontrolador (Módulos de Comunicación) Página 48

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 7.- Módulo Serial Sincrónico de Comunicaciones

Más detalles

COMUNICACIÓN SERIAL FAMILIA DSP56800: Síncronas y Asíncronas CAPÍTULO VII

COMUNICACIÓN SERIAL FAMILIA DSP56800: Síncronas y Asíncronas CAPÍTULO VII Página 1 de 21 INTRODUCCIÓN CAPÍTULO VII El intercambio de información digital entre un procesador y los periféricos puede ser de dos formas: de manera paralela o serial. La primera implica el envió simultáneo

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 6.- Módulo Serial Asincrónico de Comunicación

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 8.- Inter Integrated Circuit Interface I2C MMIIC

Más detalles

I2C. Ing. Pablo Martín Gomez pgomez@fi.uba.ar

I2C. Ing. Pablo Martín Gomez pgomez@fi.uba.ar I2C Ing. Pablo Martín Gomez pgomez@fi.uba.ar 1 Comunicaciones en un bus serie 2 Comunicaciones en un bus serie 3 I²C Velocidad 4 UART Universal Asynchronous Receiver Transmitter Estándar de comunicación

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 8.- Inter Integrated Circuit Interface I2C MMIIC

Más detalles

Protocolo USB CDM 2012. 22/11/2012 Autor: Ing. Jorge R. Osio 1

Protocolo USB CDM 2012. 22/11/2012 Autor: Ing. Jorge R. Osio 1 Protocolo USB CDM 2012 1 Temario Prestaciones del protocolo Principales características Elementos de una transferencia USB Enumeración de dispositivos 2 Prestaciones del protocolo Soporta variedad de dispositivos

Más detalles

SPI. Teoría y Aplicaciones. INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Protocolo

SPI. Teoría y Aplicaciones. INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Protocolo Protocolo SPI INGENIERIA EN MICROCONTROLADORES Protocolo SPI( Serial Peripherical Interface) Teoría y Aplicaciones INGENIERÍA EN MICROCONTROLADORES Curso de Redes de Microcontroladores PIC (Protocolo SPI)

Más detalles

El Protocolo SPI. IES Juan de la Cierva. Aprendizaje de la Electrónica a través de la Robótica. Fernando Remiro Domínguez

El Protocolo SPI. IES Juan de la Cierva. Aprendizaje de la Electrónica a través de la Robótica. Fernando Remiro Domínguez El Protocolo SPI IES Juan de la Cierva Aprendizaje de la Electrónica a través de la Robótica Fernando Remiro Domínguez Serial Periferical Interface (SPI) SPI es un bus de tres líneas, sobre el cual se

Más detalles

USB. Teoría. INGENIERIA EN MICROCONTROLADORES Protocolo USB (UNIVERSAL SERIAL BUS) Protocolo

USB. Teoría. INGENIERIA EN MICROCONTROLADORES Protocolo USB (UNIVERSAL SERIAL BUS) Protocolo Protocolo USB INGENIERIA EN MICROCONTROLADORES Protocolo USB (UNIVERSAL SERIAL BUS) Teoría PROTOCOLO USB www.i-micro.com Ingeniería en Microcontroladores Teléfono 044 55 11 29 55 05 E-mail: cursos@i-micro.com

Más detalles

CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata

CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata Contacto: jorge.osio@ing.unlp.edu.ar 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 Temario

Más detalles

TEMA 20.0. EL BUS I 2 C (Inter Integrated Circuit Bus) I2C EN C

TEMA 20.0. EL BUS I 2 C (Inter Integrated Circuit Bus) I2C EN C TEMA 20.0 EL BUS I 2 C (Inter Integrated Circuit Bus) I2C EN C La comunicación n serie en los PIC 16F87X Los microcontroladores PIC de la familia 16F78x, tienen la posibilidad de comunicación serie, las

Más detalles

Comunicación Serie IIC: Inter-Integrated Circuit

Comunicación Serie IIC: Inter-Integrated Circuit Comunicación Serie IIC: Inter-Integrated Circuit IIC: Inter-Integrated Circuit I2C es un bus serial, multi-master, de baja velocidad (de 10 a 400kbps), creado por Philips. El objetivo es facilitar la conexión

Más detalles

Memoria 24LC256 I. I NTRODUCCIÓN

Memoria 24LC256 I. I NTRODUCCIÓN 1 Memoria 24LC256 I. I NTRODUCCIÓN I2C es un bus de comunicación serial sincrónica desarrollado por Phillips Semiconductors a principios de los años 80 s, con la principal intención de interconectar una

Más detalles

Microprocesadores, Tema 8:

Microprocesadores, Tema 8: Microprocesadores, Tema 8: Periféricos de Comunicación Síncronos Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Standard de Comunicación Protocolos Standard de Comunicación Serie Síncrona

Más detalles

USB. Ing. Pablo Martín Gomez pgomez@fi.uba.ar

USB. Ing. Pablo Martín Gomez pgomez@fi.uba.ar USB Ing. Pablo Martín Gomez pgomez@fi.uba.ar 1 USB Historia Introducido y estandarizado por un grupo de compañias Compaq, DEC, IBM, Intel, Microsoft, NEC, HP, Lucent, Philips y Nortel) en 1995 La idea

Más detalles

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA. JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5.

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA. JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5. ARQUITECTURAS DE COMPUTADORES 2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 5 ENTRADA/SALIDA JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 5. Unidad de E/S 1 Unidad de E/S Indice Introducción.

Más detalles

Trabajo 3. PROTOCOLOS DE COMUNICACIÓN SERIAL INDUSTRIALES Edwin Gilberto Carreño Lozano, Código: 2090454.

Trabajo 3. PROTOCOLOS DE COMUNICACIÓN SERIAL INDUSTRIALES Edwin Gilberto Carreño Lozano, Código: 2090454. Trabajo 3. PROTOCOLOS DE COMUNICACIÓN SERIAL INDUSTRIALES Edwin Gilberto Carreño Lozano, Código: 2090454. I. OBJETIVO Hacer un resumen acerca de los protocolos RS232, RS485, RS422 y HART; protocolos de

Más detalles

MODBUS INDICE. Centro Integrado Politécnico ETI Departamento de Electricidad Fernando Pascual Moisés Pérez MODBUS 1. CARACTERÍSTICAS DEL BUS

MODBUS INDICE. Centro Integrado Politécnico ETI Departamento de Electricidad Fernando Pascual Moisés Pérez MODBUS 1. CARACTERÍSTICAS DEL BUS INDICE 1. CARACTERÍSTICAS DEL BUS 2. PROTOCOLOS 3. CARACTERÍSTICAS DE LOS MENSAJES ENVIADOS 4. INSTRUCCIÓN PMCR 5. EJEMPLO DE APLICACIÓN a. Configuración puerto SCU41 b. Configuración variador V1000 c.

Más detalles

Utilización de los puertos serial y paralelo de una PC usando LabView

Utilización de los puertos serial y paralelo de una PC usando LabView Universidad del Táchira Departamento de Ingeniería Electrónica Instrumentación Electrónica Utilización de los puertos serial y paralelo de una PC usando LabView Hecho Por: Ing. Rafael Chacón Ing. José

Más detalles

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata Características del datalogger autónomo EJERCICIO: El datalogger o registrador debe sensar la temperatura ambiente cada 1s y guardarla junto a la fecha y hora de adquisición en un archivo.txt alojado en

Más detalles

Adaptador USB a LPT para la recuperación de equipos de rehabilitación

Adaptador USB a LPT para la recuperación de equipos de rehabilitación Adaptador USB a LPT para la recuperación de equipos de rehabilitación Javier Barragan; Fernando Anaut, Jorge Osio* 1 ; José Rapallini 1 ; Flavio Ferrari 2 ; Facultad de Ingeniería - Universidad Nacional

Más detalles

BUS I2C. IES Los Viveros Sevilla Dpto. Electrónica. 1

BUS I2C. IES Los Viveros Sevilla Dpto. Electrónica. 1 BUS I2C Se trata de un protocolo serie desarrollado por Philips Semiconductors usado por muchos integrados para comunicarse entre ellos, para su funcionamiento requiere sólo dos líneas, una de reloj (SCL)

Más detalles

CAPÍTULO 3 LA COMUNICACIÓN SERIAL

CAPÍTULO 3 LA COMUNICACIÓN SERIAL CAPÍTULO 3 LA COMUNICACIÓN SERIAL 3.1 Introducción. La historia de las comunicaciones se remonta a 1810 cuando un señor alemán de apellido Von Soemmering, utilizó 26 cables (1 por cada letra del alfabeto)

Más detalles

Lector de tarjetas SD en microcontrolador NXP. Ing. Luis Antonini*; Ing. Jorge Osio*; Ing. Jose Rapallini

Lector de tarjetas SD en microcontrolador NXP. Ing. Luis Antonini*; Ing. Jorge Osio*; Ing. Jose Rapallini Segundas Jornadas de Investigación y Transferencia - 2013 Lector de tarjetas SD en microcontrolador NXP Ing. Luis Antonini*; Ing. Jorge Osio*; Ing. Jose Rapallini Centro de Técnicas Analógico Digitales

Más detalles

Instrucciones de Comunicaciones

Instrucciones de Comunicaciones Guía Rápida Instrucciones de Comunicaciones Introducción Guía Rápida Puertos lógicos (Asignación automática). Instrucciones de red. Instrucción para macros. Instrucciones para comunicaciones serie. OMRON

Más detalles

COMUNICACIONES. Medios para transmitir señales: Conexión por lazo de corriente 4 20 ma. Transmisión analógica: corriente proporcional a una magnitud

COMUNICACIONES. Medios para transmitir señales: Conexión por lazo de corriente 4 20 ma. Transmisión analógica: corriente proporcional a una magnitud PLCs COMUNICACIONES Introducción Medios para transmitir señales: Conexión por lazo de corriente 4 20 ma Transmisión analógica: corriente proporcional a una magnitud Extremo receptor incluye un conversor

Más detalles

AUTOMATIZACIÓN - CURSO: 2010-2011- Práctica 4: Sistema de Monitorización de tiempo mediante Arduino

AUTOMATIZACIÓN - CURSO: 2010-2011- Práctica 4: Sistema de Monitorización de tiempo mediante Arduino AUTOMATIZACIÓN - CURSO: 2010-2011- Juan Antonio Corrales Ramón Carlos Alberto Jara Bravo Fernando Torres Medina Grupo de Innovación Educativa en Automática Departamento de Física, Ingeniería de Sistemas

Más detalles

Tema 5. Interfazes de la Capa Física. 1. RS-232 2. RS-422 y RS-485

Tema 5. Interfazes de la Capa Física. 1. RS-232 2. RS-422 y RS-485 Tema 5. Interfazes de la Capa Física 1. RS-232 2. RS-422 y RS-485 Interfazes de la Capa Física. Norma RS-232 La norma RS-232 fue definida originariamente como una interfaz estándar para conectar un equipo

Más detalles

SiAM Conversor Versión 2.0. siam CONVERSOR EXTERNO RS232-RS485 AUTO-VELOCIDAD AUTO-RTS. software i automatismes morvedre. Manual del usuario

SiAM Conversor Versión 2.0. siam CONVERSOR EXTERNO RS232-RS485 AUTO-VELOCIDAD AUTO-RTS. software i automatismes morvedre. Manual del usuario CONVERSOR EXTERNO RS232-RS485 AUTO-VELOCIDAD AUTO-RTS CARACTERÍSTICAS Conversor RS232/RS485 externo con detección automática de la transmisión (Auto-RTS) y detección automática de la velocidad (Auto-Velocidad)

Más detalles

TEMA 3: Buses, puertos e interfaces

TEMA 3: Buses, puertos e interfaces TEMA 3: Buses, puertos e interfaces Contenidos 1. Introducción. de buses. 3. Jerarquía de buses. 4. Ejemplos de buses. 5. Puertos e interfaces. 6. Ejemplos de puertos e interfaces. Periféricos de Computadores

Más detalles

TUTORIAL Comunicación Serial

TUTORIAL Comunicación Serial 1 TUTORIAL Comunicación Serial OBJETIVOS Manejar el módulo USART para comunicaciones seriales asíncronas. Realizar transmisiones y recepciones seriales útiles para el control y monitoreo de eventos. INTRODUCCIÓN:

Más detalles

T-92, S.L. Interfaz USB V 2.0 Acceso a Internet. Número de referencia de la Interfaz de Acceso

T-92, S.L. Interfaz USB V 2.0 Acceso a Internet. Número de referencia de la Interfaz de Acceso T-92, S.L. Interfaz USB V 2.0 Acceso a Internet Número de referencia de la Interfaz de Acceso Versión Descripción del cambio Páginas afectadas Fecha de la versión V.1.1 Primera publicación de la Interfaz

Más detalles

Entrada salida y comunicación

Entrada salida y comunicación Entrada salida y comunicación E/S de los computadores Introducción: Variedad de dispositivos. Modo de transfer. Tipo de información. Diferencias de velocidades (tasas de transferencias). Ejemplos de periféricos:

Más detalles

64 x 8 Serial Real Time Clock

64 x 8 Serial Real Time Clock 64 x 8 Serial Real Time Clock DS1307 DESCRIPCIÓN El DS1307 Real-Time-Clock Serie, es un dispositivo de bajo consumo de energía, completo con código binario decimal (BCD), reloj/calendario más 56 bytes

Más detalles

Slicetex Ladder Designer Studio NOTA DE APLICACIÓN. AN028 Bus de Comunicaciones I2C

Slicetex Ladder Designer Studio NOTA DE APLICACIÓN. AN028 Bus de Comunicaciones I2C Slicetex Ladder Designer Studio NOTA DE APLICACIÓN AN028 Bus de Comunicaciones I2C Autor: Ing. Boris Estudiez Modelos Aplicables AX, CX y DX 1 Descripción General La presente nota de aplicación explica

Más detalles

BUS I2C: IMPLEMENTACIÓN PRÁCTICA CON MICROCONTROLADORES PIC MEMORIAS EEPROM SERIE

BUS I2C: IMPLEMENTACIÓN PRÁCTICA CON MICROCONTROLADORES PIC MEMORIAS EEPROM SERIE BUS I2C: IMPLEMENTACIÓN PRÁCTICA CON MICROCONTROLADORES PIC MEMORIAS EEPROM SERIE Fernando Nuño García 1 Ventajas del BUS I2C Definido inicialmente a mediados de los 80 para trabajar a 100kbit/s y en 1995

Más detalles

CONVERSOR EXTERNO RS232-RS485/RS422 AUTO-VELOCIDAD AUTO-RTS

CONVERSOR EXTERNO RS232-RS485/RS422 AUTO-VELOCIDAD AUTO-RTS CONVERSOR EXTERNO RS232-RS485/RS422 AUTO-VELOCIDAD AUTO-RTS CARACTERÍSTICAS Conversor RS232-RS485/RS422 externo con detección automática de la transmisión (Auto-RTS) y detección automática de la velocidad

Más detalles

MONITOR ROM MODULE (MON08)

MONITOR ROM MODULE (MON08) ROM MODULE (MON08) Que es el Monitor ROM?? Es un módulo exclusivo de la familia HC908 FLASH de Freescale, que permite forzar al MCU a un estado especial de comunicación con el mundo exterior. Este modo

Más detalles

GENERADOR DE SECUENCIAS PROGRAMADAS PARA LA VERIFICACIÓN DE SISTEMAS DIGITALES GSProg

GENERADOR DE SECUENCIAS PROGRAMADAS PARA LA VERIFICACIÓN DE SISTEMAS DIGITALES GSProg GENERADOR DE SECUENCIAS PROGRAMADAS PARA LA VERIFICACIÓN DE SISTEMAS DIGITALES GSProg JOSE LUIS SALAZAR MONTES GABRIEL ALEJANDRO TOVAR TORRES PONTIFICIA UNIVERSIDAD JAVERIANA FACULTAD DE INGENIERÍA CARRERA

Más detalles

DISPOSITIVO DE ALMACENAMIENTO ESTANDAR PARA SOLUCION EMBEBIDA

DISPOSITIVO DE ALMACENAMIENTO ESTANDAR PARA SOLUCION EMBEBIDA DISPOSITIVO DE ALMACENAMIENTO ESTANDAR PARA SOLUCION EMBEBIDA Di Giulio, Pablo Andrés / Grupo T.D.A. / Departamento de Ingeniería Electrónica / U.T.N. Facultad Regional San Francisco CONTEXTO El grupo

Más detalles

Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia

Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Ethernet es el protocolo del nivel de enlace de datos más utilizado en estos momentos. Se han actualizado los estandares

Más detalles

EDU_NA005 Mouse PS/2 Emulado por el EDUKIT08...

EDU_NA005 Mouse PS/2 Emulado por el EDUKIT08... COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones Freescale robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar dilella@arnet.com.ar (MDO_EDUKIT_013)

Más detalles

Sistemas con Microcontroladores y Microprocesadores

Sistemas con Microcontroladores y Microprocesadores Sistemas con Microcontroladores y Microprocesadores Objetivos Al terminar el curso, el estudiante estará capacitado para: 1. Entender funcionalmente cómo trabaja un sistema de computadora: Describir los

Más detalles

TRABAJO PRÁCTICO Nº 6: PUERTO SERIE

TRABAJO PRÁCTICO Nº 6: PUERTO SERIE TRABAJO PRÁCTICO Nº 6: PUERTO SERIE Introducción a las comunicaciones serie Las comunicaciones serie se utilizan para enviar datos a través de largas distancias, ya que las comunicaciones en paralelo exigen

Más detalles

2 Sea una unidad de disco duro de brazo móvil con las siguientes características:

2 Sea una unidad de disco duro de brazo móvil con las siguientes características: 1 Sea una unidad de disco duro de brazo móvil con las siguientes características: 18 superficies, 20.331 cilindros y 400 sectores por pista. Sectores de 1.024 bytes de información neta. Velocidad de rotación:

Más detalles

Electrocomponentes S.A. SASE 2011. Soluciones USB Freescale

Electrocomponentes S.A. SASE 2011. Soluciones USB Freescale Electrocomponentes S.A. SASE 2011 Soluciones USB Freescale Beneficios del USB Puertos RS232 desapareciendo Fácil de Usar Rápido Bajo Costo Confiable Bajo consumo Beneficios del USB Fácil de usar: Una interfase

Más detalles

Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia

Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Fundamentos de Ethernet. Ing. Camilo Zapata czapata@udea.edu.co Universidad de Antioquia Ethernet es el protocolo del nivel de enlace de datos más utilizado en estos momentos. Se han actualizado los estandares

Más detalles

COMUNICACIÓN I2C (INTER-INTEGRATED CIRCUIT)

COMUNICACIÓN I2C (INTER-INTEGRATED CIRCUIT) COMUNICACIÓN I2C (INTER-INTEGRATED CIRCUIT) Centro CFP/ES COMUNICACIÓN I2C 1 VENTAJAS DE LA COMUNICACIÓN I2C COMPARATIVA ESTANDAR DE TRANSMISIÓN 2 DISPOSITIVOS I2C DISPOSITIVOS I2C MAX518 3 DISPOSITIVOS

Más detalles

CAPÍTULO 2. DEFINICIÓN Y TEORIA DE OPERACIÓN DEL BUS CAN

CAPÍTULO 2. DEFINICIÓN Y TEORIA DE OPERACIÓN DEL BUS CAN CAPÍTULO 2. DEFINICIÓN Y TEORIA DE OPERACIÓN DEL BUS CAN 2.1 Qué es CAN? CAN por sus siglas en inglés (Controller Area Network) es un protocolo de comunicación serial orientado a control distribuido en

Más detalles

BUSES GRUPO 8 Miguel París Dehesa Ricardo Sánchez Arroyo

BUSES GRUPO 8 Miguel París Dehesa Ricardo Sánchez Arroyo BUSES GRUPO 8 Miguel París Dehesa Ricardo Sánchez Arroyo - Trabajo de ampliación. BUSES. - 1 INDICE 1. Introducción 2. Integrated Drive Electronics (IDE) (1986) 3. Universal Serial Bus (USB) (1996) 4.

Más detalles

Diseño del módulo RS-232. Por Michael Kusch tintronic@yahoo.com Versión preliminar 0.2

Diseño del módulo RS-232. Por Michael Kusch tintronic@yahoo.com Versión preliminar 0.2 Diseño del módulo RS-. Por Michael Kusch tintronic@yahoo.com Versión preliminar 0. Introducción Muchos microcontroladores poseen una interfaz UART o USART para comunicación serial asincrónica, tipo RS-,

Más detalles

Relación de la RDSI con el modelo de referencia OSI

Relación de la RDSI con el modelo de referencia OSI 5.RDSI. Protocolos 5.1. Modelo de Referencia Características peculiares RDSI no contempladas en OSI 1. Varios tipos de protocolos relacionados. 2. Llamadas multimedia. 3. Conexiones multipunto Relación

Más detalles

Test I2C Documentación Proyecto SISEM 2012 IIE - FING

Test I2C Documentación Proyecto SISEM 2012 IIE - FING Test I2C Documentación Proyecto SISEM 2012 IIE - FING Tutores: Pablo Mazzara Conrado Rossi Integrantes: Martin Ardao Luis Briosso Imanol Calvo Resumen En el siguiente documento se describe el proceso de

Más detalles

USB (Universal Serial Bus)

USB (Universal Serial Bus) USB (Universal Serial Bus) USB es una interfaz para transmisión de datos y distribución de energía que ha sido introducida en el mercado de PC s y periféricos para mejorar las lentas interfaces serie (RS-232)

Más detalles

BUSES. Una comunicación compartida Un conjunto de cables para comunicar múltiples subsistemas. Memoria

BUSES. Una comunicación compartida Un conjunto de cables para comunicar múltiples subsistemas. Memoria BUSES UPCO ICAI Departamento de Electrónica y Automática 1 Qué es un bus? Una comunicación compartida Un conjunto de cables para comunicar múltiples subsistemas Procesador Control Datapath Memoria Entrada

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores 2. La CPU 1. Estructura de la CPU 2. Ciclo de instrucción 3. Interfaz hardware de una CPU 4. Ciclo de reloj, memoria e instrucción Arquitectura de Computadores La CPU - 1 Vamos

Más detalles

Practica de Control y Programación de Robots ROBOT HERMES. Curso 2007-2008

Practica de Control y Programación de Robots ROBOT HERMES. Curso 2007-2008 Practica de Control y Programación de Robots ROBOT HERMES Curso 2007-2008 CAMPUS TECNOLÓGICO DE LA UNIVERSIDAD DE NAVARRA NAFARROAKO UNIBERTSITATEKO CAMPUS TEKNOLOGIKOA Paseo de Manuel Lardizábal 13. 20018

Más detalles

GRUPO SEMILLERO DE BIONANOELECTRÓNICA ING. LEWIN LÓPEZ JULIO 2009

GRUPO SEMILLERO DE BIONANOELECTRÓNICA ING. LEWIN LÓPEZ JULIO 2009 GRUPO SEMILLERO DE BIONANOELECTRÓNICA ING. LEWIN LÓPEZ JULIO 2009 Problema: falta de flexibilidad en la reconfiguración de todo computador MS-DOS Windows 95 facilidad PCI ISA PCMCIA facilidad? 1 USB -

Más detalles

Tema 6. Comunicaciones asíncronas (UART's)

Tema 6. Comunicaciones asíncronas (UART's) Tema 6. Comunicaciones asíncronas (UART's) El receptor/transmisor asíncrono universal (Universal Asynchronous Receiver/Transmitter, UART) es el dispositivo clave de un sistema de comunicaciones serie.

Más detalles

SISTEMAS DIGITALES II MICROPROCESADORES

SISTEMAS DIGITALES II MICROPROCESADORES SISTEMAS DIGITALES II MICROPROCESADORES Tema 3. TÉCNICAS DE ENTRADA/SALIDA SERIE INDICE 1. INTRODUCCIÓN....1 2. SINCRONIZACIÓN EN LA TRANSMISIÓN SERIE....2 2.1 Sincronización de bit...2 2.2 Sincronización

Más detalles

Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA

Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA Experimental III: Introducción a la Microfabricación y FPGA - Instituto Balseiro Mauricio Tosi Diciembre de 2013 Resumen

Más detalles

CAN BUS Controller Area Network:

CAN BUS Controller Area Network: CAN BUS Controller Area Network: Protocolo de comunicación Serie creado en los 80s por Bosch inicialmente para la comunicación entre controles del automóvil. Reduce el cableado y permite agregar funciones

Más detalles

una industria o en lugares remotos, y envía esos datos a una unidad central que realiza el procesamiento de los datos. En la actualidad los

una industria o en lugares remotos, y envía esos datos a una unidad central que realiza el procesamiento de los datos. En la actualidad los SCADA Supervisory Control And Data Acquisition iii Es un sistema ste que colecta datos provenientes e de diferentes e sensores so es en una industria o en lugares remotos, y envía esos datos a una unidad

Más detalles

Control de Motores a Pasos Vía Puerto Serial Miguel Magos Rivera, Ricardo Godínez Bravo

Control de Motores a Pasos Vía Puerto Serial Miguel Magos Rivera, Ricardo Godínez Bravo Control de Motores a Pasos Vía Puerto Serial Miguel Magos Rivera, Ricardo Godínez Bravo Universidad Autónoma Metropolitana-Azcapotzalco. Depto. de Electrónica San Pablo 180 Col. Reynosa. 02200 México D.F.

Más detalles

Control y temporización Comunicación con la CPU Comunicación con el dispositivo externo Almacén temporal de datos Detección de errores

Control y temporización Comunicación con la CPU Comunicación con el dispositivo externo Almacén temporal de datos Detección de errores UNIDAD DE ENTRADA SALIDA Conceptos Unidad de entrada-salida (E/S): Elemento que proporciona un método de comunicación eficaz entre el sistema central y el periférico. Funciones Control y temporización

Más detalles

Sistemas de Almacenamiento y Periféricos. ricos

Sistemas de Almacenamiento y Periféricos. ricos Sistemas de Almacenamiento y Periféricos ricos 1 Sistemas de Almacenamiento y Periféricos ricos -Almacenamiento Interfaces: ATA/IDE, SCSI, SATA Dispositivos: Discos duros, almacenamiento óptico, FLASH

Más detalles

TEMA 3: Control secuencial

TEMA 3: Control secuencial TEMA 3: Control secuencial Esquema: Índice de contenido TEMA 3: Control secuencial...1 1.- Introducción...1 2.- Biestables...3 2.1.- Biestables asíncronos: el Biestable RS...4 2.1.1.- Biestable RS con

Más detalles

Prof. Ing. Miguel Angel Aguilar Ulloa 2009-2010

Prof. Ing. Miguel Angel Aguilar Ulloa 2009-2010 LECCIÓN 4 ARQUITECTURA DE HARDWARE DE LOS SISTEMAS EMPOTRADOS Prof. Ing. Miguel Angel Aguilar Ulloa 2009-2010 Copyright 2009. Ing. Miguel Angel Aguilar Ulloa. Última actualización: 04/10/2009. Usted es

Más detalles

TARJETA CONVERSORA ANALOGA/DIGITAL (A/D)

TARJETA CONVERSORA ANALOGA/DIGITAL (A/D) TARJETA CONVERSORA ANALOGA/DIGITAL (A/D) 1. INTRODUCCIÓN. Un conversor A/D es un dispositivo que mapea una tensión análoga en un código o palabra digital de n bits. Para esto toma muestras de la señal

Más detalles

Especificaciones técnicas. Power, Inputs and Outputs. Operating Voltage Input Voltage (recommended) Input Voltage (limits) Analog Input Pins

Especificaciones técnicas. Power, Inputs and Outputs. Operating Voltage Input Voltage (recommended) Input Voltage (limits) Analog Input Pins Especificaciones técnicas Microcontroller Operating Voltage Input Voltage (recommended) Input Voltage (limits) Digital I/O Pins Analog Input Pins DC Current for I/O Pin DC Current for 3.3V Pin Flash Memory

Más detalles

CONTROLADOR DE TARJETA SD

CONTROLADOR DE TARJETA SD SISTEMAS EMBEBIDOS INFORME PROYECTO 2009: CONTROLADOR DE TARJETA SD GRUPO 1 Nombre CI email Luis Ignacio de León Echarri 4246997-1 roverano8@gmail.com María Cecilia San Román Rincón 3772285-5 cecisr@gmail.com

Más detalles

Convivencia. Gestión del Sistema de Entrada/Salida

Convivencia. Gestión del Sistema de Entrada/Salida Convivencia Gestión del Sistema de Entrada/Salida Dra. Carolina Carolina Mañoso Mañoso Dpto. Dpto. Imformática Informática y y Automática.UNED Introducción (1/2) El sistema de Entrada/Salida es la parte

Más detalles

Capítulo 5 Fundamentos de Ethernet

Capítulo 5 Fundamentos de Ethernet Ethernet, en sus varias formas, es la tecnología de red de área local (LAN) más ampliamente utilizada. Los objetivos de su diseño incluye la simplicidad, un bajo coste, la compatibilidad, el poco retardo

Más detalles

FUNDAMENTOS DE INFORMATICA

FUNDAMENTOS DE INFORMATICA FUNDAMENTOS DE INFORMATICA TEMAS QUE SE TRATARÁN: Arquitectura Interna Sistemas Operativos Programación en Visual Basic Bases de Datos Redes e Internet 1 FUNDAMENTOS DE INFORMATICA Tema 1: Arquitectura

Más detalles

Pines de entrada/salida (I/O) de propósito general. Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos.

Pines de entrada/salida (I/O) de propósito general. Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos. 1 Pines de entrada/salida (I/O) de propósito general Mediante ellos, el micro PIC puede monitorizar y controlar otros dispositivos. Para añadir flexibilidad al micro, muchos de sus pines de entrada/salida

Más detalles

Transmisi n de Datos a Trav s de un PIC

Transmisi n de Datos a Trav s de un PIC Transmisi n de Datos a Trav s de un PIC 4 Introducción Tal como lo dice MICROCHIP en sus páginas Web, y según lo que hemos podido experimentar, los microcontroladores PIC16CXXX son de alto rendimiento

Más detalles

Actividad 4: Comunicación entre PLC s vía Ethernet

Actividad 4: Comunicación entre PLC s vía Ethernet Actividad 4: Comunicación entre PLC s vía Ethernet 1.- Listado de materiales: PC con Tarjeta de red 3com o similar. 2 PLC Omrom CJ1M CPU11 ETN Estos autómatas llevan integrada la tarjeta de comunicaciones

Más detalles

Corporacion Universitaria Autonoma del Cauca EJEMPLARIZACION DE COMUNICACIÓN ENTRE DOS MODOULOS XBEE SERIE 2.

Corporacion Universitaria Autonoma del Cauca EJEMPLARIZACION DE COMUNICACIÓN ENTRE DOS MODOULOS XBEE SERIE 2. EJEMPLARIZACION DE COMUNICACIÓN ENTRE DOS MODOULOS XBEE SERIE 2. RESUMEN Hoy en día son muchos los dispositivos que cumplen la función de comunicarse uno con el otro, siendo útiles y cumpliendo objetivos

Más detalles

APENDICE E: COMUNICACIONES SERIALES VIA RS485

APENDICE E: COMUNICACIONES SERIALES VIA RS485 PENDICE E: COMUNICCIONES SERILES VI 1.0 RESUMEN: (Descripción general) El propósito es permitir monitoreo, programación y supervisión remota de los instrumentos desde un computador personal tipo PC o sencillamente

Más detalles

INTERFACE DE TRANSFERENCIA DE DATOS A TRAVÉS DEL BUS USB

INTERFACE DE TRANSFERENCIA DE DATOS A TRAVÉS DEL BUS USB INTERFACE DE TRANSFERENCIA DE DATOS A TRAVÉS DEL BUS USB Ing.Pedro Ignacio Martos, pmartos@fi.uba.ar Facultad de Ingeniería, Universidad de Buenos Aires Resumen: En aplicaciones de control que requieren

Más detalles

MANUAL USUARIO BASED BY ORIGINAL. PICkit 2

MANUAL USUARIO BASED BY ORIGINAL. PICkit 2 MANUAL USUARIO BASED BY ORIGINAL PICkit 2 PICKIT 2 PLUS programmer es una potente herramienta para la programación de microcontroladores PIC de MICROCHIP, el cual permite programar una gran gama de microcontroladores

Más detalles

Control remoto del EDUKIT08 vía PC...

Control remoto del EDUKIT08 vía PC... COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones Freescale robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar dilella@arnet.com.ar (MDO_EDUKIT_012)

Más detalles

TEMA 6: GESTIÓN DE ENTRADA/SALIDA

TEMA 6: GESTIÓN DE ENTRADA/SALIDA 1. Introducción TEMA 6: GESTIÓN DE ENTRADA/SALIDA Función principal de un S.O.: controlar todos los dispositivos de E/S de la computadora. El Subsistema de E/S se encarga de Emitir órdenes a los dispositivos

Más detalles

BLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores

BLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores SISTEMAS ELECTRÓNICOS DIGITALES BLOQUE 3 MICROCONTROLADORES (PARTE 4) DESARROLLO DE SISTEMAS ELECTRÓNICOS DIGITALES Interrupciones,Temporizadores/Contadores y Puerto serie Enrique Mandado Pérez María José

Más detalles

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida Contenido Sistemas de Categorias de los Dispositivos de En qué se diferencian los dispositivos de? Técnicas para realizar la E/S Interrupciones Interfaces involucradas en E/S Buffering Categorias de los

Más detalles

Interfaces Físicas y Medios de Transmisión. Guillermo E. Gómez - Laboratorio de Comunicaciones - FIUBA

Interfaces Físicas y Medios de Transmisión. Guillermo E. Gómez - Laboratorio de Comunicaciones - FIUBA Interfaces Físicas y Medios de Transmisión Medios de Transmisión Analogicos: POT Digitales: ISDN, RS232, V35, Ethernet Paralelos: Puerto paralelo de una PC Seriales: V35, E1, RS232 Sincrónicos: E1, V35,

Más detalles

USB 3.0 SuperSpeed. t e c n o l o g í a usb

USB 3.0 SuperSpeed. t e c n o l o g í a usb t e c n o l o g í a usb Por José Luis Rupérez Fombellida (España) El Bus Serie Universal (USB) nació en 1996 para conectar fácilmente diferentes dispositivos a un ordenador mediante conexión serie. Desde

Más detalles

Introducción a la Entrada/Salida

Introducción a la Entrada/Salida Introducción a la Entrada/Salida Organización de entrada/salida La familia de procesadores 80x86, presente en el IBM PC, utiliza la arquitectura Von Neumann, que puede verse en la figura 1. El denominado

Más detalles

Práctica 2NivelFisico: Estudio del nivel físico en la RS232 y en la RS485

Práctica 2NivelFisico: Estudio del nivel físico en la RS232 y en la RS485 Práctica 2NivelFisico: Estudio del nivel físico en la y en la RS485 1 Objetivos El objetivo de esta práctica es el estudio físico de la y de la RS485 y su relación cuando conviven en un mismo sistema.

Más detalles

Comunicación NS12 y 3G3MV a través del GateWay

Comunicación NS12 y 3G3MV a través del GateWay Informe Técnico Comunicación Guía entre Rápida NS12 y 3G3MV a través del GateWay 1. Introducción 2. GateWay 3. Conexiones 4. Parametrizaje 3G3MV 5. Software GateWay 6. Configuración del NS 7. Uso de la

Más detalles

DISPLAY LCD MICROPROCESADORES

DISPLAY LCD MICROPROCESADORES Módulo LCD HD4478 de de Hitachi Módulo LCD HD4478 de de Hitachi E R / W D-D7 D-D7 VDD Vo Vss Controlador Controlador del del LCD LCD HD4478 HD4478 Manejador Manejador Del Del LCD LCD Manejador Manejador

Más detalles

Ic-Prog PARA PROGRAMAR MICROCONTROLADORES PIC 16F84 y 16F876.

Ic-Prog PARA PROGRAMAR MICROCONTROLADORES PIC 16F84 y 16F876. Ic-Prog PARA PROGRAMAR MICROCONTROLADORES PIC 16F84 y 16F876. Prof: Bolaños D. En unión del hardware adecuado, el software IC-PROG permite programar gran cantidad de dispositivos electrónicos. Esta guía

Más detalles

DISCOS DUROS. Grupo 11: Arkaitz Lázaro Abel Velasco

DISCOS DUROS. Grupo 11: Arkaitz Lázaro Abel Velasco DISCOS DUROS Grupo 11: Arkaitz Lázaro Abel Velasco Índice: 1. Que es un disco duro? 2. Estructura física de un disco duro 3. Especificaciones hardware fundamentales de un disco duro - El formato físico

Más detalles

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción

Más detalles

Señal de petición de Interrupción

Señal de petición de Interrupción Consideren una tarea que require tomar caracteres desde un teclado y mostrarlos en la pantalla de un monitor. La tasa de transferencia desde un teclado a un computador está limitado por la velocidad del

Más detalles

EL PUERTO PARALELO. Puertos de Entrada / Salida (E/S) Aspectos generales

EL PUERTO PARALELO. Puertos de Entrada / Salida (E/S) Aspectos generales EL PUERTO PARALELO Aspectos generales Puertos de Entrada / Salida (E/S) Los puertos de E/S se constituyen en el medio por el cual el microprocesador de un computador se comunica con su entorno. Existen

Más detalles

Instituto Tecnológico Argentino Técnico en Hardware de PC Plan THP2A03B INTEGRACIÓN ATA

Instituto Tecnológico Argentino Técnico en Hardware de PC Plan THP2A03B INTEGRACIÓN ATA Instituto Tecnológico Argentino Técnico en Hardware de PC Plan THP2A03B Reservados los Derechos de Propiedad Intelectual Tema: Integración ATA Archivo: CAP2A03BTHP0106.doc Clase Nº: 6 Versión: 1.2 Fecha:

Más detalles

Control mediante LABVIEW de un horno de laboratorio

Control mediante LABVIEW de un horno de laboratorio ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES Y DE TELECOMUNICACIÓN Titulación: INGENIERIA TECNICA INDUSTRIAL (ELECTRICIDAD) Título del proyecto: Control mediante LABVIEW de un horno de laboratorio

Más detalles

Capítulo 1: GENERALIDADES DE LA COMUNICACIÓN DE DATOS

Capítulo 1: GENERALIDADES DE LA COMUNICACIÓN DE DATOS Capítulo 1 GENERALIDADES DE LA COMUNICACIÓN DE DATOS 1.1 El Sistema de Comunicación El propósito fundamental de un sistema de comunicación es llevar a cabo el intercambio de datos entre dos o más entes

Más detalles