USB通信程序设计 第12页
参考文献
[1] 周立功.PDIUSBD12 USB 固件编程与驱动开发[M].北京:北京航空航天大学出版社,2003.2
[2] 沈文,Eagle lee.AVR 单片机C语言开发入门指导[M].北京:清华大学出版社,2003
[3] 王士元.C高级实用程序设计[M].北京:清华大学出版社,1996
[4] 谭浩强.C程序设计[M].北京:清华大学出版社,1996
附录 A USB接口芯片命令总汇
对D12器件读写操作有3种基本类型的命令:初始化,数据流和通用命令。下表列出了所有命令的命令字及其命令参数。
A1.初始化命令
初始化命令在USB网络进行枚举处理时使用。这些命令用于使能端点的功能,还可以用来设置USB分配的地址。
设置地址/使能命令:D0h。
处理:写1B。
该命令用于设置USB分配的地址和使能功能,该命令参数的具体描述如下图所示。
设置端点使能
命令:D8h。处理:写1B。
通过设置地址/使能命令后才可使能普通/同步端点,该命令参数的具体描述如下图所示。
设置模式
命令:F3h。
处理:写2B。
设置模式命令后跟2个字节写入的数据,第一个字节包含配置字节信息,第2个字节是时钟分频因数字节,该命令参数的具体描述如下图所示。
设置DMA
命令:FBh。
处理:读/写1B。
设置DMA命令后跟1个字节数据写入/读取DMA配置寄存器,该命令参数的具体描述如下图所示。
数据流命令
数据流命令用于管理USB端点和外部微控制器之间的数据传输。通过微控制器中断初始化大量的数据流。微控制器利用这些命令访问和决定端点的FIFO是否含有有效的数据。
读中断寄存器令:F4h。
处理:读2B。
该命令主要用于读取中断寄存器的值,可连续读取2个字节的数据,即中断寄存器字节1和中断寄存器字节2,该命令参数的具体描述如下图所示。 选择端点
命令:00h――05h。
处理:可选读1B。
选择端点命令将内部指针初始化到选择的缓冲区起始位置。该命令可选,其后可跟一个返回的读出字节,该命令参数的具体描述如下图所示。
读端点状态
命令:80h――85h。
处理:读1B。
读端点状态命令将返回一个字节的所选取端点的当前状态信息,该命令参数的具体描述如下图所示。
读最后处理状态寄存器
命令:40h――45h。
处理:读1B。
读最后处理状态寄存器命令后跟一个数据返回端点最后处理状态,该命令参数的具体描述如下图所示。 读缓冲区
命令:F0h。