USB通信CY7C68013A的Linux驱动试验

0. 环境

EZ-USB FX2LP CY7C68013A USB 核心板
ubuntu16

1. 下载FX3_SDK_1.3.4_linux

EZ-USB™ FX3 Software Development Kit
https://www.infineon.com/cms/en/design-support/tools/sdk/usb-controllers-sdk/ez-usb-fx3-software-development-kit

2. 解压

压缩文件放到
/home/xxjianvm/work/FX3_SDK_1.3.4_Linux.tar.gz

解压

tar -zvxf FX3_SDK_1.3.4_Linux.tar.gz

得到了
fx3_firmware_linux.tar.gz
ARM_GCC.tar.gz                    # 交叉编译工具
eclipse_x64.tar.gz                # IDE
eclipse_x86.tar.gz
cyusb_linux_1.0.5.tar.gz        # cyusb驱动

继续解压

tar -zvxf fx3_firmware_linux.tar.gz && \
tar -zvxf ARM_GCC.tar.gz && \
tar -zvxf eclipse_x64.tar.gz && \
tar -zvxf cyusb_linux_1.0.5.tar.gz

 

3. 测试cyusb_linux

这个软件是开源的,编译安装

cd cyusb_linux_1.0.5
make 
sudo ./install.sh

问题:ubuntu18编译时出错:main.cpp:133:62: error: invalid conversion from ‘int’ to ‘int* (*)()’ [-fpermissive]
    libusb_error(r, "Error in 'get_active_config_descriptor' ");
未找到解决办法。ubuntu16则顺利编译。也没啥,ubuntu18没有图形界面的示例也可以顺利编译执行的。

cd cyusb_linux_1.0.5/bin
chmod +x cyusb_linux
export LD_LIBRARY_PATH=/home/xxjianvm/work/cyusb_linux_1.0.5/lib:$LD_LIBRARY_PATH && \
./cyusb_linux


4. eclipse搭建环境(跳过,FX2LP是51内核的要用keil,eclipse适用arm内核的FX3LP)

尝试运行
cd eclipse
./ezUsbSuite

 

失败,提示没有java环境

下载Java version 1.6.0_41
镜像站:
https://repo.huaweicloud.com/java/jdk/
http://www.codebaoku.com/jdk/jdk-index.html

下载到
/home/xxjianvm/work/java/jdk-6u45-linux-x64.bin

安装到当前目录
chmod 777 jdk-6u45-linux-x64.bin
./jdk-6u45-linux-x64.bin


/home/xxjianvm/work/java/jdk1.6.0_45/jre
拷贝到
/home/xxjianvm/work/eclipse/jre

即可运行eclipse
cd /home/xxjianvm/work/eclipse
./ezUsbSuite

设置工作区:
/home/xxjianvm/work/Workspace

5. cyusb demo

cd cyusb_linux_1.0.5/src
make
./01_getdesc

 

6. 创建自己的main.c

cd cyusb_linux_1.0.5/src
cp 01_getdesc.cpp ex1.cpp 
export LD_LIBRARY_PATH=/home/xxjianvm/work/cyusb_linux_1.0.5/lib:$LD_LIBRARY_PATH
修改Makefile,添加一行
    gcc -o ex1                  ex1.cpp                  -L ../lib -l cyusb

7. bolkloop测试

7.1 烧写bolkloop

打开上位机程序

cd cyusb_linux_1.0.5/bin
chmod +x cyusb_linux
export LD_LIBRARY_PATH=/home/xxjianvm/work/cyusb_linux_1.0.5/lib:$LD_LIBRARY_PATH && \
./cyusb_linux


下载程序
选择设备 -> Program -> Select file -> 
-> 选择 /home/xxjianvm/work/cyusb_linux_1.0.5/fx2_images/bulkloop.hex
-> Start Download

 

7.2 测试

7.2.1 cyusb_linux图形界面测试

选择设备 -> Data Transfers -> 
-> Data-Out输入 12345678 -> 点击SEND
再点击 RECEIVE接收到刚才发送的数据

 

7.2.2 命令行测试

cd /home/xxjianvm/work/zhyb/cyusb_linux_1.0.5/src
export LD_LIBRARY_PATH=/home/xxjianvm/work/cyusb_linux_1.0.5/lib:$LD_LIBRARY_PATH
./08_cybulk

 

参考:https://github.com/nickdademo/cypress-fx3-sdk-linux


 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值