阅读:1733回复:8
一些简单的问题,望高手指点一下
计算机是通过什么来识别usb设备的,是不是通过VID和PID来识别吗?而VID和PID又是由谁来提供,是不是要按照什么标准。
而对于应用程序,我应当怎样使得它读取和写入usb口的数据,而对于usb设备,比如说是个数据采集卡,我是否在单片机中发送数据的格式就得按照usb传送数据的格式输出数据给usb芯片,还是数据的格式通过usb芯片自动转化。 |
|
沙发#
发布于:2002-06-11 20:01
用户被禁言,该主题自动屏蔽! |
|
板凳#
发布于:2002-06-12 08:03
firmware是什么东东? |
|
地板#
发布于:2002-06-12 08:13
FIRMWARE是写在USB设备里的MCU里的东东
|
|
地下室#
发布于:2002-06-12 08:34
那是不是usb芯片提供了VID
|
|
5楼#
发布于:2002-06-12 08:50
用户被禁言,该主题自动屏蔽! |
|
6楼#
发布于:2002-06-12 10:11
用户被禁言,该主题自动屏蔽! |
|
7楼#
发布于:2002-06-12 12:33
计算机通过设备描述符里得VID和PID来识别设备,而设备描述符做为固件的一部分载入usb设备的ram中,在设备被列举的时候被主机识别。VID和PID可以是标准的由usb论坛指定的标识,也可以由自己设定,只要设备描述符中的VID和PID和驱动程序的.inf文件中的VID和PID一致,可以保证设备能找到自己的驱动程序。
另外,应用程序通过win32的API函数readfile()、writefile()和deviceiocontrol()来读些usb设备。 呵呵,给点分吧:)) |
|
|
8楼#
发布于:2002-06-12 12:47
有些USB控制器,像D12这样的,它的所有程序和信息都是放在控制它的单片机中.包括PID和VID这类的东西.
有一些如cypress的68013,它有几种VID和PID可选.如果不加一个I2C的EEPROM,68013就使用默认的一个VID和PID.如果在I2C总线上有一个地址为特定值的EEPROM,那么68013就会从中读取某些值,作为VID和PID |
|
|