tigerL
驱动小牛
驱动小牛
  • 注册日期2003-12-24
  • 最后登录2008-10-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望23点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
阅读:1352回复:1

求救!TMS320VC5509开发USB的问题。

楼主#
更多 发布于:2004-08-20 21:26
同事要用TMS320VC5509开发USB,碰到问题,代他一问。我对硬件八窍已通七窍――一窍不通,所以陈述问题有不到之处,还望海涵!

他是用CSL GUI对USB模块进行配置的。

部分固件代码如下:

#define DELAY_COUNT 0x2248*8L

#include <stdio.h>
#include "DSCR.H"

#include "TiConfigUSBFireWarecfg.h"

interrupt void USB_ISR_Ep0out();
interrupt void USB_ISR_Ep0in();
void USB_ISR_Ep6in();
void USB_ISR_Ep2out();

main() {
Uint16 k=0;

CSL_cfgInit();
  USBOEPIE= 0xff; //0x6793
USBIEPIE= 0xff; //0x6794
USBIE=0X00DD; //0x67fd
USBIE= USB_INT_STPOW | USB_INT_SETUP | USB_INT_PSOF |USB_INT_SOF | USB_INT_SUSR |USB_INT_RSTR;//| USB_INT_RESR;// |
_CHIP_IER0_CFG(0,0,0,0,0,0,0,1,0,0,0,0,0,0);//enable the USB interrupt.
_CHIP_ST1_55_CFG(1,1,1,1,0,1,1,1,1,1,1,1);//enable the DSP global interrupt.

*(Byte*)(USBOCT0_ADDR)= 0;

USB_connectDev(USB0);//Connects the USB module to the upstream port
while(USB_TRUE)
{
  k = _CHIP_IFR0_GET;
  if(k & 0X0100)
{
_CHIP_IFR0_SET(0x0000);//???Clear USB interrupt flag
USB_evDispatch(); /* Handle all USB events */
for(j=0;(j<DELAY_COUNT);++j);

}
}
}
 

 void USB_ISR_Ep0out()
{

USB_EVENT_MASK mask;

mask = USB_peekEvents(&endptObj0);
if((mask & USB_EVENT_SETUP))
{
...
}
}

...

每次连接之后,只能收到USB_EVENT_RESET事件,为何?收到USB_EVENT_RESET事件之后,应做哪些动作?
省元坊
jiangyiyong
驱动大牛
驱动大牛
  • 注册日期2002-11-28
  • 最后登录2004-08-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-26 14:59
RESET 设备,重新枚举。
我来自中国 抵制日货
游客

返回顶部