我使用的是AVR系列ATMEGA16单片机,将CH375做设备的时候,用端点1发送数据给电脑,在使用DEBUG372.EXE程序测试的时候,发现接收到的数据并非我所发送数据0000000000000000 竟然是000000600003041F,请大家帮忙看看 main() { uchar m,n; n=0; uchar Data1_w[]={0,0,0,0,0,0,0,0}; while(1) { _delay_ms(200); _delay_ms(200); while(n!=0xf0) { DDRB=0XFF; PORTB=0X0F; _delay_ms(100); reset_all(); n=check_exist(0x0f); PORTB=n;
} set_usb_mode(2);//USB设备工作为内部固件模式 wr_usb_data5(8,Data1_w[8]);
} } 以下是wr_usb_data5(8,Data1_w[8]);函数 void wr_usb_data5(uchar byte,uchar Data1_w[8])//向USB端点1上传缓冲写入数据块,byte为要写入的数据块的字节数,要小于等于8 { uchar i; w_order(0x2a); w_data(byte); for(i=0;i { w_data(Data1_w[i]); } }