Android 设备驱动开发

本文分享了作者初涉Android驱动开发的心得,强调了Linux基础知识的重要性,并概述了从驱动到HAL层的学习路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  记录一下最近的工作吧。最近开始研究Android 设备的驱动,感觉和睁眼瞎差不多,不知道从哪开始。先写写我认为的步骤吧:

  Android驱动开发会比Linux驱动开发多出一个HAL层来。这个层也就是做一些见不得人的事。呵呵。也就是针对特殊硬件做的一些特殊操作吧,不像Linux下的驱动那样光明正大。也个层闹懂了,我觉得也没什么能难得住你了,至少在驱动这块。下面我们来具体讨论讨论。


make menuconfig 出现一大堆未定义错误

解决:

sudo apt-get install libncursesw5-dev


注:非lib64ncurses5-dev 或者 lib32ncurses5-dev


  初学者看到一大堆代码确实比较头痛,不知从何下手,就一头饥饿的小狮,你给他一头牛,它不知从哪下手。第一次看到Android的源代码确定让人很头痛,想研究却不知从哪开始。我说说自己的一些心得吧。但是最好有点基本功。那就是Linux and English.

  对Linux的内核要有一定的了解,能自己写一个简单的驱动,并能知道原理。因为研究Android源码最好的开端也是写驱动,因为我觉得这是能看到你所做的最直接也是最有效的方法。完了再向上看看HAL,最后再到Frame。一气呵成。在你到达成功彼岸之前最重要的一件是就是有人引你下水。那个人就是Linux驱动。(LDD) 

----------6/7-----------

       说说自己对这块的想法。怕忘了。这块要弄清的概念:

       1、嵌入式

       2、单片机

      以上是两个宏观概念。还有什么SoC,BSP  。然后分软件硬件两块来学习。硬件一定要把CPU的各项知识烂熟于心。然后就是周边知识。软件先研究下buildroot ,uboot ,linux 内核,之后就是其它各种操作系统来练手了。如VxWorks等等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值