【ubuntu 22.04不识别ch340串口】
这个真是挺无语的,发现国内厂商普遍对开源环境不感兴趣,ch340官方linux驱动好像被厂家忘了,现在放出来的驱动还是上古内核版本:

于是,驱动居然要用户自己编译安装。。还好网上有不少大神:链接,测试了下,可以使用,步骤也不算太麻烦,这个帖子是对原文方法的一点整理和补充,否则可能不能自动加载驱动。
- 下载官方linux驱动:链接,解压后里面有三个文件,其实就只用里面的
makefile文件:

- 可以用一些命令查看下当前状态
# 查看内核版本
uname -r
# 查看系统自带驱动
ls /lib/modules/$(uname -r)/kernel/drivers/usb/serial
# 查看串口设备信息
sudo dmesg | grep tty
# 如果brltty占用了串口就把他卸载掉,不会影响使用
sudo apt remove brltty
- 删除旧版本ch340驱动,但需要记住原模块名叫什么,一会儿编译后放过来还需要命名一致,否则驱动不会自动加载
#进入串口驱动目录,用管理员权限删除ch34开头那个驱动文件
cd /lib/modules/$(uname -r)/kernel/drivers/usb/serial
sudo rm ch341.ko
- 到这个网站链接选择匹配的内核版本,然后把右边的代码全部拷贝出来替换掉第一步解压出来的ch34x.c,删除新建一个同名c文件也可以。然后编译,期间可能提示编译器不匹配,不影响使用
#编译
make
#加载,但这样下次重启驱动后需要重新加载
make load
#或者这样加载,也是重启后失效
sudo insmod ch34x.ko
- 用管理员权限把编译出来的
ch34x.ko文件拷贝回原驱动目录,然后修改模块名到之前的旧驱动名称,我这里是ch341.ko。
#驱动文件拷贝回驱动目录
sudo cp ch34x.ko /lib/modules/$(uname -r)/kernel/drivers/usb/serial
cd /lib/modules/$(uname -r)/kernel/drivers/usb/serial
sudo mv ch34x.ko ch341.ko
重启,ch340也可以自动加载了。(这么看起来cp2102好多了,不需要折腾就能用)

