
Linux驱动与系统
文章平均质量分 80
PC技术小能手
热衷分享PC周边相关产品,技术,常见的软硬件问题知识分享
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux系统解决“module verification failed: signature and/or required key missing - tainting kernel”
修改后重新执行make编译生成驱动文件ch341.ko,执行:sudo make load加载驱动。加载Linux驱动程序时出现如上提示的原因是因为:驱动签名或需要的密钥找不到,导致驱动module认证失败。方式一、重新配置内核。原创 2023-12-12 11:43:08 · 11964 阅读 · 0 评论 -
Linux系统解决“Key was rejected by service”
Linux系统解决“Key was rejected by service”,本文旨在引导用户如何构建签名环境并一步步完成签名。原创 2023-12-12 11:20:07 · 4463 阅读 · 0 评论 -
Linux系统CH347应用—I2C编程与应用
驱动软件正常工作后,会在系统下创建新的I2C Master,拥有独立的bus num,原I2C器件的设备驱动可直接通过DTS配置文件或者sysfs节点挂载到该总线上,原有设备驱动无需任何修改。USB转JTAG/SPI/I2C/并口/GPIO等接口的Linux设备驱动程序,支持CH341的USB转SPI/I2C/EPP并口/MEM并口等,支持CH347的480Mbps高速USB转JTAG/SPI/I2C/GPIO等,支持32/64位操作系统。首字节地址通常是设备地址及读写位。原创 2023-10-23 13:56:22 · 3994 阅读 · 0 评论 -
Linux系统CH347应用—概述
CH347 高速 USB2.0 总线转换芯片,可实现为USB主机扩展JTAG\SWD\SPI\I2C\UART\GPIO等接口的功能,包含 CH347F和CH347T两种型号,其区别主要在于:1、封装差异,CH347F为QFN28_4X4,CH347T为TSSOP-20封装;2、模式差异,CH347F不需要进行模式配置进行接口选择,CH347T需要进行模式选择;3、VIO电源差异,CH347T提供独立的VIO电源引脚,支持IO接口独立供电,支持3.3V/2.5V/1.8V等。原创 2023-10-23 11:36:58 · 2171 阅读 · 0 评论 -
CH342/CH343/CH344/CH346/CH347/CH9101/CH9102/CH9103/CH9104/CH9111/CH9114 Linux串口驱动使用教程
CH343 Linux串口驱动 ch343ser_linux 支持USB转串口芯片 ch342/ch343/ch344/ch347/ch9101/ch9102/ch9103/ch9104等 ,同时该驱动配合ch343_lib库还提供了芯片GPIO接口的读写功能,内部EEPROM的信息配置和读取功能等。CH344Q:16CH344L:12CH9102F:5CH9102X:6可以使用git clone下载该驱动,也可以点击网页下载压缩包文件。原创 2023-08-10 12:06:37 · 14711 阅读 · 1 评论 -
基于CH347实现USB扩展SPI/I2C/GPIO Master主机应用方案
在安卓/Linux主机上经常会遇到CPU原生SPI/I2C/GPIO Master资源通道不够或者功性能不满足实际产品需求的情况,基于USB2.0高速USB转接芯片CH347,配合厂商提供的USB转MPHSI(Multi Peripheral Serial Line)Master总线驱动(CH34X-MSPI-Master)可轻松实现为系统扩展SPI和I2C总线、GPIO Expander、中断信号等。原创 2023-04-11 21:28:27 · 8766 阅读 · 0 评论 -
Linux系统shell命令stty、echo、cat操作串口
stty命令可以用来设置/获取当前终端的配置,此处仅针对UART串口的设置做介绍。设置串口说明:speed 串口波特率cs8 数据位8位parenb 无校验cstopb 停止位1位其余命令是针对串口设备的设置,可直接照搬。详细介绍可以 man stty 查看。查看串口设置。原创 2023-07-20 22:36:27 · 14074 阅读 · 0 评论 -
CH34X-MPHSI高速Master扩展应用—《i2c-tools使用》
本文介绍,基于USB2.0高速USB转接芯片CH347,配合厂商提供的USB转MPHSI(Multi Protocol High-Speed Serial Interface)Master总线驱动(CH34X-MPHSI-Master)为系统扩展I2C总线的用法,除此之外,还可以扩展SPI总线和GPIO等资源。驱动软件正常工作后,会在系统下创建新的I2C Master,拥有独立的bus num,原I2C器件的设备驱动可直接挂载到该总线上,无需任何修改。原创 2023-07-04 17:06:06 · 830 阅读 · 2 评论 -
CH9434 嵌入式Linux与安卓系统驱动移植和使用教程
CH9434是一款SPI转四串口转接芯片,提供四组全双工的9线异步串口,用于单片机/嵌入式/安卓系统扩展异步串口。提供25路GPIO,以及支持RS485收发控制引脚TNOW。本篇介绍CH9434在嵌入式Linux系统/安卓系统的驱动移植和使用方法。原创 2022-12-12 15:48:35 · 8825 阅读 · 0 评论 -
Linux/安卓驱动编译常见错误与解决方法
本贴对Linux和安卓系统驱动编译中常见的错误进行记录,并补充相应解决方法,若读者对照此方法无法解决,欢迎补充讨论。错误一:error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]表示当前编译环境会进行编译的 DATE 以及 TIME 进行检查,若有Warnings警告也作为错误处理上报。参考解决方法:1. 驱动对应的Makefile文件中增加一行:CFLAGS += -Wno-error=date原创 2022-04-17 22:45:20 · 4671 阅读 · 0 评论 -
USB转8串芯片CH348 Linux系统使用教程
USB转8串芯片CH348 Linux系统使用教程原创 2022-03-25 11:40:39 · 3975 阅读 · 0 评论 -
Linux libusb开发教程<二> API编程接口介绍
一、背景介绍上一篇博客主要介绍了libusb在linux系统下的详细安装过程,目前新的libusb离线包已经不需要再单独安装libusb-compat资料包了。libusb 较大版本变动以 V1.0 为分界线,访问官网:http://libusb.info 时可以发现文档说明都以 V1.0 为主了。官网界面清晰明了,分类十分明确,开发者可以直接从网站下载文档,API使用说明,例程等内容。V1.0 相对于之前版本,提供了更丰富的功能和接口,本篇直接基于新版本li...原创 2021-09-18 17:56:57 · 5907 阅读 · 0 评论 -
Linux libusb开发教程<一> 介绍与安装
1、libusb简介libusb 是一个 C 库,提供对 USB 设备的通用访问。 它旨在供开发人员用于促进与 USB 硬件通信的应用程序的开发。其具有如下特点可移植:使用单个跨平台 API,它提供对 Linux、macOS、Windows 等上的 USB 设备的访问。用户模式:应用程序与设备通信不需要特殊权限或提升,无需驱动。与版本无关:支持所有版本的 USB 协议,从 USB1.0 到 USB3.1,并且API接口保持不变,使得访问不同USB协议版本的USB设备时,开发工作轻便。2、原创 2021-09-18 11:25:18 · 8008 阅读 · 1 评论 -
Linux系统固定USB串口设备名称
概述Linux系统下使用多个USB转串口设备或一个USB设备拥有多个串口时,经常会遇到多个串口对应的设备名称无法区分的问题。Linux系统下的串口名称分配和硬件的上电顺序有关,如果是开机启动或者接在同一HUB下面,则由系统枚举各USB设备的顺序相关。以下介绍通过udev工具实现为USB转串口设备固定串口名称的实现原理与方法,该方法也适用于其他USB设备驱动。关于udevudev运行在用户态,脱离驱动层的关联,基于这种设计实现,用户可以通过编写规则来动态删除和修改/dev下的设备文件,任意命名设备。除了原创 2021-04-07 16:24:01 · 5843 阅读 · 0 评论 -
Linux CDC ACM驱动介绍
一、实现原理CDC ACM驱动实现以USB设备驱动和tty设备驱动为基础,可将USB设备驱动的实现看作tty驱动和硬件之间数据流转换的桥梁。也即,整个USB CDC协议的实现均体现在USB部分,USB设备的描述符定义,CDC虚拟串口的设定,线路状态设置与读取,串口数据的发送与读取均遵循CDC协议规范。二、主要过程驱动路径:/drivers/usb/class/cdc-acm.c驱动实现:注册USB设备驱动&tty设备驱动/* * Init / exit. */sta原创 2020-08-08 16:26:00 · 8075 阅读 · 3 评论 -
Linux TTY驱动/串口驱动开发
一、TTY介绍当前主要有三种类型tty设备及驱动程序:控制台、pty和串口。其中控制台和pty可看作为虚拟tty设备,物理tty设备包含串口、USB转串口、SPI转串口等。二、TTY设备及驱动信息查看确定tty设备及驱动程序类型可查阅/proc/tty/drivers文件。如下所示:文件从左至右列举了:驱动程序名称,默认节点名称,驱动程序主设备号,次设备号范围,tty驱动程序类型。以cdc-acm驱动为例,驱动为acm,节点名为/dev/ttyACMx,类型为serial串口。.原创 2020-08-08 16:03:01 · 2299 阅读 · 0 评论 -
Linux USB驱动开发
USB驱动介绍Linux内核支持两种主要类型的USB驱动程序:USB主机(Host)驱动程序和USB设备(device)驱动。主机驱动程序控制插入其中的USB设备,而USB设备驱动程序控制该设备如何作为一个USB设备和主机通信(注重的是方式)。一、USB驱动概览在Linux驱动中,处于USB驱动最底层的是USB主机控制器硬件,在其上的是USB主机控制器驱动,在主机控制器驱动上的为USB核心层,再上层为USB设备驱动层。USB核心层(USB core)向上为USB设备驱动提供编程接..原创 2020-08-08 15:54:17 · 1148 阅读 · 0 评论 -
CH341/CH340Linux驱动使用教程
在官方Linux内核版本中自Kernel2.6就默认包含了对USB转串口芯片CH340/CH341/CH9341/CH343芯片的驱动支持(由国外开源社区开发者提交),该驱动版本也在不断更迭并由沁恒官方与国外驱动Maintainer共同维护,若用户在一些老版本如内核2.x与3.x上使用该串口驱动发现使用问题,建议联系沁恒技术支持:tech@wch.cn获取最新驱动并进行替换。一、使用内核自带驱动...原创 2020-04-26 13:45:30 · 7237 阅读 · 0 评论