1、查看系统自带的ch34x驱动

kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$ ls
aircable.ko ftdi_sio.ko kobil_sct.ko pl2303.ko usb_debug.ko
ark3116.ko garmin_gps.ko mct_u232.ko qcaux.ko usbserial.ko
belkin_sa.ko io_edgeport.ko metro-usb.ko qcserial.ko usb-serial-simple.ko
ch341.ko io_ti.ko mos7720.ko quatech2.ko usb_wwan.ko
cp210x.ko ipaq.ko mos7840.ko safe_serial.ko visor.ko
cyberjack.ko ipw.ko mxuport.ko sierra.ko whiteheat.ko
cypress_m8.ko ir-usb.ko navman.ko spcp8x5.ko wishbone-serial.ko
digi_acceleport.ko iuu_phoenix.ko omninet.ko ssu100.ko xr_serial.ko
empeg.ko keyspan.ko opticon.ko symbolserial.ko xsens_mt.ko
f81232.ko keyspan_pda.ko option.ko ti_usb_3410_5052.ko
f81534.ko kl5kusb105.ko oti6858.ko upd78f0730.ko
kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$

2、删除系统中带的比较老的版本

kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$ sudo rm -rf ch341.ko
kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$ ls
aircable.ko garmin_gps.ko mct_u232.ko qcaux.ko usbserial.ko
ark3116.ko io_edgeport.ko metro-usb.ko qcserial.ko usb-serial-simple.ko
belkin_sa.ko io_ti.ko mos7720.ko quatech2.ko usb_wwan.ko
cp210x.ko ipaq.ko mos7840.ko safe_serial.ko visor.ko
cyberjack.ko ipw.ko mxuport.ko sierra.ko whiteheat.ko
cypress_m8.ko ir-usb.ko navman.ko spcp8x5.ko wishbone-serial.ko
digi_acceleport.ko iuu_phoenix.ko omninet.ko ssu100.ko xr_serial.ko
empeg.ko keyspan.ko opticon.ko symbolserial.ko xsens_mt.ko
f81232.ko keyspan_pda.ko option.ko ti_usb_3410_5052.ko
f81534.ko kl5kusb105.ko oti6858.ko upd78f0730.ko
ftdi_sio.ko kobil_sct.ko pl2303.ko usb_debug.ko
kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$

3、下载ch34x驱动 https://www.wch.cn/download/CH341SER_LINUX_ZIP.html

解压后得到如下三个文件

kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX$ ls
driver README.md
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX$ cd driver/
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ ls
ch341.c ch341.h Makefile
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$

4、查看系统版本号

kangxubo@kangxubo-HKNS:/$ uname -r
5.19.0-38-generic
kangxubo@kangxubo-HKNS:/$

5、根据自己的系统版本查找对应的ch341.c文件 https://elixir.bootlin.com/linux/v5.19/source/drivers/usb/serial/ch341.c

将文件内容拷贝复制到上边下载的驱动文件中惊醒替换

6、编译文件

kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ make
make -C /lib/modules/5.19.0-38-generic/build M=/home/kangxubo/下载/CH341SER_LINUX/driver
make[1]: 进入目录“/usr/src/linux-headers-5.19.0-38-generic”
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_64-linux-gnu-gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
You are using: gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
CC [M] /home/kangxubo/下载/CH341SER_LINUX/driver/ch341.o
MODPOST /home/kangxubo/下载/CH341SER_LINUX/driver/Module.symvers
CC [M] /home/kangxubo/下载/CH341SER_LINUX/driver/ch341.mod.o
LD [M] /home/kangxubo/下载/CH341SER_LINUX/driver/ch341.ko
BTF [M] /home/kangxubo/下载/CH341SER_LINUX/driver/ch341.ko
Skipping BTF generation for /home/kangxubo/下载/CH341SER_LINUX/driver/ch341.ko due to unavailability of vmlinux
make[1]: 离开目录“/usr/src/linux-headers-5.19.0-38-generic”
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ ls
ch341.c ch341.ko ch341.mod.c ch341.o modules.order
ch341.h ch341.mod ch341.mod.o Makefile Module.symvers
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$

