阅读:1071回复:3
请各位帮忙看看这段程序
void TD_Poll(void)
{。。。。。。。 if(in_enable) { if ( GPIFTRIG & 0x80 ) // if GPIF interface IDLE { if ( EXTFIFONOTEMPTY ) // if external FIFO is not empty { if ( !( EP68FIFOFLGS & 0x01 ) ) // if EP6 FIFO is notfull { if(enum_high_speed) {。。。。 。。。。。 BOOL DR_VendorCmnd(void) { switch (SETUPDAT[1]) { case VX_B3: // enable IN transfers { in_enable = TRUE; *EP0BUF = VX_B3; EP0BCH = 0; EP0BCL = 1; EP0CS |= bmHSNAK; break; } default: return(TRUE); } return(FALSE); } 大家帮忙看一下,这个in_enable 在这里起什么作用啊,为什么我的程序里面加上与不加if(in_enable)这条语句后,读数据的时候结果有很大的差别啊,差别在于,没有这一句的时候读出来的数据前面会有2048个字节的00(说明:我采用的时4缓冲),是不是这个if语句还有别作用啊? |
|
沙发#
发布于:2003-11-08 09:21
自己先顶一下啊
|
|
板凳#
发布于:2003-11-10 18:04
论坛上能行侠仗义的英雄帮忙看看吧
|
|
地板#
发布于:2003-11-11 08:57
这样一个问题难到没人会?不可能啊
|
|