Los problemas simples requieren solo soluciones simples a menos que sean parte de un sistema más complejo. El uso de USB para conectar ratones, teclados y dispositivos de almacenamiento masivo a diseños integrados generalmente se considera un problema simple. Los ratones y los teclados son dispositivos de clase de dispositivo de interfaz humana (HID) y tienen solo dos y tres puntos finales, respectivamente. El disco duro es un dispositivo de clase de almacenamiento masivo (MSC) y tiene solo 3 puntos finales. Las impresoras y otros dispositivos semiinteligentes que utilizan la clase de dispositivo de comunicación (CDC) presentan cuatro puntos finales.
La mayoría de las MCU de bajo costo solo tienen un puerto USB con cuatro terminales. Pero, ¿qué pasa si necesita comunicarse con 10 terminales a la vez? Stevan Dobrasevic de Renesas hizo un breve video que muestra algunos ejemplos de cómo las cosas se complican.
Renesas de 176 pines RX62N proporciona dos puertos de velocidad completa (12 Mbps) con controladores USB individuales que pueden configurar cada puerto para host, dispositivo u OTG. Cada puerto incorpora 2K bytes de RAM como un búfer FIFO y contiene 10 puntos finales configurables. Cada puerto puede ser autoalimentado o alimentado por bus según sea necesario.versión de bajo número de pines RX62N La funcionalidad USB es la misma, pero solo hay un puerto USB. Si su aplicación necesita actuar como dispositivo y host, como el ejemplo de equipo médico en el video, puede tener hasta 10 puntos finales para tareas compuestas sin agregar un segundo puerto USB.
Renesas proporciona muchas notas de aplicación con ejemplos de código C para ayudarlo a agregar rápidamente la funcionalidad USB a su dispositivo. RX62N-Diseño alimentado:
- Controlador de clase de dispositivo de interfaz humana de host USB (HHID) (código)
- Controlador de clase de almacenamiento masivo periférico USB (PMSC) (código)
- Controlador de clase de dispositivo de comunicación host USB (HCDC) (código)
- Controlador de clase de almacenamiento masivo de host USB (HMSC) (código)
- Controlador de clase de dispositivo de comunicación periférica USB (PCDC) (código)
- Host básico USB y firmware periférico (código)