- 博客(12)
- 收藏
- 关注
原创 Android架构的最新理解-----基于Android11
HAL即硬件抽象层,是Android系统中位于最底层的一个组件,主要负责硬件相关功能的抽象和封装,为上层的软件提供统一的硬件访问接口。在HAL中,包含了与硬件设备相关的驱动程序和库,它们将底层硬件的操作和控制抽象化,使得不同硬件厂商的设备可以在Android系统上被统一地管理和访问。linux的外设驱动都属于HAL层,例如wifi、触摸、显示、喇叭等驱动,此外HIDL****也属于HAL层。提供与硬件设备相关的抽象接口,与设备无关的上层代码通过这些接口来访问硬件设备。
2024-04-11 09:41:23
775
原创 Linux驱动API说明及使用
本文档是自己在驱动开发过程中所使用到的api,本文档将会跟随本人开发持续更新,大家有想知道的哪一方面的知识,欢迎留言,我尽量满足大家
2023-10-18 13:35:29
536
原创 linux驱动通过uboot的变量实现掉电记忆
我们的项目屏幕的初始化是在kernel里而不是uboot,kernel的驱动的加载是在根文件系统之前,所以我们无法从配置文件中读取亮度。第一个参数是bootargs的属性,第二个参数是要把属性值作为参数的函数的指针,说白了就是函数。函数的要求是 static int __init类型,下面是我使用的时候的一个demo。第一个参数是要被转化的字符串,第二个参数是保存的进制,第三个参数才是int类型的数据的地址。我的是全志的Tina,tina 的环境变量是单独在一个文件中,所以我就写这里了。
2023-07-05 14:24:10
250
原创 【鲁班猫】安装python3.9.12
首先先到python官网下载python源码包(如果你想安装其他版本,将3.9.12修改成你对应的版本号)
2023-03-26 00:00:01
1262
原创 qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ““ even though it was found.
这句话意思是Qt应用程序时缺少xcb平台插件。这可能是因为未安装相应的Qt平台插件库,或者环境变量未正确设置。我们可以通过一下命令解决。
2023-03-24 22:46:24
8016
6
原创 Linux驱动开发-01基础框架与测试
基本构成驱动是用户开发的基础,在linux系统上进行软件设计,几乎都是调用驱动的函数对低层进行操作,实现相应的功能。这就表明驱动开发是给上层开发者提供接口的一种开发,其重要性不言而喻。驱动也分类别,字符设备驱动(点灯、I2C、SPI、音频)、块设备驱动(这里的块主要指的是存储块,所以主要是:EMMC、NAND、SD、U盘)和网络设备驱动(USB、wifi),这三种类别也有交叉,比如usb使用某些功能的时候属于字符驱动,使用网络功能时又是网络驱动。驱动开发必须遵循一定的规则,比如一些初始、加载、使用的函数名
2022-04-29 11:13:22
354
原创 单片机STM32低功耗
前言本总结参考野火STM32开发教程,由于原文档描述过于繁琐,且前后联系容易遗忘,故本人在理解之后进行总结。尽量把事情说的简单通透提起到低功耗,大家应该就能想到一部分实现的方法,可以让一些外设不工作,而这一般都涉及到电源系统,STM32的电源分类相对于51丰富的多,所以我们将从电源系统分类说起电源系统分类备份域电路、内核电路、ADC电路备份域电路STM32 的 LSE 振荡器、RTC、备份寄存器及备份 SRAM 这些器件被包含进备份域电路中,这部分的电路可以通过 STM32 的 VBAT 引脚获
2022-04-12 14:19:31
6130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人