Solución:
Si aún puede encontrar uno, vale la pena mencionar que un verdadero puerto paralelo es lo más parecido a un GPIO que encontrará en una PC estándar. Las implementaciones clásicas carecen de cierta flexibilidad en el sentido de que muchos de los pines tienen una dirección fija y algunos están invertidos, pero la gente ha estado trabajando en eso durante años.
La mayor limitación es que estos puertos se están extinguiendo. Los reemplazos más abstractos, como los convertidores USB-paralelo, generalmente se pueden usar solo para controlar impresoras reales y carecen de registros que pueda leer / escribir directamente para configurar o monitorear el estado de los pines. Se rumorea que algunos tienen esta capacidad, pero pueden ser difíciles de encontrar y requieren una atención detallada a los conductores.
En ese punto, tiende a ser más práctico utilizar un dispositivo de E / S conectado por USB. A menudo, se trata de un microcontrolador que ejecuta un firmware simple, ya sea del fabricante o personalizado.
Una de las principales ventajas de una implementación personalizada es la posibilidad de descargar el nivel más bajo, las partes más repetitivas y / o de tiempo críticas de la manipulación de E / S al procesador en el dispositivo, en lugar de intentar hacerlo desde la PC donde la latencia de La paquetización USB, el desplazamiento de múltiples buses y los sistemas operativos multitarea tienden a hacer que las operaciones bit a bit sean extremadamente lentas.
Si aún no ha descubierto exactamente qué forma tomará su solución, una posibilidad es tomar algo como un Arduino que está empaquetado tanto en el sentido del hardware como en el de la cadena de herramientas para facilitar su uso, y podría funcionar como una solución independiente o como ayudante de E / S para realizar tareas de bajo nivel bajo el mando de una PC conectada.
Recomendaría usar un FTDI FT232RL usando un controlador especial que habilita su modo bitbang. Este método funcionará en prácticamente todas las PC y permite un acceso de latencia decente a un GPIO simple.
Hay muchas placas de ruptura de chip FTDI, pero yo personalmente uso esta.
No está claro qué desea que haga la PC y qué se supone que debe hacer el dispositivo (“dispositivo host” no tiene sentido), pero parece que desea E / S digitales básicas de una PC.
Las PC no están realmente diseñadas para E / S digitales directas a dispositivos externos. Pero puede comprar módulos de E / S digitales que se conectan a la PC a través de USB, que luego le permiten leer y escribir señales digitales individuales. Puede hacerlo usted mismo más fácilmente si un microcontrolador se comunica con la PC a través de un puerto COM.
Sin embargo, si esto es realmente un simple problema de control, ¿por qué necesita una PC? Haga que un pequeño microcontrolador haga toda la tarea por sí mismo. Eso es exactamente para lo que están los micronctrollers. Son pequeñas computadoras con líneas de E / S digitales y de otro tipo que están diseñadas para conectarse directamente a hardware externo.