2016年7月3日
摘要: 对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、输出调试信息等。<!--?xml:namespace prefix = "o" ns = "urn:schemas-microsoft-com:office:office" /--> Printk 阅读全文
posted @ 2016-07-03 15:43 软件1305周展鹏 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 本章主要讲硬件抽象层:HAL,它是建立在Linux驱动之上的一套程序库。刚开始介绍了为什么要在Android中加入HAL,目的有三个,一,统一硬件的调用接口。二,解决了GPL版权问题。三,针对一些特殊的要求。可以利用位于用户空间的HAL代码来辅助Linux驱动完成一些工作。<!--?xml:name 阅读全文
posted @ 2016-07-03 15:33 软件1305周展鹏 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 第八章介绍了第二个实验:蜂鸣器驱动,使开发板发出声音将介绍蜂鸣器的实现原理,并实现一个完整的蜂呜器驱动,通过该驱动可以控制蜂鸣器的打开与关闭。 蜂鸣器也称为PWM脉冲宽度调制,基本原理就是通过脉冲来控制蜂鸣器的打开和停止。蜂鸣 器是开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发 阅读全文
posted @ 2016-07-03 15:20 软件1305周展鹏 阅读(106) 评论(0) 推荐(0) 编辑
  2016年6月5日
摘要: Linux驱动是与I/O内存进行交互,所谓I/O内存是通过各种接口连接到主机的硬件在主机内存中的映射。Linux内核提供了多个与I/O内存交互的函数,Linux内核的内存管理模块负责同步I/O内存与硬件中的数据。 一:首先创建led驱动的设备文件 1.使用cdev_init函数初始化cdev 2.指 阅读全文
posted @ 2016-06-05 17:12 软件1305周展鹏 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 编写Linux驱动程序步骤如下: 一、建立Linux驱动框架(装载、卸载Linux驱动) Linux内核在使用驱动时首先要装载驱动,在装载过程中进行一些初始化动作(建立设备文件、分配内存等),在驱动程序中需提供相应函数来处理驱动初始化工作,该函数须使用module_init宏指定;Linux系统在退 阅读全文
posted @ 2016-06-05 16:48 软件1305周展鹏 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 本章对minicom串口调试工具做了详细介绍,其中包括了4个步骤;而在烧写Android系统之前需要使用Eboot擦除NandFlash,其方法分为5步。现在市场上有各种各样的开发板,我们应在掌握方法的基础上一定要详细了解不同开发板的差别所在。 本章还学习关于开发板的测试环境,由于我们所开发的Lin 阅读全文
posted @ 2016-06-05 15:30 软件1305周展鹏 阅读(101) 评论(0) 推荐(0) 编辑
  2016年5月1日
摘要: 配置Android源代码下载环境的步骤: 第一步:创建一个用于存放下载脚本文件(repo)的目录(可将该脚本文件一放到任何目录中,在这里使用~/bin)。 #mkdir ~/bin #PATH=~/bin:$PATH 第二步:下载repo脚本文件(用于下载Android源代码) #curl http 阅读全文
posted @ 2016-05-01 00:00 软件1305周展鹏 阅读(188) 评论(0) 推荐(0) 编辑
  2016年4月30日
摘要: Git的安装:在使用Git之前首先要安装Git。很多Linux系统已经带了Git。如果读者的Linux没有安装Git,可使用下面的方法来安装Git的最新版本。 Ubuntu Linux 10.10或更新的版本,可以使用下面的命令来安装Git。 #apt-get install git #apt-ge 阅读全文
posted @ 2016-04-30 12:27 软件1305周展鹏 阅读(100) 评论(0) 推荐(0) 编辑
  2016年4月29日
摘要: 开发、测试和调试Linux驱动、HAL程序库需要的工具为:JDK6或以上版本、Eclipse3.4或以上、ADT、CDT、Android SDK、Android NDK、交叉编译环境、Linux内核源代码、Android源代码、用于调试开发板的串口工具:minicom。 JDK的安装步骤: JDK的 阅读全文
posted @ 2016-04-29 14:44 软件1305周展鹏 阅读(109) 评论(0) 推荐(0) 编辑
摘要: Android的系统架构包括4层,这4层包含:Linux内核、C/C++代码库、Android SDK API、应用程序。 Android可分为两部分:应用移植和系统移植。应用移植是指将第4层的应用程序移植到某一个特定硬件平台上。Android系统移植是指让Android操作系统在某一个特定硬件平台 阅读全文
posted @ 2016-04-29 11:07 软件1305周展鹏 阅读(108) 评论(0) 推荐(0) 编辑