- 博客(12)
- 收藏
- 关注
原创 【C语言】format属性 | 变参函数
在C语言中,变参函数并不强制要求声明format属性,但这取决于你的用途。如果你的变参函数是用来处理格式化字符串的,比如类似于printf这样的函数,那么使用format属性是非常推荐的,因为它可以帮助静态分析工具理解函数参数的预期用途,从而提高代码的安全性和可维护性。
2024-07-03 17:12:27
1004
原创 【Linux驱动】设备树引入&内核对设备树的处理
如上图所示,是设备树的模型,之所以叫“树”,是因为所有的设备节点都挂载在系统总线上,形成一个树状结构。其中,所有的设备节点都是“根节点”的子节点,且子节点还可以继续挂载子节点,可以无限挂载下去,所以该模型有着较强的扩展能力。而驱动程序所需要的硬件信息,由内核读取设备树文件后,转化为platform_device结构体,提供给驱动程序。表示根节点,后面紧跟一对花括号,根节点的属性和根节点下挂载的子节点在花括号内定义。文件中定义了很多设备,但是在板子上某些设备是没有的,这时可以给这些设备添加一个。
2024-05-29 23:49:42
1468
原创 【Linux驱动】驱动模型进化 && 总线设备驱动模型
这就带来了一个问题——如果我们此时更换了一个开发板,就需要修改驱动程序中要操作的寄存器,每更换一个开发板,就需要对寄存器操作进行修改,这样的代码维护起来非常的麻烦,也不利于扩展。如上图所示,可以看出,在platform_bus中维护了两条链表,一条是挂载在该总线下的设备链表,另一条是挂载在该总线下的驱动链表。在linux系统中,大量使用了的面向对象的思想,因此,针对驱动层的分层,也抽象出了不同的结构体对象。在上一篇文章中,基于最基础的驱动程序框架,实现了一个简单的LED驱动程序,但驱动程序中的。
2024-05-09 00:46:23
1130
1
原创 【Linux驱动】Linux内核移植(基于百问网imx6ull_pro开发板)
是home目录下一个隐藏的shell文件,用于储存用户的个性化设置。在bash每次启动时都会加载.bashrc文件中的内容,并根据内容定制当前bash的配置和环境。
2024-04-08 00:02:24
1078
4
原创 【Linux驱动】pinctrl子系统主要数据结构
在前面的文章中学习了pinctrl子系统的相关概念和使用方法,对于驱动工程师来说已经够用了,但是如果作为BSP工程师,就需要了解pinctrl是怎么实现的。
2024-04-07 23:57:44
812
原创 【Linux驱动】pinctrl子系统的概念与使用
如果我们想让pinA和pinB用于SPI功能,需要设置IOMUX,配置这两个引脚连接到SPI模块。如果我们想让pinA和pinB用于GPIO功能,需要设置IOMUX,配置这两个引脚连接到GPIO模块。📌 此处的GPIO模块与SPIIICUART等为并列关系,它与pinctrl子系统的关系是,使用pinctrl子系统将pinApinB等复用至GPIO模块,然后才能将pinApinB用于GPIO功能。除了将引脚复用为某种功能外,有时候还需要配置引脚的电气属性,如上拉、下拉、开漏等等。
2024-03-19 01:18:41
1943
1
原创 【Linux驱动】Input子系统
输入子系统由驱动层(input_driver)、核心层(input_core)以及事件层(input_event_handle)组成,如下图所示:Note:Input子系统中所有输入设备的主设备号都是13,核心层通过次设备号来将输入设备分类,例如如0-31是游戏杆,32-63是鼠标(对应Mouse Handler)、64-95是事件设备(如触摸屏,对应Event Handler)。在使用input系统时,不需要去注册字符设备,只需要向系统申请一个input_device即可。在Linux内核中,使用inp
2024-03-07 00:12:29
1934
1
原创 STM32串口发送数据的一段代码理解(纯属个人理解,如有不对,敬请指出)
STM32串口发送数据的一段代码理解(纯属个人理解,如有不对,敬请指出)本人是一位单片机的初学者,最近研究串口发送数据时对以下代码不能理解,通过几天的思考,有所顿悟,特将自己的理解写下来,希望能帮到像我这样的初学者。代码如下:void USART2_send_byte(uint8_t byte){ while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET); //待发送完成 USART_SendData(USART2,byte); //通过
2021-09-09 20:16:45
1602
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人