完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我的应用是:上位机循环读取USB数据,下位机是FPGA+CY68013发送USB数据,FPGA判断CY68013的写满标志,非满时进行写操作,否则不进行任何操作,在原处等待非满标志,现发现上位机一直在读取,但FPGA读到的68013一直都是满,如果某处68013写满了,FPGA就不会写了而上位机又一直读,68013总会非满才对啊,为什么一直满呢,下面是我抓到的FPGA波形,从flagd变为0后,就从来不会变高!刚开始的时候会正常运行一会,然后就是出错
下面是上位机的程序,循环中一直读,有一个问题是读取的返回值status可能为0,这个可能是什么原因,如果不管读取的返回值,一直这样运行是否有效(是否出过一次错之后,就不会再真正读取数据)? |
|
相关推荐
1个回答
|
|
根据您的描述,问题可能出现在以下几个方面:
1. CY68013的写满标志(flagd)没有正确地被FPGA检测到。请检查FPGA的代码,确保flagd信号被正确地读取和处理。 2. FPGA在写入CY68013时可能存在问题。请检查FPGA的写入逻辑,确保数据正确地写入CY68013。 3. 上位机读取USB数据的速度可能过快,导致FPGA没有足够的时间将数据写入CY68013。请检查上位机的读取逻辑,确保读取速度适中。 4. CY68013本身可能存在问题。请检查CY68013的硬件连接和配置,确保其正常工作。 关于上位机读取USB数据时返回值status可能为0的问题,这可能是由于以下原因: 1. USB设备未正确连接或配置。请检查USB设备的连接和配置,确保其正常工作。 2. USB通信存在问题。请检查USB通信的代码,确保数据正确地从CY68013读取到上位机。 3. 上位机的读取逻辑可能存在问题。请检查上位机的读取逻辑,确保其正确处理返回值。 建议您按照以下步骤进行排查: 1. 检查FPGA的代码,确保flagd信号被正确地读取和处理。 2. 检查FPGA的写入逻辑,确保数据正确地写入CY68013。 3. 检查上位机的读取逻辑,确保读取速度适中。 4. 检查CY68013的硬件连接和配置,确保其正常工作。 5. 检查USB设备的连接、配置和通信代码,确保其正常工作。 希望以上建议能帮助您解决问题。如果问题仍然存在,请提供更多详细信息,以便进一步分析。 |
|
|
|
只有小组成员才能发言,加入小组>>
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
3819 浏览 2 评论
4021 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3513 浏览 9 评论
1149 浏览 8 评论
3435 浏览 7 评论
324浏览 2评论
187浏览 2评论
282浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
3819浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
333浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-28 18:07 , Processed in 0.719594 second(s), Total 83, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号