maomao7
驱动牛犊
驱动牛犊
  • 注册日期2004-02-29
  • 最后登录2005-04-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:803回复:0

那位好心的大虾帮帮忙,郁闷完了我!

楼主#
更多 发布于:2004-10-10 14:39
我有这样一个想法,想从外部RAM中取数,现在我用EZ-USB(AN2131Q)带的例子,实现了64个字节的数据的操作,但当数据大于64字节时固件要怎么做呢?
可以用两种方法实现对64个字节的操作:

方法一:TD_pool()
{
BYTE length;
BYTE DATA[x];
BYTE i;
.... //数据采集,并将采集到的数据放入
.... //DATA[X]中,长度为length。。。。。。可当length大于64时要怎么办?

if (EPIO[IN7BUF_ID].cntrl & bmEPBUSY)
{
TOGCTL = 0x08 | IN7BUF_ID;
WRITEDELAY();
if (TOGCTL & 0x80)
TOGCTL |= 0x20;
else
TOGCTL |= 0x40;
}
for(i=0;i<length;i++)
{
IN7BUF=DATA;
}
IN7BC = i;
}



方法二:
void ISR_Ep2in(void) interrupt 0
{
for(i=0;i<64;i++) 
in2buf = *(ram地址+i);
IN2BCH = 0;
IN2BCL = 64; //arm数据。。。。。。。。数据大于64个字节又要怎么写固件呢?
}

各位大虾仁帮帮忙,我知道我的问题可能对于你们来说不算什么,可是我真的很菜!

如果可能的话,能不能把两把方法都说明一下!感激不尽!!!!!
     
   :mad: :mad: :mad: :mad: :mad:  

   :( :( :( :( :( :( :( :( :( :(



-------------------------------------------------
为什么我还是一只菜鸟,想要飞却怎么样也飞不高!
-------------------------------------------------
游客

返回顶部