
驱动开发
文章平均质量分 91
Ao_Richard
个人学习理解笔记
展开
-
Linux--平台设备、平台驱动框架的注册源码分析
设备树dts文件中定义了设备节点,描述了硬件信息,比如寄存器信息,引脚信息等,内核将从设备树中解析得到的platform_device注册到平台总线中。具体设备树在内核中的编译流程可以看。原创 2024-07-03 21:07:45 · 1088 阅读 · 0 评论 -
Linux -- 字符设备驱动--LED的驱动开发
有入口函数就应该有出口函数:卸载驱动程序时,出口函数调用 unregister_chrdev。驱动层访问硬件外设寄存器依靠的是 ioremap 函数去映射到寄存器地址,然后开始控制寄存器。引脚操作那么有规律,并且这是跟主芯片相关的,那可以针对该芯片写出比较通用的硬件操作代码。得有一个入口函数:安装驱动程序时,就会去调用这个入口函数;看主芯片手册,确定寄存器操作方法:哪些寄存器?ioremap 映射寄存器的物理地址得到虚拟地址,读写虚拟地址。中指定使用哪一个引脚即可。编写驱动:先写框架,再写硬件操作的代码。原创 2024-04-07 20:53:47 · 1071 阅读 · 1 评论 -
Linux--IIC驱动编程实验
对于I2C主机驱动,一旦编写完成就不需要再做修改,其他的I2C设备直接调用主机驱动提供的 API函数完成读写操作即可。这个正好符合Linux的驱动分离与分层的思想,因此Linux内核也将 I2C驱动分为两部分:①、I2C总线驱动,I2C总线驱动就是SOC的I2C控制器驱动,也叫做I2C适配器驱动。②、I2C设备驱动,I2C设备驱动就是针对具体的I2C设备而编写的驱动。原创 2024-05-06 22:17:47 · 1201 阅读 · 0 评论 -
Linux--LCD驱动实验
LCD的驱动文件为。原创 2024-05-02 23:10:56 · 1331 阅读 · 0 评论 -
Linux--蜂鸣器驱动
蜂鸣器常用于计算机、打印机、报警器、电子玩具等电子产品中,常用的蜂鸣器有两种:有源蜂鸣器和无源蜂鸣器,这里的有“源”不是电源,而是震荡源,有源蜂鸣器内部带有震荡源(晶体振荡器、RC振荡器、LC振荡器),所以有源蜂鸣器只要通电就会叫。无源蜂鸣器内部不带震荡源,直接用直流电是驱动不起来的,需要 2K-5K 的方波去驱动。有源蜂鸣器只要通电就会叫,所以我们可以做一个供电电路,这个供电电路可以由一个IO来控制其通断,一般使用三极管来搭建这个电路。为什么我们不能像控制 LED。原创 2024-04-26 16:00:13 · 534 阅读 · 1 评论