1. 为何有此需求
    原本树莓派3B+带有两个串口,一个硬件串口,一个mini串口。硬件串口默认给了蓝牙使用,mini串口使用的是CPU的时钟(CPU频率变化不稳定)。因此,蓝牙与硬件串口不可兼得。
    我的3B+用一块3.5寸屏幕插在排针上面,导致排针要另外接线非常麻烦。因此,考虑从USB接口再接一个串口使用。
  2. 驱动下载官方网址(linux版本)
    http://www.wch.cn/download/CH341SER_LINUX_ZIP.html
    下载下来是三个文件,分别是:ch34x.c、Makefile、readme.txt。通过源码安装步骤为:(1)进入该文件夹;(2)make;(3)make load
  3. 遇到问题
    (1) make步骤报错:/lib/modules/4.19.75-v7+/build: 没有那个文件或目录。 停止。
    这个时候,是linux-headers的问题。处理办法:
    sudo apt-get install linux-headers
    ls /usr/src 查看linux-headrs的版本
    cd /lib/modules/4.19.75-v7+ 进入文件夹(上面报错的文件夹)
    sudo ln -s /usr/src/linux-headers-4.19.66-v7+ build 形成链接即可
    (2) 报错:unknown type name ‘wait_queue_t’。打开ch34x.c查看源码,发现实际上wait_queue_t wait 并没有用,直接注释掉。
    (3) 报错:implicit declaration of function ‘signal_pending’。这个错误是因为没有包含一个头文件signal.h。
    在文件包含头文件的地方加入 #include <linux/sched/signal.h>。
  4. 以上问题解决之后,进入源码文件夹依次执行(1)make;(2)make load即可安装成功。
  5. 如何查看是否安装成功。
    dmesg | grep ttyS* 执行该命令,即可查看拥有几个串口。能够看到:
    [ 2.025631] console [ttyS0] enabled
    [ 7.836397] usb 1-1.2: ch341-uart converter now attached to ttyUSB0
    成功!!
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