阅读:631回复:0
芯片地址上写零是什么是应答,还是就是地址
void set_address(void)
{ D12_SetAddressEnable((unsigned char)(ControlData.DeviceRequest.wValue & DEVICE_ADDRESS_MASK), 1); single_transmit(0, 0); } void single_transmit(unsigned char * buf, unsigned char len) { if( len <= EP0_PACKET_SIZE) { D12_WriteEndpoint(1, len, buf); } } unsigned char D12_WriteEndpoint(unsigned char endp, unsigned char len, unsigned char * buf) { unsigned char i; if(bEPPflags.bits.in_isr == 0) DISABLE; //--------------------- outportcmd(endp); //选择端点 inportb(); //读入满/空状态 outportcmd(0xF0); //<写缓冲区>命令 outportdata(0); outportdata(len); for(i=0; i<len; i++) outportdata(*(buf+i)); outportcmd(0xFA); //《使缓冲区有效>有下一个IN来时可以发送 //-------------------------------- if(bEPPflags.bits.in_isr == 0) ENABLE; return len; } 往芯片上写零是什么是应答,还是就是地址 |
|
|