阅读:1579回复:3
[求助]请教关于CY7C68013的slave fifo模式的一个问题
小弟正在调一个USB接口,采用DSP+CY7C68013
将68013设置为slave fifo模式 主要固件程序部分如下: EP2 设为out,autoout=1 EP6设为in,autoin=1 void TD_Init(void) { // set the CPU clock to 48MHz CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ; IFCONFIG = 0xcb; REVCTL = 0x03; SYNCDELAY; EP2CFG = 0xa2; //out SYNCDELAY; EP6CFG = 0xe2; //in SYNCDELAY; FIFORESET = 0x80; SYNCDELAY; FIFORESET = 0x02; SYNCDELAY; FIFORESET = 0x04; SYNCDELAY; FIFORESET = 0x06; SYNCDELAY; FIFORESET = 0x08; SYNCDELAY; FIFORESET = 0x00; SYNCDELAY; EP2FIFOCFG = 0x15; SYNCDELAY; EP6FIFOCFG = 0x0d; SYNCDELAY; PINFLAGSAB = 0x00; SYNCDELAY; PINFLAGSCD = 0x00; SYNCDELAY; PORTACFG = 0x00; SYNCDELAY; FIFOPINPOLAR = 0x00; SYNCDELAY; EP6AUTOINLENH = 0x02; SYNCDELAY; EP6AUTOINLENL = 0x00; SYNCDELAY; EP2BCH = 0x00; SYNCDELAY; EP2BCH = 0x00; SYNCDELAY; EP2BCL = 0x80; SYNCDELAY; EP2BCL = 0x80; SYNCDELAY; } void TD_Poll(void) { ; } 现在遇到的问题是: 通过control panel写EP2端点,没有响应,而且DSP那边查EP2的FLAG 它的EF标志仍然有效 说明没有写进去,通过DSP写EP6端点,写一个字后,EP6的EF标志无效了,但是不管再写多少,其FF标志始终无效,用control panel读EP6端点也读不出数据来,请大家帮忙看看,到底是什么问题,谢谢 -- |
|
沙发#
发布于:2007-05-23 11:27
自己顶顶,希望高手能指点一下
|
|
板凳#
发布于:2007-05-23 12:25
高手们,帮小弟分析分析吧,急啊
![]() |
|
地板#
发布于:2007-05-27 20:38
我的EP2设置为手动模式,
EP2FIFOCFG = 0x00; SYNCDELAY; OUTPKTEND = 0x82; SYNCDELAY; OUTPKTEND = 0x82; 跟你的那句EP2FIFOCFG = 0x15; 不一样,其他的基本都类似。 我的结果是可想EP2写数据,我是68013A+AVR,在AVR中也可以读进EP2中的数据,可就是向EP6写数的时候,在control panel中读EP6没有反应。可能这个跟楼主的遭遇类似, 同样请高手们指点! |
|