CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata Contacto: [email protected] 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 Temario Prestaciones. Principales características. Elementos de una transferencia. Enumeración de dispositivos 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2 Prestaciones Una sola interfaz para varios dispositivos. Configuración automática. No requiere alimentación externa. Conexión y desconexión con alimentación. Buena velocidad de transferencia. Cables y conectores estándar. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3 Principales Características Componentes del Bus Dispositivos USB. Dispositivo Host USB. Hub USB. Host Root Hub Dispositivo Dispositivo compuesto Dispositivo Hub Dispositivo Hub Dispositivo 29/08/2012 Dispositivo Autores: Ing. Luis Antonini - Ing. Jorge Osio Dispositivo 4 Principales Características Componentes del Bus Host USB: Responsabilidades. Detección de dispositivos. Proveer alimentación. Administrar el tráfico del bus. Chequeo de errores. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5 Principales Características Componentes del Bus Dispositivos USB: Responsabilidades. Administración de la alimentación. Responder a solicitudes estándar. Chequeo de errores. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6 Principales Características USB On-The-Go (OTG) Permite conectar directamente entre otros periféricos USB. dispositivos sí y con On-The-Go es un suplemento para la especificación USB 2.0 Limitada capacidad de función de host. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7 Principales Características Velocidad de Transferencia Especificación USB 1.0 define: “Low Speed” a 1,5 Mbits/s. “Full Speed” a 12 Mbits/s. Especificación USB 2.0 incorpora: “High Speed” a 480 Mbits/s. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8 Principales Características Eléctricas y Mecánicas A nivel de señal. Transferencias de datos utilizando líneas de datos diferenciales. Para “full speed” y “high speed”: impedancia diferencial de 90 ohm. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9 Principales Características Eléctricas y Mecánicas A nivel eléctrico. Bus USB integrado por cuatro conductores: “Vbus”: línea de alimentación, 5V nominal. “GND”: tensión de referencia. “D+” y “D-”: integran el par de señales diferenciales de datos. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10 Elementos de una Transferencia Endpoints. Pipes. Tipos de Transferencias. Transferencias y transacciones. Fases de una transacción. Chequeo de error. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11 Elementos de una Transferencia Endpoints Buffer que almacena datos. El tráfico viaja desde o hacia los endpoints de cada dispositivo. Contiene datos recibidos o datos a ser transmitidos. La dirección de un endpoint está compuesta por el número de endpoint y su sentido: Número de 1 a 15. Sentido: “in” para transmisión, “out” para recepción. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12 Elementos de una Transferencia Pipes (tuberías) Asociación entre el endpoint de un dispositivo y el software del host. Son establecidas durante el proceso de enumeración. El host las remueve al retirar el dispositivo. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13 Elementos de una Transferencia Tipos de transferencias De control. “Bulk”. “Interrupt”. “Isochronous”. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14 Elementos de una Transferencia Tipos de transferencias Transferencia de control: Utilizadas por el host durante el proceso de enumeración. Es el único tipo definido en la especificación USB. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15 Elementos de una Transferencia Tipos de transferencias Transferencia “Bulk”: Se usa para transferencia masiva de datos en casos que la velocidad de transferencia no sea crítica. Utilizada por dispositivos “full speed” y “high speed”. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16 Elementos de una Transferencia Tipos de transferencias Transferencia “Interrupt”: Utilizada por dispositivos que requieren la atención del host periódicamente. Única forma de transferencia dispositivos “low speed”. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio en 17 Elementos de una Transferencia Tipos de transferencias Transferencia “Isochronous”: Tienen garantizado el tiempo de envió. Sin corrección de errores. Utilizada por dispositivos “full speed” y “high speed”. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18 Elementos de una Transferencia Transferencias y transacciones Transferencia: proceso de establecer transportar las solicitudes de comunicación. y Cada transferencia se forma por una o varias transacciones. Transacción: prestación de un servicio a un endpoint. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 19 Elementos de una Transferencia Transferencias y transacciones Cada Transacción está formada por 1, 2 o 3 paquetes. Cada transacción incluye: Identificación. Chequeo de errores. Información de control. Todos los datos a enviar. Una transacción no puede ser interrumpida. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 20 Elementos de una Transferencia Transferencias y transacciones Fases de una transferencia: Paquete de “Token”. Paquete de datos. Paquetes de “Handshake” 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 21 Elementos de una Transferencia Transferencia Transacción Transacción PID 29/08/2012 Dirección Handshake Datos Token Endpoint CRC Transacción PID Datos CRC Autores: Ing. Luis Antonini - Ing. Jorge Osio PID 22 Elementos de una Transferencia Chequeo de errores Se incorpora en cada paquete bits para el chequeo de errores. Se utiliza el algoritmo llamado “Comprobación de redundancia cíclica” (CRC). 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 23 Enumeración de dispositivos Descripción. Proceso de enumeración. Descriptores. Jerarquía de descriptores. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 24 Enumeración de dispositivos Descripción Utiliza transferencias de control. Asigna una dirección física al dispositivo. Carga el controlador del dispositivo. Selecciona características de operación del dispositivo. Selecciona endpoints a utilizar. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 25 Enumeración de dispositivos Proceso 1. El “root hub” informa al host la conexión del nuevo dispositivo. 2. Se aplica un reset al dispositivo y luego se le asigna una dirección física. 3. El host obtiene información del dispositivo. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 26 Enumeración de dispositivos Proceso 4. Selecciona una característica de operación del dispositivo. 5. Selecciona y configura endpoints a utilizar. 6. Carga el controlador especifico del dispositivo. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 27 Enumeración de dispositivos Descriptores Bloques de información. Describen alguna característica del dispositivo. Son utilizados durante el proceso de enumeración. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 28 Enumeración de dispositivos Descriptores Tipos principales: De dispositivo. De configuración. De interfaz. De endpoint. “String”. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 29 Enumeración de dispositivos Jerarquía de descriptores Descriptor de dispositivo Descriptor de Configuración Descriptor de Interfaz Descriptor de endpoit 29/08/2012 Descriptor de endpoit Descriptor de Configuración Descriptor de Interfaz Descriptor de endpoit Descriptor de endpoit Autores: Ing. Luis Antonini - Ing. Jorge Osio 30 CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 Temario Descripción. Controlador. Funciones del controlador. Estándares. Controlador OHCI. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2 Descripción Procesa y gestiona los cambios de configuración que ocurren en el bus. Administra el sistema y los recursos del bus (memoria del sistema, ancho de banda y la alimentación). Realiza la configuración automática de dispositivos y la detección de su desconexión. los Un host puede soportar uno o más buses USB. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3 Descripción Administra cada bus independientemente de los demás. Cada bus está conectado al host a través de un controlador del host. Sólo hay un host en cada sistema USB. El sistema host abarca: 1. interfaz USB 2. controlador de host (puede estar implementado como combinación de hardware, y software). Posee un hub raíz que provee puntos de interconexión al bus. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4 Controlador Integrado por el hardware y el software que permite la conexión de dispositivos al host. Es el agente iniciador del bus, es decir, que comienza las transferencias en el bus. Es el master en un bus USB. En la arquitectura USB sólo hay un controlador host por cada bus USB (no se requiere arbitraje). 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5 Funciones del Controlador A nivel hardware El host USB interactúa con los dispositivos USB a través del controlador, cuyas funciones básicas son: Detectar la inserción o desconexión de dispositivos USB Reconocer los dispositivos conectados y realizar la configuración. Administrar el flujo de control entre el host y los dispositivos, es decir, la información que se mueve con el objeto de mantener el orden dentro de los elementos del sistema. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6 Funciones del Controlador A nivel hardware Gestionar el flujo de datos entre el host y los dispositivos. Determinar estadísticas de actividad y estado de los elementos del sistema. Proveer una cantidad limitada de energía a los dispositivos conectados. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7 Funciones del Controlador A nivel software Enumeración y configuración de los dispositivos conectados al sistema. Administración y control de transferencias síncronas de información. Administración asíncronas. 29/08/2012 y control de transferencias Autores: Ing. Luis Antonini - Ing. Jorge Osio 8 Estándares Universal Host Controller Interface (UHCI). Definido por Intel, requiere licencia. El software tiene mayor responsabilidad. Open Host Controller Interface (OHCI). Licencia libre. El hardware tiene mayor responsabilidad. Mayor dificultad de implementación. Enhanced Host Controller Interface (EHCI). Describe la interfaz para el host a nivel de registros Licenciada por intel 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9 Controlador OHCI Descripción a nivel de registros para implementación de un controlador Host USB. la Permite diseñar una interfaz de software común para diferentes fabricantes de controladores Host USB. Facilita la tarea de escritura del código de aplicación. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10 Controlador OHCI Software de Aplicación Software Driver del controlador Ámbito de la especificación OHCI Controlador host Hardware Dispositivo USB 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11 Implementación Diseño del PCB Consideraciones para “full speed”: Impedancia diferencial de 90 ohm entre las líneas D+ y D-. Plano de tierra continuo. Líneas paralelas. Evitar utilizar vias. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12 Calculo de la impedancia W S W diferencial Plano de tierra T H Se calcula considerando la formula de la impedancia diferencial de dos líneas de microtira sobre un plano de tierra. Ejemplo: Para T=0,65 mils (1/2 OZ cobre) y H=62 mils se obtiene que W=16 mils y S=7 mils. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13 CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 Temario Características principales. Descripción de la interfaz. Protocolo de bus SPI. Protocolo de bus SD. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2 Características Principales Las tarjetas “Secure Digital”, SD, son tarjetas de memoria basadas en la tecnología flash. Diseñadas específicamente para satisfacer necesidades de seguridad, capacidad y performance. Actualmente se utilizan en aplicaciones de almacenamiento masivo. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3 Características Principales Tensión de alimentación: 2.7 a 3.6 V. Funcionamiento: sólo lectura o lectura y escritura. Velocidad del bus (utilizando 4 líneas de datos paralelas). Por defecto: con señales de 3.3V, frecuencia hasta 25 MHz, hasta 12.5 Mb/s. Modo de alta velocidad: con señales de 3.3 V, frecuencia hasta 50 MHz, hasta 25 Mb/s. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4 Características Principales Corrección de errores: en cada transferencia de datos o comandos. Protección contra escritura: utilizando mecánico o configuración interna. switch Detección de tarjetas: cuando se insertan o retiran, el host detecta esta acción. Comando específicos para la aplicación. Incorporan contenido. 29/08/2012 mecanismos para protección Autores: Ing. Luis Antonini - Ing. Jorge Osio de 5 Características Principales Capacidad de las memorias: Capacidad estándar (SDSC): hasta 2 GB. Alta capacidad (SDHC): más de 2 GB hasta los 32 GB. Capacidad extendida (SDXC): más de 32 GB. Modo de operación: el bus de datos tiene dos modos de configuración y operación, el modo SD y el modo SPI. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6 Características Principales Clases de tarjetas: de acuerdo a su velocidad, indican la performance mínima de una tarjeta. Clase 0: esta clase no especifica performance, se define para incluir a todas las tarjetas anteriores a la especificación. Clase 2: tienen una performance de 2 MB/s o más. Clase 4: tienen una performance de 4 MB/s o más. Clase 6: tienen una performance de 6 MB/s o más. Clase 10: tienen una performance de 10 MB/s o más. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 7 Características Principales Las tarjetas SD contienen un microprocesador que le otorga algunas características específicas propias de esta interfaz: Independencia del host en relación con los detalles de la forma de borrado y programación de la memoria flash. Sistema de corrección de errores. Control de la alimentación para reducción del consumo. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8 Características Principales Soporte al requerimiento de conexión en caliente, “hot insertion”, a través del conector. El bus de las tarjetas SD está integrado por un único máster (el host) y múltiples esclavos (las tarjetas). Las líneas de alimentación y reloj son comunes a todas las tarjetas, la línea de comando y de datos pueden o no ser común a todas las tarjetas. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9 Descripción de la interfaz Las tarjetas SD tienen nueve contactos ubicados en una de sus caras. Una línea de reloj, tres de alimentación, cuatro de datos y una de comando. Protocolos de comunicación: SD de 4 bits. SD de 1 bit. SPI. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10 Descripción de la interfaz Arquitectura interna de una tarjeta SD 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11 Descripción de la interfaz Topología del bus en el modo SD de 4 bits. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12 Descripción de la interfaz Topología del bus en el modo SPI. VDD HOST 8 7 MISO 6 CLK 5 4 3 MOSI CS 2 1 9 VSS 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13 Protocolo de bus SPI Basado en un subconjunto del protocolo SD. El estándar SPI sólo define la topología física. La ventaja de su utilización es la sencillez de la interfaz a nivel hardware. Su mayor desventaja es la perdida de performance. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14 Protocolo de bus SPI Cada comando o bloque de datos está constituido por 8 bytes en sincronía con la señal de la línea CS. Los mensajes SPI se integran por comandos, respuestas y bloques de datos. Toda comunicación tiene lugar entre una tarjeta y el host, este último da inicio a la comunicación al cambiar el estado de la línea CS a bajo. La tarjeta elegida siempre debe responder al comando. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15 Protocolo de bus SD Basada en un protocolo de comando y respuesta. Los comandos o secuencias de datos inician con un bit de inicio y terminan con un bit de finalización. Cada trama contiene bits de detección de errores. Partes integrantes de una transferencia: Comando. Respuesta. Datos. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16 Protocolo de bus SD Del host a la tarjeta(s) CMD Del host a una tarjeta Comando De una tarjeta al host Comando Respuesta DAT Operación (sin respuesta) Operación (sin datos) Operación sin respuesta y sin datos Del host a la tarjeta Comando CMD DAT De la tarjeta Datos de la al host tarjeta al host Comando Respuesta Bloque datos crc Comandos de parada Finalización de la transferencia Bloque datos crc Operación lectura de un bloque Respuesta Bloque datos crc Operación de parada Operación lectura de múltiples bloques Operación de lectura 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 17 Protocolo de bus SD Descripción de funcionamiento Existen dos tipos de comandos: Comandos de broadcast. Comandos de direccionamiento. Existen dos modos de funcionamiento para las tarjetas SD y para el host: Modo identificación de tarjeta. Modo transferencia de datos. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18 Protocolo de bus SD Modos de operación Modo de operación Inactivo Modo de identificación de tarjeta Modo de transferencia de datos 29/08/2012 Estado de la tarjeta Estado inactivo “Idle State” “Ready State" “Identification State” “Stand-by State” “Transfer State” “Sending-data State” “Receive-data State” “Programming State” “Disconnect State” Autores: Ing. Luis Antonini - Ing. Jorge Osio 19 Protocolo de bus SD Modo identificación de tarjeta El proceso de identificación se realiza a una frecuencia de reloj entre 100 y 400 kHz. Activado el bus, el host solicita las condiciones de operación de cada tarjeta. Se analiza cada respuesta y se envía al estado inactivo a las tarjetas incompatibles y al estado “Ready State” a las compatibles. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 20 Protocolo de bus SD Proceso de identificación Power CMD 0 “Idle State” CMD 8 Resp.? NO SI Tarjeta SDHC Tarjeta SDSC ACMD 41 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 21 Protocolo de bus SD Proceso de identificación ACMD 41 Busy? SI NO CMD 2 CMD 3 GET RCA CMD 9 GET CSD GET CID CMD 7 “Stand – by” CMD 16 Tamaño de bloque 29/08/2012 ACMD 6 4 Bits Modo de transferencia Autores: Ing. Luis Antonini - Ing. Jorge Osio 22 Protocolo de bus SD Modo transferencia de datos Sólo una tarjeta pueda estar en el modo de transferencia al mismo tiempo. Las restantes deben encontrarse en el estado “Stand - by”. El ancho del bus durante el proceso de configuración es de un bits. Finalizado este proceso correctamente, el host, puede cambiar el ancho del bus a cuatro bits. Frecuencia de reloj máxima 50 MHz. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 23 Protocolo de bus SD Modo transferencia de datos Poseen dos escritura: mecanismos de protección contra Mecánica: por una ranura en el costado de la tarjeta que, el conector, debe chequear. Interna: protegida permanentemente fabricante o por password. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio por el 24 Protocolo de bus SD Condiciones de error Todos los comandos y paquetes de datos son protegidos utilizando bits de CRC. Si falla el chequeo de estos bits la tarjeta no responde, el comando no se ejecuta y, por lo tanto, la tarjeta nunca cambia de estado. Cada comando se deberá ejecutar en un tiempo determinado o, de lo contario, enviar un mensaje de error. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 25 Protocolo de bus SD Comandos y respuestas Longitud fija de 48 bits, protegido por CRC. Incluyen un bit que indica la dirección de transmisión, el sentido hacia el host se indica con “1”. Formato general de un comando: Posición de bits Ancho (bits) Valor Descripción 29/08/2012 47 46 [45:40] [39:8] [7:1] 0 1 1 6 32 7 1 „1‟ Bit de inicio „0‟ x x x „1‟ Bit de Índice de Bit de Argumento CRC7 transmisión comando finalización Autores: Ing. Luis Antonini - Ing. Jorge Osio 26 Protocolo de bus SD Comandos y respuestas Tipos de respuestas: Tipo R1: envía el estado de la tarjeta. Tipo R2: tamaño de 136 bits. Envía el registro CID o CSD. Tipo R3: no tiene bits de CRC. Envía el registro OCR. Tipo R6: respuesta a la solicitud de RCA. Tipo R7: indica la tensión de alimentación soportada por la tarjeta. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 27 Protocolo de bus SD Registros Se definen seis registros dentro de una tarjeta: Registro OCR: almacena el perfil de alimentación de la tarjeta. Registro CID: contiene identificación de la tarjeta. información sobre Registro CSD: define el formato de los datos, tipo de corrección de errores, tiempo de acceso de los datos. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 28 Protocolo de bus SD Registros Registro RCA: almacena la dirección relativa de la tarjeta. Registro DSR: opcional. Especifica características extendidas del bus. Registro SCR: opcional. Especifica características opcionales del fabricante. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 29 CeTAD (Centro de Técnicas Analógico Digitales) Facultad de Ingeniería Universidad Nacional de La Plata 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 1 Implementación Microcontrolador NXP LPC2300/2400 Arquitectura ARM7. Controlador USB 2.0 “full speed”: Dos puertos USB. Operables como dispositivo, host u OTG. Memoria RAM dedicada de 16 Kbits. El controlador host USB utiliza el estándar OHCI. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 2 Implementación Microcontrolador NXP LPC2300/2400 Controlador SD y MMC. Secure Digital Memory Card Physical Specification, v0.96. Operable como host SD para una única tarjeta. Control de la alimentación por un pin perteneciente al controlador. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 3 Diagrama en bloques del controlador Host USB LPC2300/2400. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 4 Circuito esquemático LPC2300 LPC2400 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 5 Diagrama en bloques del controlador SD LPC2300/2400. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 6 Circuito esquemático. Líneas de datos D[0:3] Línea de Comando WP LPC 2300 LPC 2400 CP Ena OUT Power 29/08/2012 Conector SD IN 3,3V Autores: Ing. Luis Antonini - Ing. Jorge Osio 7 Notas de aplicación. NXP USB Host Lite (AN10703). Librerias “Description of the LPC23xx/24xx Example Software Package” NXP. Librería FAT FS. Aplicación de lector SD y sistema de archivo FAT 32 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 8 Ejemplo de Implementación. Kit de desarrollo Diseño propio utilizando microcontrolador NXP LPC2478. Incluye: Implementación de un host USB con dos puertos operable en “full speed”. Alimentación de cada puerto controlada y protegida por sobre corriente. Implementación de host SD con detección de inserción de tarjeta y protección contra escritura en forma mecánica. Programación en sistema por puerto serie. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 9 Kit de desarrollo 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 10 Interfaz USB 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 11 Aplicación Host USB y SD Frecuencia de reloj del sistema de 66 MHz. Se configura el controlador Host USB y se da soporte a dispositivos de la clase de almacenamiento masivo. Configuración del controlador SD. Reconoce tarjeta SDSC y SDHC. Frecuencia de reloj de 16,5 MHZ en modo de transferencia. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 12 Aplicación Host USB y SD Controlado por cuatro pulsadores. Visualización desde la PC. Reloj de tiempo real. Sistema de archivo FAT32. Accede a la memoria de dispositivos almacenamiento masivo y tarjetas SD. de Permite listar, copiar y eliminar archivos y carpetas. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 13 Kit de desarrollo con dispositivos 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 14 Resultados Obtenidos. Se comprueba el funcionamiento del sistema desarrollado copiando un archivo de 29,360 Mb de un pen drive a otro o desde la tarjeta hacia un pen drive. Copia exitosa libre de errores. Correcto funcionamiento de la interfaz USB. Excelente desempeño de la interfaz SD. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 15 Resultados Obtenidos. Tiempo de transferencia 29/08/2012 Transferencia Tiempo (segundos) desde hacia 60 USB 1 ó USB 2 SD 58 SD USB 1ó USB 2 50 SD SD 93 92 USB 1 USB 2 USB 2 USB 1 Autores: Ing. Luis Antonini - Ing. Jorge Osio 16 Conclusiones. A nivel hardware: Sencillez de diseño. Escasos componentes adicionales. A nivel software: Código de programa portable. Sencilla utilización del microcontrolador. Buen desempeño. Numerosos errores en notas de aplicación. 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 17 ¿Preguntas? 29/08/2012 Autores: Ing. Luis Antonini - Ing. Jorge Osio 18