Cypress技术论坛
直播中

孙婷

8年用户 219经验值
私信 关注
[问答]

为什么gpifabort后GPIF无法再次启动波形?

嗨,我有一个问题,一个基于CyScript的设备使用GPIF很长一段时间。问题如下:我们使用FX2作为连接到ADC或FPGA的流媒体设备。使用标准的CyScript示例代码,不使用GPIF,但是我们使用GPIF来连接到ADC/FPGA。因为它是一个流媒体设备,在数据环路中没有任何8051代码连续地查询数据。GPIF实际上是一个简单的数据活动循环,它是连续循环的,并且用GPIFABLT中止。在我将gpIFabt设置为0xFF并尝试重新启动波形之前,流式工作是完美的。下面你可以找到TDyIIT和启动和停止SrangsFER的代码(而不是TDyPrope'没有做任何事情)。我希望有人能帮助解决这个问题。如果需要任何新的信息,请告诉我。诚挚的问候,彼得虚空(void)/ td_init称一旦启动{ cpucs =((cpucs &;~ bmclkspd)| bmclkspd1);revctl = 0x03;syncdelay;ep1outcfg = 0xA0;syncdelay;ep1incfg = 0xA0;syncdelay;ep2cfg = 0xA0;syncdelay;ep4cfg = 0xA0;syncdelay;ep6cfg = 0xE0 syncdelay;ep8cf;G = 0x00;SYNCDELAY;/ /重置所有FIFO的fiforeset = 0x80;syncdelay;fiforeset = 0x02;syncdelay;fiforeset = 0x04;syncdelay;fiforeset = 0x06;syncdelay;fiforeset = 0x08;syncdelay;fiforeset = 0x00;syncdelay;ep2fifocfg = 0x00;syncdelay;ep4fifocfg = 0x00;syncdelay;ep6fifocfg = 0x0c;syncdelay;ep8fifocfg = 0x00;syncdelay;togctl = 0x16;/ / 6在togctl = 0x36;// Ep6复位autoptrsetup | = 0x01;rwuen = true;gpifinit();ifconfig &;= ~(0x60);} starttransfer() { gpifabort = 0xff;而(!(gpiftrig &;0x80)){;} ep6fifocfg = 0x00;syncdelay;ep6fifocfg = 0x0c;syncdelay;ep6gpifflgsel = 0x02;syncdelay;gpiftrig = gpiftrigrd | gpif_ep6;syncdelay;gpifreadycfg | = 0x80;//这将启动GPIF syncdelay;} endtransfer() { gpifabort = 0xff;而(!(gpIFiTrg&0x80){{}}

回帖(1)

陈菊羽

2019-8-1 11:07:43
您好!
请提供定时波形和*.gpf文件。
当做,
Vikas。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分