当前位置:主页 > 计算机电子书 > 移动开发 > Android下载
Android系统移植和驱动开发

Android系统移植和驱动开发 PDF 高清版

  • 更新:2020-09-17
  • 大小:74.8 MB
  • 类别:Android
  • 作者:mxb
  • 出版:电子工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

Android系统移植和驱动开发针对特定硬件平台从零构建Android系统,包括平台移植、应用开发、内核开发以及驱动开发。目前企业对Android人才需求主要分布在应用开发和底层系统开发两个方面,企业最紧缺的是兼具二者的全才型系统工程师,和嵌入式Linux人才需求基本相似。结合这样的人才需求特点,本书的读者是想兼顾应用开发和底层开发的系统级开发工程师。本书共12章,开篇介绍了Android底层开发和嵌入式开发之间的关系,接着介绍Android系统的编译和移植,在这个基础上进一步阐述了Android驱动开发的原理,最后给出了一个Android智能家居的实例

目录

  • 第1章 Android系统的编译和移植实例 1
  • 1.1 移植背景与目标 1
  • 1.2 移植涉及的主要过程 1
  • 1.3 下载Android Linux 内核 1
  • 1.4 安装交叉工具链 3
  • 1.5 移植Android Linux 内核支持EZ6410平台 4
  • 1.5.1 CS8900a驱动移植 4
  • 1.5.2 键盘驱动编写 4
  • 1.5.3 液晶驱动 5
  • 1.5.4 触摸屏驱动 6
  • 1.5.5 USB驱动修改 7
  • 1.5.6 安装Android SDK 8
  • 1.5.7 提取Android 根文件系统 9
  • 1.5.8 系统环境设置 11
  • 1.6 小结 12
  • 1.7 思考题 12
  • 第2章 Android系统与嵌入式开发 13
  • 2.1 Android与传统嵌入式Linux系统 13
  • 2.2 嵌入式系统概述 13
  • 2.2.1 嵌入式系统简介 13
  • 2.2.2 嵌入式系统的特点 14
  • 2.2.3 嵌入式系统的发展 15
  • 2.3 嵌入式系统的组成 17
  • 2.3.1 嵌入式系统的硬件组成 18
  • 2.3.2 嵌入式系统的软件组成 19
  • 2.4 嵌入式系统开发概述 19
  • 2.5 Android系统概述 26
  • 2.6 Android系统架构 28
  • 2.6.1 Linux内核(Linux Kernel) 28
  • 2.6.2 Android核心库(Libraries) 29
  • 2.6.3 Android运行时环境(Android Runtime) 29
  • 2.6.4 Android应用程序框架(Application Framework) 29
  • 2.6.5 Android应用程序和小部件 30
  • 2.7 小结 30
  • 2.8 思考题 30
  • 第3章 Android移植平台工具介绍 31
  • 3.1 开发板外观 31
  • 3.2 开发板硬件资源 32
  • 3.3 功能展示 33
  • 3.4 目标板与主机之间的连接 35
  • 3.5 文件传输 37
  • 3.6 网络文件系统 38
  • 3.7 设备安装 39
  • 3.8 工具软件的设置 39
  • 3.9 U-Boot镜像的下载与烧写 42
  • 3.10 内核镜像的下载与烧写 48
  • 3.11 烧写文件系统镜像 50
  • 3.12 U-Boot启动参数设置 51
  • 3.13 小结 52
  • 3.14 思考题 52
  • 第4章 Android移植环境搭建 53
  • 4.1 构建Android移植交叉开发环境 53
  • 4.1.1 嵌入式交叉编译环境搭建 53
  • 4.1.2 主机交叉开发环境配置 55
  • 4.2 Bootloader 59
  • 4.2.1 Bootloader的种类 60
  • 4.2.2 U-Boot编译与使用 61
  • 4.2.3 U-Boot移植 73
  • 4.3 Android内核与移植 74
  • 4.3.1 Android移植简介 76
  • 4.3.2 FS_S5PC100开发平台移植环境搭建 76
  • 4.4 U-Boot、内核、文件系统编译 78
  • 4.4.1 U-Boot的编译 78
  • 4.4.2 内核镜像的编译 78
  • 4.4.3 Android文件系统的编译 79
  • 4.5 小结 81
  • 4.6 思考题 81
  • 第5章 Android移植与驱动 82
  • 5.1 Android移植和驱动的关系 82
  • 5.2 设备驱动程序 82
  • 5.2.1 设备驱动概念 82
  • 5.2.2 内核驱动程序 83
  • 5.2.3 用户空间驱动程序 83
  • 5.2.4 Linux设备驱动概述 83
  • 5.3 Linux核心与Android驱动 85
  • 5.3.1 Android专用驱动 86
  • 5.3.2 Android使用的设备驱动 87
  • 5.4 Android驱动的HelloWorld 92
  • 5.5 小结 95
  • 5.6 思考题 95
  • 第6章 Android驱动编程 96
  • 6.1 Android内核内核模块编程 96
  • 6.2 字符设备驱动编程 105
  • 6.2.1 字符设备驱动编写流程 105
  • 6.2.2 重要数据结构 106
  • 6.2.3 设备驱动程序主要组成 107
  • 6.3 LCD控制器 114
  • 6.3.1 LCD控制器介绍 114
  • 6.3.2 S5PC100 LCD控制器介绍 114
  • 6.3.3 S5PC100 LCD控制器操作 116
  • 6.3.4 LCD控制器寄存器 117
  • 6.4 驱动程序 123
  • 6.4.1 驱动程序初始化和退出 124
  • 6.4.2 驱动程序Open and release 函数 126
  • 6.4.3 驱动程序ioctl函数 127
  • 6.4.4 驱动测试程序main.c 128
  • 6.5 小结 128
  • 6.6 思考题 129
  • 第7章 Android HAL实例解析 130
  • 7.1 概述 130
  • 7.2 HAL介绍 130
  • 7.3 HAL内容 131
  • 7.3.1 知识准备:HAL 主要的存储目录 131
  • 7.3.2 知识准备:两种 HAL 架构比较 131
  • 7.4 mokoid 工程代码下载与结构分析 132
  • 7.4.1 知识准备:mokid项目概述 132
  • 7.4.2 知识准备:结构分析 132
  • 7.4.3 知识准备:第一种方法 直接调用service方法的实现过程 135
  • 7.4.4 知识准备:第二种方法—经过Manager调用service 140
  • 7.4.5 FS-S5PC100实验平台LED灯实验 143
  • 7.4.6 FS-S5PC100实验平台Sensor实验 144
  • 7.5 实验中需要注意的问题 145
  • 7.6 小结 146
  • 7.7 思考题 147
  • 第8章 Android 4.0系统的下载与编译 148
  • 8.1 准备Android下载与编译环境 148
  • 8.1.1 硬件环境 148
  • 8.1.2 软件环境 148
  • 8.2 下载Android 4.0及Goldfish源码 149
  • 8.2.1 下载并初始化repo工具 149
  • 8.2.2 下载Android源码 150
  • 8.2.3 其他源码下载源 150
  • 8.2.4 下载模拟器Goldfish内核源码 150
  • 8.3 编译Android及Goldfish内核源码 152
  • 8.3.1 编译Android源码 152
  • 8.3.2 编译goldfish内核源码 154
  • 8.4 Android编译过程分析 154
  • 8.4.1 source build/envsetup.sh 155
  • 8.4.2 执行lunch full-eng 156
  • 8.4.3 执行make命令 156
  • 8.5 创建目标产品编译项 157
  • 8.6 编译并运行Android 4.0系统模拟器 158
  • 8.6.1 编译Android模拟器 158
  • 8.6.2 Android启动流程 161
  • 8.7 定制手机模拟器ROM 162
  • 8.7.1 定制手机开机界面 162
  • 8.7.2 定制Android启动字样 165
  • 8.7.3 定制Android动画 166
  • 8.8 为Android启动加速 168
  • 8.8.1 定制本地服务 168
  • 8.8.2 定制Android系统服务 169
  • 8.9 Android系统企业级定制 170
  • 8.10 小结 172
  • 8.11 思考题 172
  • 第9章 Android系统蜂鸣器与按键 173
  • 9.1 蜂鸣器驱动的实现 173
  • 9.1.1 PWM定时器概述 173
  • 9.1.2 PWM定时器特点 174
  • 9.1.3 PWM定时器的寄存器 175
  • 9.1.4 PWM定时器操作示例 180
  • 9.1.5 蜂鸣器的种类和工作原理 181
  • 9.1.6 开发板上的蜂鸣器原理图分析 181
  • 9.2 蜂鸣器HAL层的实现 182
  • 9.3 Android按键检测程序流程 184
  • 9.4 驱动层实现 185
  • 9.4.1 HAL层实现 186
  • 9.4.2 HAL使用 187
  • 9.4.3 HAL stub实现 188
  • 9.4.4 JNI层实现 189
  • 9.4.5 Framework层实现 189
  • 9.4.6 应用层实现 190
  • 9.5 小结 190
  • 9.6 思考题 190
  • 第10章 Android与传感器设计与实现 191
  • 10.1 Android Sensor实现原理概述 191
  • 10.2 JNI原理 191
  • 10.3 Android HAL 192
  • 10.4 Sensor传感器系统 193
  • 10.4.1 Sensor Stub分析 194
  • 10.4.2 Sensor Stub 实现细节 202
  • 10.5 Logcat调试 202
  • 10.6 一些开发环境的问题 203
  • 10.7 小结 203
  • 10.8 思考题 203
  • 第11章 Android与摄像头 204
  • 11.1 OV9650介绍 204
  • 11.1.1 芯片功能描述 204
  • 11.1.2 OV9650寄存器详解 205
  • 11.2 SCCB总线 206
  • 11.2.1 SCCB协议介绍 206
  • 11.2.2 SCCB的总线编程 207
  • 11.3 CAMIF接口详解 209
  • 11.3.1 基于S5PC100的CAMIF接口介绍 209
  • 11.3.2 S5PC100 CAMIF寄存器详解 210
  • 11.4 摄像头驱动 213
  • 11.4.1 摄像头工作原理 213
  • 11.4.2 驱动开发思路 214
  • 11.5 Android Camera架构分析 228
  • 11.5.1 CameraService介绍 229
  • 11.5.2 Camera-HAL介绍 229
  • 11.5.3 CameraService与Camera-HAL的联系 230
  • 11.6 小结 232
  • 11.7 思考题 232
  • 第12章 Android下综合项目介绍——智能家居 233
  • 12.1 项目概述 233
  • 12.1.1 项目背景 233
  • 12.1.2 术语定义 234
  • 12.1.3 系统描述 234
  • 12.1.4 功能描述 235
  • 12.1.5 项目功能图 235
  • 12.1.6 所涉及的系统与工具 235
  • 12.2 前端数据中心(A8)总体设计 236
  • 12.2.1 程序设计流程图 236
  • 12.2.2 线程定义 236
  • 12.2.3 所用类定义 236
  • 12.3 前端A8模块设计 237
  • 12.3.1 A8-Android Application层设计 237
  • 12.3.2 A8-数据传递架构模块 245
  • 12.3.3 传输协议模块设计 257
  • 12.4 终端M0模块设计 259
  • 12.4.1 终端设备方案描述 259
  • 12.4.2 终端设备工作流程 259
  • 12.4.3 功能模块描述 260
  • 12.5 系统测试 267

资源下载

资源下载地址1:https://pan.baidu.com/s/14SJrv4CmZWjVJwBxdfB9iw

相关资源

网友留言