摘要: 前面讨论的都是输出控制,这里结合Pinctrl和GPIO子系统,以野火i.MX6ULL开发板为例,通过引脚中断方式去获取开发板上的一个按键状态。 先来看一下按键部分的电路原理图,如下所示。 从上图中可以看到,按键接在了SNVS_TAMPER1(GPIO5_1)端口。按键未按下时端口为低电平,按下时为 阅读全文
posted @ 2026-06-21 18:52 fxzq 阅读(26) 评论(0) 推荐(0)
摘要: 在前面驱动LED的所有案例中,都是在驱动程序中去设置每个引脚的复用功能,这会导致所编写的驱动程序移植困难,可重用性差,缺乏对引脚的统一管理,容易出现引脚的重复定义等等弊病。为此,Linux内核引入了pinctrl子系统和GPIO子系统的概念。pinctrl子系统主要用于芯片引脚功能的管理,它基本上是 阅读全文
posted @ 2026-06-17 23:38 fxzq 阅读(43) 评论(0) 推荐(0)
摘要: Linux3.1之后的内核版本,引入了设备树的概念。同时,设备树还需要Bootloader的支持,如果使用Uboot,在1.1.3版本之后就可以支持设备树了。 设备树概念的提出其实有两方面的原因。其一当然是代码冗余,导致Linux内核臃肿不堪。在Linux内核源码中,只要是通过了基金会的认可,就可以 阅读全文
posted @ 2026-06-16 19:28 fxzq 阅读(32) 评论(0) 推荐(0)
摘要: 在前面讨论的所有LED驱动程序中,把全部设备信息和驱动代码都写在了一个文件中,从本质上看,这种开发方式与单片机的开发并没有太大的区别,一旦硬件信息发生变化,就必须要修改驱动程序的源码。然而,Linux作为一个发展成熟、功能齐全、结构复杂的操作系统,它对于代码的可维护性、复用性非常看重。为了解决驱动代 阅读全文
posted @ 2026-06-15 22:18 fxzq 阅读(23) 评论(0) 推荐(0)
摘要: 在前面的LED驱动控制中,都只使用了一个设备节点(一个次设备号)来进行操作,本例来讨论一下如何把三个基色的LED分别当成三个次设备,即产生出三个设备节点文件,但共用一个设备驱动(同一个主设备号),应用程序各自控制各自的LED 。 下面先给出完整的驱动程序代码,文件名仍为led.c。 #include 阅读全文
posted @ 2026-06-14 15:43 fxzq 阅读(11) 评论(0) 推荐(0)
摘要: 在开发驱动程序的时候,有时希望快速地实现其业务功能,以把精力放在文件接口功能的测试上来。这样,对于常见的一些繁琐而又不能省略的步骤(如设备号的申请、字符设备的注册、设备节点文件的创建等),就希望能尽量地简化。这时,就可以借用Linux内核提供的misc(杂项)来实现。 这里仍然使用“嵌入式Linux 阅读全文
posted @ 2026-06-12 15:57 fxzq 阅读(12) 评论(0) 推荐(0)
摘要: “嵌入式Linux中的LED驱动控制”一文实现了在野火i.MX6ULL开发板上对三个LED灯的控制,这里来讨论一下该驱动程序具体实现的原理。由于实例使用的是NXP的i.MX6ULL这款芯片,所以先来看一下与该芯片端口操作相关的寄存器。 先看软件多路复用控制寄存器SW MUX Control Regi 阅读全文
posted @ 2026-06-12 14:52 fxzq 阅读(16) 评论(0) 推荐(0)
摘要: 在前面“嵌入式Linux中字符型驱动程序的基本框架”一文中,讨论了一个字符型驱动的基本框架,但没有实现具体的驱动任务。这里就以野火i.MX6ULL开发板为例,通过编写一个实际的驱动程序去控制开发板上三个LED的亮灭。 先来看一下LED部分的电路原理图,如下所示。 从上图中可以看到,三个RGB的二极管 阅读全文
posted @ 2026-06-11 22:17 fxzq 阅读(35) 评论(0) 推荐(0)
摘要: LPC824芯片内含有12路12位逐次逼近型的ADC,分别复用在PIO0的一些引脚上,它们具有以下特性。 (1)12位逐次逼近型模数转换器。(2)输入在12个引脚中多路复用。(3)两个可配置转换序列具有独立的触发。(4)可选自动阈值上/下限比较和过零检测。(5)掉电模式和低功耗工作模式。(6)测量范 阅读全文
posted @ 2026-05-31 18:08 fxzq 阅读(11) 评论(0) 推荐(0)
摘要: 在当前的嵌入式市场上,有一种0.96英寸的OLED显示屏非常流行,这里就来讨论一下如何通过LPC824驱动它。目前该OLED屏流行两种接口,一种是SPI接口,另一种是I2C接口。这里仅讨论I2C接口的,其外形如下图所示。 该屏为128X64的点阵屏,横向有128个像数点,纵向有64个像数点。目前市场 阅读全文
posted @ 2026-05-24 14:12 fxzq 阅读(40) 评论(0) 推荐(0)