【发布时间】:2021-01-27 16:23:20
【问题描述】:
感谢纠正我的错误,因为我根本不是专家!
我已经阅读了很多帖子和主题,但没有一个适合我的情况。 我希望能够编辑、制作、闪烁(并希望能够调试) 在 Linux Ubuntu 18.04.5 LTS(64 位)下使用 VSCODE,CC3200-LaunchXL,内核 5.4.0-48-generic。
据我了解,OpenOCD 会以“透明方式”打开 LaunchXL 板上的 FTDI 芯片 将可执行文件加载到 CC3200 芯片中。为此,它只需要 CC3200.cfg 和可执行文件。
我已经下载了CC3200 sdk CC3200SDK-1.5.0-windows-installer.exe 并用wine64安装它。 进入../cc3200-master/example/blinky/gcc,做了一个make clean和make,然后做了 openocd -f ../cc3200-master/tools/gcc_scripts/cc3200.cfg -c "program ../path_to/blinky.bin verify reset exit"
我有以下 " 错误:未找到指定的调试接口 (ft2232) 可以使用以下调试接口: 1:车厢 2:假人 3:ftdi ... ... "
我了解到 FTDI ft2232 有 2 个驱动程序, 一个用于串行端口(VCP),这个是内置的 Ubuntu,并在插入 FTDI 芯片时加载 一个用于数据 D2XX,https://www.ftdichip.com/Drivers/D2XX/Linux/libftd2xx-x86_64-1.4.8.gz 我已将 libusb 复制到 /usr/local/lib 中 sudo cp 发布/构建/lib* /usr/local/lib 与 sudo ln -s libftd2xx.so.1.4.8 libftd2xx.so 使其可执行 sudo chmod a+rwx libftd2xx.so.1.4.8
然后,我需要做两件事, 要允许我在插入后访问 FTDI,请编写 udev 规则并将我添加到拨出组并重新启动会话 这条规则取自网络,我添加了一个 trigger.sh,它只在 tmp 文件中打印日期,以便仔细检查事件是否发生,确实如此。 SUBSYSTEM=="tty", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="c32a", SYMLINK+="fhss", GROUP="dialout", RUN+="/usr/local/bin/trigger .sh", MODE="0777", RUN+="/sbin/modprobe ftdi-sio", RUN+="/bin/sh -c '/bin/echo 0451 c32a > /sys/bus/usb-serial/drivers/ ftdi_sio/new_id'" 我认为在调用 modprobe 之前必须卸载 VCP 驱动程序(rmmod ftdi_sio rmmod usbserial,插入时加载)? 我不确定 0451 c32a > /sys/bus/usb-serial/drivers/ftdi_sio/new_id 是做什么的,有什么帮助吗?
所以当我尝试从 release/examples/EEPROM/read (clean and make) 我有 库版本 = 0x10408 打开端口 0 FT_Open(0) 失败
如果我拔下电路板并重复相同的命令...相同的输出。这么清楚命令甚至没有到达USB端口? 无论如何,这就是我所在的地方...感谢您的帮助
另外需要注意的是,当我插入LaunchXL时,dmesg显示“Ignoring serial port reserved for JTAG”,不知道是否正常。
【问题讨论】:
-
更新;解决了打开端口 0 FT_Open(0) 失败的问题,我必须调用并设置我的 idVendor 和 idProduct FT_SetVIDPID(0x0451, 0xc32a);在调用 FT_Open() 之前,我现在可以看到芯片的所有细节。那么,openOCD 是否在同一个丢失的 FT_SetVIDPID 调用中再次失败?如果是这样,我怎样才能将 2 连接在一起?
标签: ubuntu ftdi texas-instruments openocd d2xx