attachment download 这一节,相对比较容易实现,但前提是前面的工作没有出错。
主要有两步,先要使能非0端点,再返回一个0长度的状态数据包:
case SET_CONFIGURATION:
D12SetEndpointEnable(wValue&0xFF);
SendLength=0;
NeedZeroPacket=1;
UsbEp0SendData();
break;
使能非0端点要先写SetEndpointEnable命令,命令代码为0xD8,
void D12SetEndpointEnable(uint8 Enable){
D12WriteCommand(D12_SET_ENDPOINT_ENABLE);
if(Enable!=0) D12WriteByte(0x01);
else D12WriteByte(0x00);
}
从串口返回的信息可知,主机请求类输出和报告描述符
0x21 0x0A 0x00 0x00 0x00 0x00 0x00 0x00
0-0x08 '
0x81 0x06 0x00 0x22 0x00 0x00 0x41 0x00
0x22
至此,圈圈的水平也就这么高了,前路漫漫,也就更需要自己摸索了
文章评论(0条评论)
登录后参与讨论