相关文章:
【ubuntu 22.04不识别ch340串口】
这个真是挺无语的,发现国内厂商普遍对开源环境不感兴趣,ch340官方linux驱动好像被厂家忘了,现在放出来的驱动还是上古内核版本: 于是,驱动居然要用户自己编译安装。。还好网上有不少大神:链接,…...
解决:eclipse绿化版Resource注解报Resource cannot be resolved to a type问题
如图: 网上解决教程很多,我的eclipse是绿化版的,不需要安装 解决办法如下: 1、在eclipse中,进入到Window->Preferences->Java->Installed JREs中 默认显示如下: 2、点击Add-->Standard VM--…...
初识Cookie和Session
Cookie和Session出于安全考虑,浏览器不让网页直接操作文件系统,而Cookie就是一个折中的方案,可以让网页暂存一些数据在本地,不能存复杂的对象,只能存字符串。Cookie是按照域名分类的,这个很好理解。如何理解…...
vue3的七种路由守卫使用
路由守卫有哪几种? 路由守卫(导航守卫)分为三种:全局守卫(3个)、路由独享守卫(1个)、组件的守卫(3个)。 路由守卫的三个参数 to:要跳转到的目标路由 from:…...
华测导航GPCHC协议ROS驱动包,CGI610、410接收机,NavSatStatus、GPSFix和普通格式
目录一、消息类型1.1 sensor_msgs/NavSatFix1.2 sensor_msgs/NavSatStatus1.3 gps_common::GPSFix1.4 sensor_msgs::Imu二、部分源码2.1 相关的依赖和库2.2 文件结构2.3 字段分割函数2.4 定义消息话题Ubuntu 20.04 noetic 华测CGI 610——RS232-C——GPCHC 一、消息类型 1.1 …...
算法实战应用案例精讲-【图像处理】Pillow图像处理(python代码实战)
目录 操作图像 计算机图像基础 颜色和RGBA值 坐标和 Box 元组 CMYK 和 RGB着色...
C语言通讯录【动态+文件】
目录定义结构体基础操作部分文件操作部分定义结构体 我们要做一个通讯录,里面的信息有一个人的名字,年龄,性别,地址和电话号 对于姓名,年龄等字符串,为了日后方便调整其长度,需要预定义一下它…...
Linux驱动开发详细解析
Linux驱动开发详细解析 驱动概念 驱动与底层硬件直接打交道,充当了硬件与应用软件中间的桥梁。 具体任务 读写设备寄存器(实现控制的方式)完成设备的轮询、中断处理、DMA通信(CPU与外设通信的方式)进行物理内存向虚…...
Java Character 类,超详细整理,适合新手入门
目录 一、什么是Java Character 类? 二、Character类有哪些常用的静态方法? 1、将一个字符分别转换为大写字母和小写字母 2、如何判断一个字符是否是数字? 3、如何将一个字符转换为数字? 4、如何将一个字符串转换为字符数组…...
Python量化入门:关于收益率的一些概念
今天我们简单地介绍关于收益率的一些概念,方便大家理解我们后续的量化教程的分享。这些都很简单,但是请有经验的读者理解,毕竟有些读者没有这些基础,后边理解起来可能会有些吃力。 一、收益率简介 在金融领域,收益率是我们耳熟能详的一个名词。资产的收益率是指投入资产…...
微搭使用笔记(三) 数据模型介绍及初步使用
基于数据模型实现表单页面的生成和数据的保存、查看 表单应用是微搭的一个重要的使用场景,我们举下面一个简单的问卷调查的例子: 基于以上问卷,本文我们采取数据模型的方式生成表单页面并完成数据的保存及查看。 数据模型概述 先看下官方文档对于数据…...
JavaScript刷LeetCode心得
各类题的解决方案 话不多说,系统整理下解题的一些算法和解决方案 二叉树 二叉树大多使用递归的方式左右两个元素向下递归。比如: 计算二叉树最大深度 var maxDepth function (root) {if (root null) return 0return 1 Math.max(maxDepth(root.le…...
浙江工商大学2023年硕士研究生 入学考试初试成绩查询通知及说明
根据往年的情况,2023浙江工商大学MBA考试初试成绩可能将于2月21日下午两点公布,为了广大考生可以及时查询到自己的分数,杭州达立易考教育为大家汇总了信息。一、成绩查询考生可以登录中国研究生招生信息网(http://yz.chsi.com.cn/…...
华为OD机试题 - 子序列长度(JavaScript)
最近更新的博客 华为OD机试题 - 任务总执行时长(JavaScript) 华为OD机试题 - 开放日活动(JavaScript) 华为OD机试 - 最近的点 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试题 - 最小步骤数(JavaScript) 华为OD机试题 - 任务混部(JavaScript) 华为OD机试题 - N 进…...
Simulink 自动代码生成电机控制:STM32 Encoder编码器使用总结
目录 Encoder 原理 STM32 Encoder 计数原理 模型仿真 模拟Encoder 基于Encoder计算角度和速度 关于启动的仿真 代码生成 运行演示 总结 总结一下基于STM32的Encoder接口的电机运行,相应的仿真和实验都是基于一个1024脉冲的增量式光电编码器,关于…...
《计算机系统基础》——计算机系统导论
文章目录《计算机系统基础》——计算机系统导论计算机的基本组成程序开发与执行过程机器语言汇编语言高级语言程序的转换处理程序的数据流动计算机系统层次结构早期计算机系统1GL2GL现代计算机系统3GL4GL指令集体系结构《计算机系统基础》——计算机系统导论 🚀接下…...
华为OD机试 - 获取最大软件版本号(JavaScript) | 机试题算法思路 【2023】
获取最大软件版本号 题目 Maven版本号定义,<主版本>.<次版本>.<增量版本>-<里程碑版本> 举例3.1.4-beta 其中,主版本和次版本都是必须的,主版本,次版本,增量版本由多位数字组成,可能包含前导零,里程碑版本由字符串组成。 <主版本>.<…...
python--pygame实现各级菜单栏目设置
随着学期的开始,同学们也即将进入计算机相关课程的课程设计了,对于python课程设计的小伙伴,可能有些是需要利用pygame来写应该小游戏的,因为最近很多小伙伴同学也在想我要一些基于python的pygame模块做的游戏项目,此外…...
C++Primer15.3节练习
练习15.11: debug定义如下所示: //基类 class Quote { public:Quote() default;Quote(const std::string& book,double sales_price):bookNo(book),price(sales_price){ }std::string isbn()const { return bookNo; }virtual double net_price(st…...
解决实际项目中stalled时间过久的问题
背景 在公司参与了一个做度量统计的项目,该项目的特点是页面上的表格、卡片、图标非常多。项目经常出现一种情况:页面加载速度较慢,开始怀疑是由于计算量较大,后端接口相应速度较慢。优化了一版后端接口后(加缓存、优…...
OpenClaw飞书机器人:Qwen3-VL:30B多模态应用指南
OpenClaw飞书机器人:Qwen3-VL:30B多模态应用指南 1. 为什么选择OpenClawQwen3-VL:30B组合? 去年冬天,当我第一次尝试用AI助手处理团队飞书群里的图片报销单时,经历了惨痛的失败——要么识别错金额,要么把同事的午餐照…...
VSCode安装与Qwen3开发环境配置一站式解决方案
VSCode安装与Qwen3开发环境配置一站式解决方案 为智能字幕开发量身打造的高效开发环境配置指南 1. 开篇:为什么需要专门的环境配置? 你是不是也遇到过这样的情况:好不容易下载了代码,却发现各种依赖报错,环境配置折腾…...
解决大模型推理中的c10::Half与float类型不匹配:从错误到实战修复
大模型半精度推理实战:彻底解决c10::Half与float类型冲突 当你第一次看到RuntimeError: expected m1 and m2 to have the same dtype, but got: float ! c10::Half这样的错误时,是不是感觉像在解一道没有提示的谜题?作为处理过数十个类似案例…...
一个普通程序员转型AI的崩溃日记:我做了一个“没用”的系统救了他
一位Java程序员在转型AI时遭遇严重崩溃,面对AI代码生成的失控感和同行成功的压力,同时因学习心理学而无法再通过"压榨自己"换取成功。在最痛苦之际,他创建了名为"LifeGame"的自我安抚系统,将困扰转化为游戏任…...
Screencast-Keys问题速解:从环境配置到界面优化的7个实战方案
Screencast-Keys问题速解:从环境配置到界面优化的7个实战方案 【免费下载链接】Screencast-Keys Blender Add-on: Screencast Keys 项目地址: https://gitcode.com/gh_mirrors/sc/Screencast-Keys Screencast-Keys是一款Blender插件,能够实时显示…...
MCU高级开发技巧:外设驱动与系统架构优化
MCU高级用法解析:从外设驱动到系统架构设计1. MCU开发中的标准化与创新在嵌入式系统开发领域,MCU(微控制器单元)作为核心控制器件,其开发过程需要遵循严格的工程规范。标准的开发流程包括对变量和函数的明确定义,确定其生命周期、…...
别再死记硬背公式了!用Python+SymPy手把手推导平面2R机器人动力学方程
用PythonSymPy实战推导平面2R机器人动力学方程 在机器人学领域,动力学方程的推导往往是理论学习中最令人头疼的环节。传统教材中密密麻麻的偏微分符号和冗长的代数运算,让许多初学者望而却步。本文将带你用Python的SymPy符号计算库,从零开始完…...
颠覆式创新交互:桌面虚拟助手如何提升你的工作效率
颠覆式创新交互:桌面虚拟助手如何提升你的工作效率 【免费下载链接】BongoCat 让呆萌可爱的 Bongo Cat 陪伴你的键盘敲击与鼠标操作,每一次输入都充满趣味与活力! 项目地址: https://gitcode.com/gh_mirrors/bong/BongoCat 桌面虚拟助…...
yatest:Arduino主机端单元测试与API模拟框架
1. yatest:面向Arduino生态的轻量级主机端单元测试框架在嵌入式开发实践中,Arduino平台因其易用性与丰富生态广受硬件工程师、教育工作者及电子爱好者青睐。然而,其传统开发流程长期面临一个根本性工程瓶颈:缺乏可落地的、与硬件解…...
UnblockNeteaseMusic完整指南:如何一键解锁网易云音乐灰色歌曲
UnblockNeteaseMusic完整指南:如何一键解锁网易云音乐灰色歌曲 【免费下载链接】UnblockNeteaseMusic Revive unavailable songs for Netease Cloud Music 项目地址: https://gitcode.com/gh_mirrors/un/UnblockNeteaseMusic 还在为网易云音乐里那些灰色的、…...
