EP1OUTCFG = 0xA0; //可以不写,默认的bulk模式
EP1INCFG = 0xA0; //为什么要设置EP1??
SYNCDELAY; // see TRM section 15.14
EP2CFG = 0xA2;
SYNCDELAY; //也没有用自动模式
EP4CFG = 0xA0;
SYNCDELAY;
EP6CFG = 0xE2;
SYNCDELAY;
EP8CFG = 0xE0;
// out endpoints do not come up armed
// since the defaults are double buffered we must write dummy byte counts twice
SYNCDELAY;
EP2BCL = 0x80; // arm EP2OUT by writing byte count w/skip.
SYNCDELAY;
EP2BCL = 0x80;
SYNCDELAY;
EP4BCL = 0x80; // arm EP4OUT by writing byte count w/skip.
SYNCDELAY;
EP4BCL = 0x80;
// enable dual autopointer feature
AUTOPTRSETUP |= 0x01;
Cypress例程里面的bulkloop中TD_Init()的主要部分如上所示,请问各位大神:1)它为什么没有从FIFOADR[1:0]选择应该挂载哪个FIFO,这样一路下来不只有一个FIFO在上面么?而它要实现EP2/4做out,6/8做IN 2)它没有选择自动模式(AUTOIN/OUT=1)。请问使用了AUTO模式省什么事了么?
3)它没有定义FLAGA、b、c,请问这又是为什么? |