Cypress技术论坛
直播中

张西子

7年用户 159经验值
私信 关注
[问答]

FX2外设域环回测试没有用

我正在进行一个环回测试(使用EP2和EP6)FIFO严格地在外围领域。DSP通过静态存储器端口将数据发送到EP6。然后,CyPress固件被编程为将该数据复制到EP2,此时DSP将从EP2读取该数据,并且EP2将被清空。问题是,由于这是一个没有USB域和主机端使用的内部回环,所以在从EP6到EP2复制数据之后,EP6的空标志和字节计数没有减少。因此,6总是增长,最终它将被填满。有一些有8051套6空旗准备0次6被复制到EP2的方法吗?我试图写10固件代码回来,但这没有影响。

以上来自于百度翻译


     以下为原文
          I was conducting a loopback test (using the EP2 & EP6) FIFO's stricly in the peripheral domain. A DSP was sending data, through a static memory port, to EP6. Then, the cypress firmware was programmed to copy that data to EP2 at which point the DSP would read that data, from EP2, and EP2 would get emptied. The problem was that, because this was an internal loopback with no usage of the USB domain and host side, the empty flag and byte count for EP6 was not getting decreased after data was copied from EP6 to EP2. Therefore, EP6 is always growing and eventually it will get filled up. Is there some method of having the 8051 set the EP6 empty flag get set to 0 once EP6 gets copied to EP2 ? I attempted to write a zero back to it in the firmware code, but that had no effect.   

回帖(2)

何柳青

2019-3-1 15:00:21
当数据从一个端点复制到另一个端点时,这个端点应该被释放掉内存…你能发布你正在使用的代码片段吗?

以上来自于百度翻译


     以下为原文
          When data is copied from one endpoint to other this endpoint should be freed of memory... can you post the code snippet that you are using do this transfer of data....   
举报

徐娟

2019-3-1 15:09:12
我一直试图在CY3684/3674 EZ-USB DEV BRD上在CY7C68013上编写我自己的GPIF输出。然而,我从未看到EP2的空标志变低(指示不空)。我已经修改了BulkHoLoad示例,显示了EP2468 STAT、EP24FIFOFLGS、EP2FIFOFLGS和EP2CS的EP2EF。从EP24FIFOFLGS和EP2FIFOFLGS的空标志永远不会变低。EP2CS上的空标志有时切换到低电平。EP2468 STAT似乎是最可靠的,但是,我能够发送数据到EP2,有时甚至没有看到甚至EP2468 STAT的EP2EF去低内TDYPURBO。我改变了td_poll样本ep2468stat一旦在循环的开始,还是仅此登记火灾低。由于所有的GPIF的例子使用ep2fifoflgs为EP2不空,我希望这是他们为什么不测试?但是不应该所有的EP2空旗副本去低当EP2写入?或者我没有得到什么?

以上来自于百度翻译


     以下为原文
          I've been trying to write my own GPIF output on a CY7C68013 on the CY3684/3674 EZ-USB Dev Brd. However I never see the empty flag of EP2 go low (indicating not empty). I've modified the bulk_loop example to show the EP2EF from EP2468STAT, EP24FIFOFLGS, EP2FIFOFLGS, and EP2CS. The empty flags from EP24FIFOFLGS and EP2FIFOFLGS never ever go low. The empty flag on EP2CS sometimes toggles to low. EP2468STAT appears to be the most reliable, however I am able to send data to EP2 and occasionally not see even EP2468STAT's EP2EF go low within TD_POLL. I changed TD_POLL to sample EP2468STAT once at the beginning of the loop and still only this register fires low. Since all of the GPIF examples use EP2FIFOFLGS to test for EP2 being not empty I'm hoping this is why they didn't work? However shouldn't all of the copies of EP2 empty flag go low when EP2 is written into? Or is there something that I'm not getting?   
举报

更多回帖

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