¿Cómo transmito datos y los capturo por puerto USB utilizando programación en C?
1 Respuesta
Respuesta de gerards
1
1
gerards, Ingeniero superior en Telecomunicaciones e Informática
El puerto USB al que hace mención es el conector de entrada a un bus de tipo serie en el que es posible conectar múltiples dispositivos, tanto en frío como en caliente, siendo éstos por regla general reconocidos por de inmediato por sistemas operativos como Windows. Cuando el sistema detecta que se ha conectado un dispositivo al bus USB, lo primero que hace es solicitar una identificación para saber de qué dispositivo se trata. Si existe un controlador ya instalado que le permita comunicarse con él, lo utilizará directamente e, incluso, pondrá en marcha la aplicación que corresponda para acceder a dicho dispositivo. Si, por el contrario, no hay un controlador preinstalado en el sistema, veremos aparecer el típico cuadro de diálogo para solicitar un controlador adecuado. La comunicación del ordenador con los dispositivos USB es, por tanto, tarea de los controladores de dispositivo. Estos utilizarán un conjunto de funciones que forman parte de la especificación conocida como Universal Serial Bus Specification, Revisión 1.0, accediendo al puerto USB a bajo nivel. El controlador, a su vez, ofrecerá a las aplicaciones un API de alto nivel que les permita usar el dispositivo sin tener que preocuparse de los detalles de la comunicación USB. Si está usando una cámara fotográfica digital USB, por ejemplo, las aplicaciones accederían a ella mediante un conjunto de funciones en las que trabajaría sobre imágenes, y no sobre detalles de comunicación y flujos de datos. Si lo que quiere es comunicarse con un dispositivo en particular, lo mejor es que use el API de alto nivel correspondiente. Si desea acceder al bus USB a bajo nivel, deberá programar un controlador de dispositivo. Precisará, por una parte, el DDK (Driver Development Kit) que corresponda a su versión de Windows. Estos paquetes de desarrollo de controladores son gratuitos y puede obtenerlos de www.microsoft.com/ddk. En segundo lugar precisará toda la información sobre el bus USB que pueda encontrar, principalmente la especificación en la que se define el funcionamiento del bus y todas sus funciones. En www.usg.orb/developers encontrará todos estos datos, además de una FAQ y algunas herramientas útiles.