Este es un deseo encomiable de emular su dispositivo en desarrollo para continuar con el desarrollo de software antes de que el hardware esté listo. Es un problema desafiante. Pero no puede simular un dispositivo USB en un host de Windows normal. El host USB tiene funciones especiales de "hospedar" el bus, que son incompatibles con las funciones del dispositivo esclavo USB. Ningún "hardware de cableado" puede ayudar aquí. Las funciones del host están basadas en hardware, por lo general cumplen con estrictas especificaciones de hardware (Intel EHCI o xHCI) y no se pueden activar.
Algunas tabletas / computadoras portátiles pueden tener un USB OTG (o una función de doble rol de datos) y actuar como dispositivos USB si están conectados a otro host USB con el cable OTG correcto. Para que esto suceda, el sistema debe tener un controlador de dispositivo USB alternativo, otra pieza de hardware. Sin embargo, estos controladores de dispositivos OTG generalmente tienen una estructura de puntos finales predefinida por hardware (generalmente implementando MTP o clase de almacenamiento masivo), y es muy poco probable que la configuración incorporada coincida con la estructura de puntos "ARM EFM32 incrustada" de su propiedad. ser reprogramado
Si su equipo está diseñando una interfaz USB patentada "EFM32 ARM incorporada", que no sigue ninguna clase USB predefinida, no tiene suerte con respecto al desarrollo de software por adelantado. Si bien hay entornos que permiten la virtualización del sistema, aún tendrá que desarrollar un modelo basado en transacciones de su dispositivo "EFM32 ARM integrado", que probablemente lleve tiempo, sea inexacto y no se pueda confiar en él. La forma más natural sería obtener una plataforma de desarrollo EFM32 de Silicon Labs, y modificar sus códigos existentes para imitar su dispositivo "EFM32 ARM integrado" cuando sea posible.