7、拷贝文件到系统目录下

kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ sudo cp ch341.ko /lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial
[sudo] kangxubo 的密码:
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ ls
ch341.c ch341.ko ch341.mod.c ch341.o modules.order
ch341.h ch341.mod ch341.mod.o Makefile Module.symvers
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ cd lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial
bash: cd: lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial: 没有那个文件或目录
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ cd lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial/
bash: cd: lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial/: 没有那个文件或目录
kangxubo@kangxubo-HKNS:~/下载/CH341SER_LINUX/driver$ cd /lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial
kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$ ls
aircable.ko io_ti.ko navman.ko ti_usb_3410_5052.ko
ark3116.ko ipaq.ko omninet.ko upd78f0730.ko
belkin_sa.ko ipw.ko opticon.ko usb_debug.ko
ch341.ko ir-usb.ko option.ko usbserial.ko
cp210x.ko iuu_phoenix.ko oti6858.ko usb-serial-simple.ko
cyberjack.ko keyspan.ko pl2303.ko usb_wwan.ko
cypress_m8.ko keyspan_pda.ko qcaux.ko visor.ko
digi_acceleport.ko kl5kusb105.ko qcserial.ko whiteheat.ko
empeg.ko kobil_sct.ko quatech2.ko wishbone-serial.ko
f81232.ko mct_u232.ko safe_serial.ko xr_serial.ko
f81534.ko metro-usb.ko sierra.ko xsens_mt.ko
ftdi_sio.ko mos7720.ko spcp8x5.ko
garmin_gps.ko mos7840.ko ssu100.ko
io_edgeport.ko mxuport.ko symbolserial.ko
kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$

8、查看驱动是否安装完成

kangxubo@kangxubo-HKNS:/lib/modules/5.19.0-38-generic/kernel/drivers/usb/serial$ lsmod
Module Size Used by
pcspkr 16384 0
ch341 24576 0
usbserial 57344 1 ch341
rfcomm 86016 4
ccm 20480 6
snd_soc_avs 131072 0

9、重启电脑

sudo depmod -a

9、安装cutecom

kangxubo@kangxubo-HKNS:~$ sudo apt install cutecom
[sudo] kangxubo 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi i965-va-driver ibus-data
ibus-gtk4 intel-media-va-driver libaacs0 libaom3 libass9 libavcodec58
libavformat58 libavutil56 libbdplus0 libblas3 libbluray2 libbs2b0
libchromaprint1 libcodec2-1.0 libdav1d5 libflashrom1 libflite1 libftdi1-2
libgme0 libgsm1 libgstreamer-plugins-bad1.0-0 libigdgmm12 liblilv-0-0
libllvm13 libmarisa0 libmfx1 libmysofa1 libnorm1 libopencc-data libopencc1.1
libopenmpt0 libpgm-5.3-0 libpinyin-data libpinyin13 libpostproc55
librabbitmq4 librubberband2 libserd-0-0 libshine3 libsnappy1v5 libsord-0-0
libsratom-0-0 libsrt1.4-gnutls libssh-gcrypt-4 libswresample3 libswscale5
libudfread0 libva-drm2 libva-wayland2 libva-x11-2 libva2 libvdpau1
libvidstab1.1 libx265-199 libxvidcore4 libzimg2 libzmq5 libzvbi-common
libzvbi0 mesa-va-drivers mesa-vdpau-drivers pocketsphinx-en-us
python3-ibus-1.0 va-driver-all vdpau-driver-all
使用'sudo apt autoremove'来卸载它(它们)。
将会同时安装下列软件:
libqt5serialport5
建议安装:
lrzsz
下列【新】软件包将被安装:
cutecom libqt5serialport5
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 7 个软件包未被升级。
需要下载 136 kB 的归档。
解压缩后会消耗 499 kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu jammy/universe amd64 libqt5serialport5 amd64 5.15.3-1 [34.6 kB]
获取:2 http://cn.archive.ubuntu.com/ubuntu jammy/universe amd64 cutecom amd64 0.30.3-1build1 [101 kB]
已下载 136 kB,耗时 2秒 (76.3 kB/s)
正在选中未选择的软件包 libqt5serialport5:amd64。
(正在读取数据库 ... 系统当前共安装有 216853 个文件和目录。)
准备解压 .../libqt5serialport5_5.15.3-1_amd64.deb ...
正在解压 libqt5serialport5:amd64 (5.15.3-1) ...
正在选中未选择的软件包 cutecom。
准备解压 .../cutecom_0.30.3-1build1_amd64.deb ...
正在解压 cutecom (0.30.3-1build1) ...
正在设置 libqt5serialport5:amd64 (5.15.3-1) ...
正在设置 cutecom (0.30.3-1build1) ...
正在处理用于 desktop-file-utils (0.26-1ubuntu3) 的触发器 ...
正在处理用于 gnome-menus (3.36.0-1ubuntu3) 的触发器 ...
正在处理用于 libc-bin (2.35-0ubuntu3.1) 的触发器 ...
正在处理用于 man-db (2.10.2-1) 的触发器 ...
正在处理用于 mailcap (3.70+nmu1ubuntu1) 的触发器 ...
kangxubo@kangxubo-HKNS:~$

