首页 > 编程知识 正文

ubuntu ch340,ch340 linux驱动

时间:2023-05-05 03:38:45 阅读:216186 作者:1405

最近要用到串口的激光测距,我们的服务器是ubuntu 18.04,下面就开始安装CH340驱动。

------------------------------------------------------------------------------------------办法一
Linux 系统下面使用首先需要确保系统中没有老驱动存在,系统的默认驱动目录为:/lib/modules/ ( u n a m e − r ) / k e r n e l / d r i v e r s , 老 驱 动 完 整 路 径 为 / l i b / m o d u l e s / (uname -r)/kernel/drivers,老驱动完整路径为 /lib/modules/ (uname−r)/kernel/drivers,老驱动完整路径为/lib/modules/(uname -r)/kernel/drivers/usb/serial/ch341.ko。如果存在该文件,那么需要手动删除。之后编译下载的 Linux 驱动源码,将生成的新驱动文件 ch34x.ko 拷贝到原驱动路径下,然后执行 depmod 重启即可。插入设备后,可以通过 dmesg 查看设备是否枚举成功,以及驱动加载是否正常,成功会在 /dev 路径下产生 ttyUSB 开头的设备文件。

删除原来的驱动,ubuntu本身就自带了CH340的驱动,不过比较老了,我们把他删除掉
切到驱动目录下
cd /lib/modules/$(uname -r)/kernel/drivers/usb/serial/
sudo rm -rf ch341.ko

下载驱动
http://www.wch.cn/downloads/CH341SER_ZIP.html
CH341SER.ZIP
下载完解压

一、安装gcc

执行以下步骤安装GCC Compiler Ubuntu 18.04:
01、首先更新包列表:
sudo apt update
02、键入以下命令安装build-essential软件包:
sudo apt install build-essential
03、要验证GCC编译器是否已成功安装,请使用gcc --version命令打印GCC版本:
gcc --version

二、找到文件里的代码,进行注释掉
根据报错提示,注释掉内核错误的代码

// if(signal_pending(current))
// return -ERESTARTSYS;

//wait_queue_t wait;

三、运行 make
定位以文件夹的目录下:
cd DownloadsCH341SER 下
安装驱动
sudo make
生成了一堆文件,其中就有ch341.ko,我们把他迁移到驱动目录下,这样每次开机就自动加载了
mv ch341.ko //lib/modules/$(uname -r)/kernel/drivers/usb/serial/

重启一下 depmod
sudo depmod

可以通过 dmesg 查看设备是否枚举成功,以及驱动加载是否正常,成功会在 /dev 路径下产生 ttyUSB 开头的设备文件
dmesg

--------------------------------------------------------------------------------------办法二
使用内置驱动:modprobe ch341
接入ch340设备后,就会出现 /dev/ttyUSB*节点
这个是官方技术人员告诉我的,这种办法还没有试成功,可能当时是由于
我的串口本身接触不良导致的
----------------------------------------------------------------------------------------测试
测试安装驱动,图形串口工具,安装 cutecom
sudo apt-get install cutecom
运行的时候需要,否则会因为权限不足打不开串口
sudo cutecom
接下来就是开始测试了,配置选项,接着输入发送的指令,敲回车进行发送

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。