当前位置:   article > 正文

使用FT2232HL作为上位机与FPGA通信的转接芯片时出现没有端口只有通用串行总线控制器的解决办法

ft2232hl

问题简述

我这里用的是FT2232HL作为USB转JTAG和串口的芯片
前两天我在使用学校的FPGA(7020)板子往里面的arm核烧例程的时候发现虽然烧入成功但是找不到FPGA加载的串口(我使用的FPGA是JTAG与串口复用一个type-C),然后我打开设备管理器发现接入设备竟然没有弹出端口只弹出了通用串行总线控制器。换了一块学长用的不同型号的发现可以正常检测并弹出窗口。(ps:我这里是vivado可以识别到我的设备,可以正常下载程序,就是单纯的电脑检测不到这块板子自带的串口)
在这里插入图片描述


我这里使用的是vivado.2018.3如果你用的是2022的版本可以直接尝试用另一种方法(不行的话可以再用我的解决方法)


问题出现的原因

排错顺序:先是判断电脑本身问题包括不同型号不同系统,再是数据线是否存在问题,之后怀疑是电脑没装相关的驱动程序,反复安装驱动程序无果后我开始怀疑是这块通信转换芯片的问题。

最终发现出现问题的原因是学校给FT2232里面下载的程序把两个转换端口都设置为USB转JTAG的了,我们只需要把其中一个(我的是B口)该为USB转串口的就可以了。


解决方案:

这里有三套方案,我采用的是第一套,根据个人vivado版本和板子情况可以自行选择
不想在官网下载的可以直接下我在文章末尾放的压缩包,包括本篇文章用到的所有文件

【1】安装ft2232的驱动
有的话可以跳过(安装文件为 CDM21228_Setup.exe,官网链接如下http://www.ftdichip.com/Drivers/VCP.htm)
下载这个
解压后双击,一直继续到如下界面就可以
在这里插入图片描述
【2】安装 FT_Prog_v3.6.88.402 Installer.exe

我这里主要是用FT_Prog来把FT2232里面的程序清除干净,个人没有试过不先清除后面还能不能成功

软件的详细使用说明,可参考:AN_124_User_Guide_For_FT_PROG.pdf(ps:据说可以只在这个软件里面就配置完成,个人暂时不会)
官网:https://ft-prog.software.informer.com/3.0/
在这里插入图片描述
双击点开后一直到这个界面把能勾的都勾上
在这里插入图片描述
自己选一下要安装的路径下载完打开应用就行
在这里插入图片描述
进来后点这个放大镜查找设备,这里要把你的板卡接入,如果你的FT2232能正常工作的话应该会出现如下信息
在这里插入图片描述
下面的device output里面如果显示的是全F且右边Value最下面的一行出现BLANK DEVICE的话说明你的FT2232没有烧入程序其他情况均是已经烧入的
在这里插入图片描述
然后点放大镜旁边的闪电
在这里插入图片描述
选择弹出窗口右下角的erase,把原有程序擦除
这时断开板卡再重连,你会发现设备管理器里面的端口就会多出两个,端口号可能每个设备的不太一样只要出来了就行
(ps:这里虽然有端口,但是由于FT2232里面没有程序所以还是用不了)
【3】打开压缩包里面的ft2232-hl-smt3-master\2.0\FT2232H EEPROM Modify.sln

这里要感谢一下
浮栅雪崩注入MOS提供的开源程序https://gitee.com/miraikkiri/ft2232-hl-smt3.git解决了困扰我多天的问题

我这里用的是VS2022,在打开之后你的VS2022可能会提醒你这个程序的NET Framework太老了问你要不要更新这个程序或者安装NET Framework2.0,这是windows版本比较新可能会出现的
如果出现上述情况的话,我们这里选择安装NET Framework2.0(没有出现就直接跳过这步去运行程序),但是你会发现弹出的官网没有2.0的了
在这里插入图片描述
所以这里我们不在官网下载
打开windows自带的搜索
在这里插入图片描述
输入启动或关闭windows功能(各个windows版本的打开方法不太一样)
在这里插入图片描述
把这个勾上
在这里插入图片描述
下载,这里需要等一会
下好之后再次打开ft2232-hl-smt3-master\2.0\FT2232H EEPROM Modify.sln
打开后直接点这个就可以了
在这里插入图片描述
运行之后关闭就可以,弹出的窗口应该会打印修改前后的信息(修改前是全F修改后就不是了),不放心的话可以再次用FT_Prog查看里面下载的程序。
然后给板卡断电再上电,你就会发现只剩下一个端口了
在这里插入图片描述
这个端口就是我们要的串口,JTAG不在这里显示(ps:有的博主的板卡或者自制的JTAG这里也会显示两个端口,我暂时不清楚怎么搞的,不过只要vivado能检测到JTAG能下载就行)
然后就是打开vivado建工程(要配置串口),并打开SDK建一个Helloworld的程序,选择串口就能正常使用了
在这里插入图片描述
本解法用到的所有资料我都放在这里了
链接:https://pan.baidu.com/s/1U2TIfY9GQ83vR8qS5g16Yg?pwd=ggh8
提取码:ggh8

解法二(需要你的vivado版本在2022以上)

这里参考luguodeyo这位博主的配置方法
http://t.csdnimg.cn/cdcd3

解法三(其实就是.sln变一下,不用我给的程序,看你个人的板卡了,我是用不了这个才找的上面的)

这里参考b站大佬TerayTech的自制JTAG下载器的开源程序【【EEvlog】#25 开源 低成本 自制 Xilinx下载器(Digilent JTAG-HS2)】https://www.bilibili.com/video/BV1nT4y1L7uE?vd_source=870f5abc061f72750cde419e4e834de1

都看到这里了,还不快给我个免费的赞[抓狂]
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/646573
推荐阅读
相关标签
  

闽ICP备14008679号