10、安装完成之后还是无法使用串口助手,因为识别不到串口,是因为brltty导致的的,处理方式可以参考 https://blog.csdn.net/qq_39851127/article/details/125988455,也可以直接卸载 brltty

kangxubo@kangxubo-HKNS:~$ sudo apt remove brltty
[sudo] kangxubo 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi i965-va-driver ibus-data ibus-gtk4
intel-media-va-driver libaacs0 libaom3 libass9 libavcodec58 libavformat58 libavutil56 libbdplus0
libblas3 libbluray2 libbs2b0 libchromaprint1 libcodec2-1.0 libdav1d5 libflashrom1 libflite1
libftdi1-2 libgme0 libgsm1 libgstreamer-plugins-bad1.0-0 libigdgmm12 liblilv-0-0 libllvm13
libmarisa0 libmfx1 libmysofa1 libnorm1 libopencc-data libopencc1.1 libopenmpt0 libpcre2-32-0
libpgm-5.3-0 libpinyin-data libpinyin13 libpostproc55 librabbitmq4 librubberband2 libserd-0-0
libshine3 libsnappy1v5 libsord-0-0 libsratom-0-0 libsrt1.4-gnutls libssh-gcrypt-4 libswresample3
libswscale5 libudfread0 libva-drm2 libva-wayland2 libva-x11-2 libva2 libvdpau1 libvidstab1.1
libx265-199 libxvidcore4 libzimg2 libzmq5 libzvbi-common libzvbi0 mesa-va-drivers
mesa-vdpau-drivers pocketsphinx-en-us python3-ibus-1.0 va-driver-all vdpau-driver-all
使用'sudo apt autoremove'来卸载它(它们)。
下列软件包将被【卸载】:
brltty
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 7 个软件包未被升级。
解压缩后将会空出 8,294 kB 的空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 216869 个文件和目录。)
正在卸载 brltty (6.4-4ubuntu3) ...
正在处理用于 man-db (2.10.2-1) 的触发器 ...
kangxubo@kangxubo-HKNS:~$

11、至此串口驱动安装完成

