1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > linux上使用ftdi的串口芯片 D2XX for Linux 出现ftdi d2xx与linux上的ftdi_sio冲突问题

linux上使用ftdi的串口芯片 D2XX for Linux 出现ftdi d2xx与linux上的ftdi_sio冲突问题

时间:2018-10-07 06:24:58

相关推荐

linux上使用ftdi的串口芯片 D2XX for Linux 出现ftdi d2xx与linux上的ftdi_sio冲突问题

智科创玩

写在前面1.问题概述2.解决方法2.1 查看VCP串口信息2.2 查看驱动信息

写在前面

声明:笔者使用的ARM平台是orangepi4平台,Ubuntu,aarch64,D2XX Drivers :libftd2xx-arm-v8-1.4.8。

x64平台分别是:台式电脑和笔记本电脑,Ubuntu,x86_64,D2XX Drivers :libftd2xx-x86_64-1.4.8。

笔者按照FTDI官网:D2XX Drivers,安装D2XX驱动程序允许通过DLL直接访问USB设备,在x64平台上按照官网 ReadMe.txt提示如期进行,毫无问题,在ARM平台上出现了问题,最终在不懈探索尝试下,得到解决。

笔者经历的过程应该可以解决的通用平台存在的问题,下面把在这个过程出现的问题及解决过程做一个分享,希望能够为遇到该问题的同志们提供思路!

1.问题概述

ftdi d2xx与linux上的ftdi_sio冲突,linux自动加载了ftdi_sio驱动程序,需要删除ftdi_sio驱动程序。

sudo rmmod ftdi_sio

rmmod: ERROR: Module ftdi_sio is builtin.

sudo rmmod usbserial

rmmod: ERROR: Module ftdi_sio is builtin.

出现Module ftdi_sio is builtin的问题,内置了无法删除。

2.解决方法

2.1 查看VCP串口信息

ls -l /dev/ttyUSB0

FTDI usb串行设备转换器映射到ttyUSB0

sudo dmesg | grep ttyUSB0

得到如下信息:

2.2 查看驱动信息

tree /sys/bus/usb/drivers/ftdi_sio/

/sys/bus/usb/drivers/ftdi_sio/

├── 5-1:1.0 -> …/…/…/…/devices/platform/usb1/fe900000.dwc3/xhci-hcd.11.auto/usb5/5-1/5-1:1.0

├── bind

├── uevent

└── unbind

1 directory, 3 files

然后在超级用户下使用该命令

注:sudo -s 或者 su 命令进入超级用户

echo -n "5-1:1.0" > /sys/bus/usb/drivers/ftdi_sio/unbind

注:5-1:1.0 需要修改成上条命令查看对应的结果

查看VCP串口信息不存在了,大功告成!

下面就可以通过D2XX驱动程序从DLL直接访问USB设备,应用程序软件可以通过一系列DLL函数调用来访问USB设备。

感谢阅读,我是智科创玩,希望文章能够解决您的问题。

事为之,须极致!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。