技术栈
linux驱动
DA0221
12 天前
linux驱动
Linux驱动-Regmap子系统
Linux下大部分设备的驱动开发都是操作其内部寄存器,比如I2C/SPI设备的本质都是一样的,通过I2C/SPI接口读写芯片内部寄存器。芯片内部寄存器也是同样的道理,比如STM32MP157的PWM、TIM等外设初始化,最终都是要落到寄存器的设置上。Linux下使用i2c_transfer来读写I2C设备中的寄存器,SPI接口的话使用spi_write/spi_read等。I2C/SPI芯片又非常的多,因此Linux内核里面就会充斥了大量的i2c_transfer这类的冗余代码,再者,代码的复用性也会降低
DA0221
13 天前
linux
·
c语言
·
linux驱动
Linux驱动-I2C总线驱动
I2C是一种很常见的同步、串行、低速、近距离通信接口。Linux内核开发者为了让驱动开发工程师在内核中方便的添加自己的I2C设备驱动程序,更容易的在linux下驱动自己的I2C接口硬件,进而引入了I2C总线框架。与Linux下的platform虚拟总线不同的是,I2C是实际的物理总线,所以I2C总线框架也是Linux下总线、设备、驱动模型的产物。
DA0221
16 天前
linux
·
c语言
·
linux驱动
Linux设备树,DTS、DTB浅析
设备树(Device Tree),描述设备设备树的文件叫做DTS(Device Tree Source),DTS文件采用了树形结构来描述板机设备,也就是开发板信息,比如CPU数量、内存基地址、IIC接口上接了那些设备、SPI 接口上接了那些设备等。
泽平590
1 个月前
linux
·
运维
·
服务器
·
驱动开发
·
单片机
·
linux驱动
Linux Pinctrl子系统
我节选了其中的一部分,这里可以看到,他将一些引脚如,PH0,PH1,进行了分组配置,将他们分配到了uart sleep状态时候的一个引脚的配置,提前将他们分配到了gpio_input模式,这个其实就是所谓的生产端
ttkwzyttk
2 个月前
linux驱动
Linux内核中模块定义宏机制解析
在编写 Linux 设备驱动时,尤其是 platform、I2C、SPI 等总线驱动,我们经常会看到类似下面的写法:
BlueBirdssh
3 个月前
linux驱动
时钟相位差
好的,我来为您直观地绘制时钟信号之间的相位差示意图:## **时钟相位差示意图**### **1. 0° 相位差(同相)** ``` 时钟A: ___|‾‾‾|___|‾‾‾|___|‾‾‾|___|‾‾‾|___|‾‾‾|___ 时钟B: ___|‾‾‾|___|‾‾‾|___|‾‾‾|___|‾‾‾|___|‾‾‾|___ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ 边沿: 完全对齐,同时变化 关系: 两个时钟完全同步 ```
蓝天居士
3 个月前
linux驱动
·
gpio-keys
Linux设备驱动之gpio-keys(2)
接前一篇文章:Linux设备驱动之gpio-keys(1)本文内容参考:Linux设备驱动之gpio-keys_linux gpio-keys-CSDN博客
ton_tom
5 个月前
linux驱动
设备驱动程序编程-Linux2.6.10-kdb安装
下载解压patch
淮北也生橘12
5 个月前
linux驱动
·
嵌入式linux
Linux驱动知识点:容器嵌入机制(Container Embedding)
核心结论:容器嵌入机制是 Linux 内核 / 驱动中通过 “结构体成员指针反推完整结构体实例指针” 的核心设计,基于 C 语言结构体固定内存布局特性,通过container_of宏实现,解决 “回调函数仅获框架对象指针,需访问完整私有数据” 的核心问题,是驱动开发中上下文关联的必备手段。
yan12368
10 个月前
android
·
linux
·
驱动开发
·
linux驱动
Linux 驱动之设备树
【北京迅为】嵌入式学习之Linux驱动(第七期_设备树_全新升级)_基于RK3568_哔哩哔哩_bilibili
liuluyang530
1 年前
linux驱动
·
sysfs
linux sysfs的使用
在Linux内核驱动开发中,device_create_file 和 device_remove_file 用于动态创建/删除设备的 sysfs 属性文件,常用于暴露设备信息或控制参数。以下是完整示例及详细说明:
m0_74712453
1 年前
linux驱动
基于 IMX6ULL 的环境监测自主调控系统
项目完整代码:基于 IMX6ULL 的环境监测自主调控系统完整代码该项目的源代码适用于韦东山老师提供的出厂镜像,使用韦东山老师的 IMX6ULL 开发板可以直接运行代码复刻,其它开发板需要自行移植。
m0_74712453
1 年前
linux
·
linux驱动
Linux 驱动入门(5)—— DHT11(温湿度传感器)驱动
在编译驱动程序之前要先编译内核,原因有三点:编译内核步骤看我之前写过的文章:DHT11 是一款可测量温度和湿度的传感器。比如市面上一些空气加湿器,会测量空气中湿度,再根据测量结果决定是否继续加湿。 DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,具有超小体积、极低功耗的特点,使用单根总线与主机进行双向的串行数据传输。DHT11测量温度的精度为±2℃,检测范围为-20℃-60℃。湿度的精度为±5%RH,检测范围为5%RH-95%RH,常用于对精度和实时性要求不高的温湿度测量场合。
御风_21
1 年前
linux
·
ubuntu
·
linux驱动
Linux——字符设备驱动控制LED
目录驱动模块的加载和卸载驱动程序Makefile编写字符设备注册与注销字符设备驱动模板应用程序对驱动读写操作
臻一
1 年前
iic
·
linux驱动
Rockchip-linux驱动 --- IIC
pq113_6
1 年前
笔记
·
学习
·
linux驱动
·
ftdi_sio
ftdi_sio应用学习笔记 4 - I2C
目录1. 查找设备2. 打开设备3. 写数据4. 读数据5. 设置频率6 验证6.1 遍历设备6.2 开关设备
嵌入式成长家
2 年前
linux驱动
·
i2c驱动
·
i2c总线
·
i2c设备
[linux 驱动]i2c总线设备驱动详解与实战
目录1 描述2 结构体2.1 bus_type2.2 i2c_bus_type2.2.1 i2c_device_match
嵌入式成长家
2 年前
linux
·
linux驱动
·
platform总线设备驱动
[linux 驱动]platform总线设备驱动详解与实战
目录1 描述2 结构体2.1 bus_type2.2 platform_bus_type2.2.1 platform_match
小白橘颂
2 年前
linux
·
运维
·
驱动开发
·
microsoft
·
linux驱动
·
瑞芯微
·
rk3588s
Linux驱动(三):字符设备驱动之杂项
Linux下一切皆文件,所有的硬件设备在Linux应用层中都会被抽象成文件,所有对硬件设备的操作到应用层中,也都会被抽象成文件的操作,设备文件通常会被放在/dev目录下。
托马斯-木
2 年前
linux
·
linux驱动
7、杂项设备驱动
字符设备: IO传输过程中以字符为单位,没有缓冲,比如:i2c spi块设备: IO 传输过程中以块为单位。和存储有关的,TF卡 硬盘