ubuntu安装ch34x驱动,并安装串口调试助手的更多相关文章

  1. 串口调试助手vc源程序及其详细编写过程

    串口调试助手vc源程序及其详细编写过程   目次: 1.建立项目 2.在项目中插入MSComm控件 3.利用ClassWizard定义CMSComm类控制变量 4.在对话框中添加控件 5.添加串口事件 ...

  2. 基于.Net C# 通信开发-串口调试助手

    基于.Net C# 通信开发-串口调试助手 1.概述 串口调试助手,广泛应用于工控领域的数据监控.数据采集.数据分析等工作,可以帮助串口应用设计.开发.测试人员检查所开发的串口应用软硬件的数据收发状况 ...

  3. Red Hat Enterprise Linux 6安装好,开启网卡到搭建tftp服务器和安装dnw驱动,安装samba服务器

    今天一顿误操作,只能把Red Hat Enterprise Linux 6重新安装,一些必备工作只能重做,重做之后立马把Linux的文件备份,以备不时只需! 开启Linux以太网卡:vim /etc/ ...

  4. Qt 编写串口调试助手

    一.成品图展示 成品图如下所示: 二.串口通讯步骤 1.在工程文件(.pro)中添加串口通信相关运行库:QT += serialport 2.在头文件中添加: #include <QSerial ...

  5. OSDA - 一个以MIT协议开源的串口调试助手

    市场其实有很多开源的串行端口调试助手(Open Serial Port debug assistant),但其中很大一部分没有明确的开源协议,还有一部分只限个人使用,所以编写了一个并以MIT协议授权开 ...

  6. Delphi - 采用第三方控件TMS、SPComm开发串口调试助手

    第三方控件TMS.SPComm的下载与安装 盒子上可搜索关键字进行下载,TMS是.dpk文件,SPComm.pas文件: 安装方法自行百度,不做赘述. 通过TMS控件进行界面布局 界面预览: Delp ...

  7. [转]web串口调试助手,浏览器控制串口设备

    本文转自:https://blog.csdn.net/ldevs/article/details/39664697 打开串口时查找可用串口供选择 通过javascript调用activex控制串口收发 ...

  8. C#基于wpf编写的串口调试助手

    支持数据保存,自定义协议解码等功能 链接:https://pan.baidu.com/s/1zvhcES4QIjpDDJGzth1qOA 提取码:lp2x

  9. 纪念下自学QT 第十天 终于写成了串口调试助手

  10. Ubuntu 16.04安装NVIDIA驱动后循环登录问题

    问题描述 最近买了两块NVIDIA Titan X Pascal显卡装到了服务器(运行Ubuntu 16.04)上.为了使用这两块GPU显卡,首先需要安装显卡驱动,安装方式为 #安装一个依赖文件,并更 ...

随机推荐

  1. SpringCloud设置随机端口后的问题

    问题描述 SpringCloud服务提供者,设定了随机端口配置后,在EurekaServer中的注册端口.Tomcat的web端口.运行中获取到的server.port配置端口,共出现了4个不同的端口 ...

  2. 2.21(html)

  3. C语言——使用循环和递归计算阶乘

    使用循环和递归计算阶乘: /*使用循环和递归计算阶乘*/ #include<stdio.h> double fact(int num);//函数声明,阶乘函数,用于循环时调用 double ...

  4. What is the Best Python IDE for Data Science?

    Created by Guido van Rossum, Python was first released back in 1991. The interpreted high-level prog ...

  5. CentOS 8.x系统安装配置图解教程

    说明:截止目前CentOS-8.x最新版本为CentOS-8.4.2105,下面介绍CentOS-8.4.2105的具体安装配置过程 服务器相关设置如下: 操作系统:CentOS-8.4.2105 I ...

  6. js 获取鼠标位置的两种方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. TiSpark 初级应用

    目前正在使用tispark 进行离线计算,简单记录一下操作过程 一.技术验证 场景:计算每次充电过程中单体最高电压的变化速率  解决方案:     使用tispark 直接访问tidb的数据,采用sp ...

  8. (瞎学系列)RISC-V & ARM & x86

    reduced instruction set computing (RISC) -> ARM & RISC-V complex instruction set computing (C ...

  9. cookies、session、token

    cookies 当登录的时候这个set-cookies就是把cookies的数据保存到了客户端的application/cookies中 session 表示为会话,存放在服务端,当用户登录,服务器就 ...

  10. [.Net]Framwork WebAPI添加接口请求监控

    思路: 通过重写 ActionFilterAttribute 拦截Action的请求及返回信息,实现对接口请求的监听. 最终效果如下: 全局启用需配置如下: 局部启用需配置如下: 源码如下: 1 // ...