完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
FPGA 通过 GPIF 接口与 FX3 连接。 主机应用程序将使用 FPGA 上的大容量端点 0x1 和 0x81 执行寄存器写入/读取操作。
1) 应用程序使用 Xferdata() 进行批量传输。 2) 测试 VID/PID 已添加到 .inf 中。 3) 使用 FX3-sdk(windows)构建固件。 现在我要进行 Linux 设置 1) 应用程序使用 cyusb_bulk_transfer() api 进行批量传输。 2) 在 cyusb.config 中添加测试 VID/PID,并用新 VID 成功检测到设备。 3)固件没有任何变化(在 window SDK 上构建并使用 Control-center 闪存) 错误: 但无法执行写入/读取操作。 使用 0x1 端点写入无法正常工作。 使用 0x81 端点读取大部分时间都能正常工作。 唯一不同的是操作系统。 |
|
相关推荐
1个回答
|
|
根据您提供的信息,您正在尝试在 Linux 上使用批量传输进行 FPGA 与 FX3 的通信,但遇到了写入/读取操作的问题。以下是一些建议来解决这个问题:
1. 确保驱动程序正确安装:首先,确保您的 Linux 系统已安装了适用于 FX3 的正确驱动程序。您可以检查 `/dev/bus/usb` 目录下是否有相应的设备文件。 2. 检查权限:确保您的应用程序具有访问 USB 设备的权限。您可以尝试使用 `sudo` 运行应用程序,或者将您的用户添加到 `plugdev` 组。 3. 检查 USB 连接:确保 FX3 设备与计算机之间的 USB 连接正常。尝试使用其他 USB 端口或电缆,以排除硬件问题。 4. 检查固件版本:确保您使用的固件版本与您的应用程序兼容。如果您在 Windows SDK 上构建了固件,请确保它也适用于 Linux。 5. 检查端点地址:确保您的应用程序使用的端点地址(0x1 和 0x81)与固件中定义的端点地址相匹配。 6. 检查批量传输参数:确保您的应用程序在调用 `cyusb_bulk_transfer()` API 时,正确设置了传输参数,如传输方向、端点地址、数据长度等。 7. 调试应用程序:尝试在应用程序中添加调试信息,以便更好地了解问题所在。您可以使用 `printf()` 或其他调试工具来输出关键信息。 8. 查看日志:检查 Linux 系统的日志文件(如 `/var/log/syslog` 或 `dmesg`),以获取有关 USB 设备和驱动程序的更多信息。 9. 尝试其他示例代码:如果您仍然无法解决问题,可以尝试查找其他示例代码或教程,以了解如何在 Linux 上使用 FX3 和 FPGA 进行批量传输。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教个XMC1404调试串口接收时为什么一直无法接收数据的问题
427 浏览 0 评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
7121 浏览 2 评论
4139 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3664 浏览 9 评论
1260 浏览 8 评论
502浏览 2评论
303浏览 2评论
411浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
7127浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
507浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-23 01:03 , Processed in 0.415134 second(s), Total 48, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号