阅读:970回复:1
usb 协议应答的请教!
在学习D12固件的时候,关于usb协议的应答中有些不是很清楚的地方,主要是设备应答的部分。现在向大哥们请教一下,usb的一个控制传输有2个或3个阶段:
1.setup stage SETUP ADDR ENDP CRC5 0xB4 0X02 0X00 0X15 DATA0 DATA CRC16 0XC3 86 06 00 02 00 09 00 0XA123 ACK 0X4B ----设备第一次应答 2.data stage IN ADDR ENDP CRC5 0X96 0X02 0X0 0X15 DATA1 DATA CRC16 0XD2 09 02 2E 00 01 01 00 60 01 0XC134 ACK 0X4B ----------主机应答 3.status stage OUT ADDR ENDP CRC5 0X87 0X02 0X00 0X15 DATA1 DATA CRC16 0XD2 空 0X0000 ACK 0X4B ------------设备第二次应答 有三个问题: 1。设备的两次应答是程序控制的还是硬件自动回复? 2。在d12 smart board 中的端点0 out的中断程序里, //向控制输出端点发送应答建立命令以重新使能下一个建立阶段 D12_AcknowledgeEndpoint(0); D12_AcknowledgeEndpoint(1); 回应的是那个应答呢? 3。第三个阶段中,对于空包的回应是在哪进行的呢? 请高手给我指点指点,谢谢! |
|
沙发#
发布于:2004-03-30 16:56
UP,学习
|
|
|