write(0x00,1); //select
write(0xf1,1); //f1:Ack c in
write(0x01,1); //01:Select End1
write(0xf1,1); //ack c out
USART_Transmit(0xA1);
write(0x80,1);//80:Read Endpoint Status
tmp = read();
USART_Transmit(tmp);
USART_Transmit(0xA2);
write(0x40,1); //read last transaction status
tmp = read();
USART_Transmit(tmp);
write(0x00,1); //select
read();
write(0xf0,1);
read();
tmp = read();
lastsetup[0] = read();//first bit
lastsetup[1] = read();
lastsetup[2] = read();
lastsetup[3] = read();
lastsetup[4] = read();
lastsetup[5] = read();
lastsetup[6] = read();
lastsetup[7] = read();
USART_Transmit(tmp);
for(i=0;i
![](http://uphotos.eepw.com.cn/Zhenchuan/thumb/avatar.jpg)
1楼
接到Control Out的Setup(Get_Descriptor)后如上处理,但貌似事实上没有ACK,由串口看出这段程序完了之后主机又重发Bus Reset和Setup(Get_Descriptor),怎么回事?
![](http://uphotos.eepw.com.cn/jackwang/thumb/avatar.jpg)
2楼
建议BBS内交流
![](http://uphotos.eepw.com.cn/t529/thumb/avatar.jpg)
3楼
排版有点乱啊
![](http://uphotos.eepw.com.cn/1669683972/thumb/avatar.jpg)
4楼
看不出来什么问题
最新人才