描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787122233691
编辑推荐
本书有如下特点:
1.填补空白、技术新颖。***介绍S5PV210裸机开发的著作。
2.内容实用、讲解攻略。涉及基于S5PV210处理器的嵌入式Linux ARM处理器开发、Android开发的基本概念、基本流程和方法,并有配套的实例解析。
3.实例引导、激发兴趣。精心设计的一些编程实例以及精彩的文字讲解,激发读者的学习兴趣,轻轻松松地学会在Linux环境中进行嵌入式开发和Android应用程序开发。
1.填补空白、技术新颖。***介绍S5PV210裸机开发的著作。
2.内容实用、讲解攻略。涉及基于S5PV210处理器的嵌入式Linux ARM处理器开发、Android开发的基本概念、基本流程和方法,并有配套的实例解析。
3.实例引导、激发兴趣。精心设计的一些编程实例以及精彩的文字讲解,激发读者的学习兴趣,轻轻松松地学会在Linux环境中进行嵌入式开发和Android应用程序开发。
内容简介
本书基于S5PV210处理器的开发平台,深入浅出地介绍了嵌入式Linux裸机开发和Android应用程序开发完全攻略。本书分为上下两篇,分别为嵌入式ARM Linux裸机开发初体验和Android应用开发连连看,详细介绍了ARM嵌入式开发的基础知识以及典型的开发实例讲解;并结合典型的实例和精彩的语言,一步步激发读者的学习兴趣,使读者轻轻松松地学会在Linux环境中进行嵌入式开发和Android应用程序开发。
本书内容新颖、实用性强,可供从事嵌入式开发的技术人员学习使用,也可作为高等院校相关专业的师生学习使用。
本书内容新颖、实用性强,可供从事嵌入式开发的技术人员学习使用,也可作为高等院校相关专业的师生学习使用。
目 录
篇 嵌入式ARM Linux裸机开发初体验
第1章 S5PV210处理器的前世今生 2
1.1 数据类型 3
1.2 处理器状态 4
1.3 存储器格式 4
1.4 工作模式 5
1.5 寄存器介绍 6
1.5.1 堆栈指针寄存器R13和链接寄存器R14 6
1.5.2 程序计数器R15 7
1.5.3 程序状态寄存器 7
1.6 存储器映射 8
1.6.1 S5PV210处理器的地址空间 9
1.6.2 S5PV210处理器的存储器地址映射 9
1.7 天嵌TQ210开发板硬件资源概述 10
1.8 本章小结 12
第2章 搭建嵌入式交叉编译环境 13
2.1 交叉编译简介 14
2.2 在主机上构建嵌入式Linux开发环境 15
2.2.1 VMware Workstation的安装 15
2.2.2 Ubuntu12.04的安装 18
2.3 主机与虚拟机之间文件传输方法的介绍 25
2.4 交叉编译器的安装 30
2.5 Windows环境下远程登录工具 SecureCRT 的安装 31
2.6 S5PV210程序烧写方法概述 33
2.6.1 使用SD卡方式烧写及SD启动卡的制作方法 33
2.6.2 使用U-Boot方式烧写程序 36
2.7 本章小结 36
第3章 ARM指令集及汇编语言编程介绍 37
3.1 ARM指令集介绍 37
3.1.1 ARM指令集 38
3.1.2 ARM寻址方式 44
3.1.3 GNU ARM伪操作和伪指令介绍 47
3.2 GNU ARM汇编程序编程规范 50
3.2.1 GNU ARM汇编程序基本结构 50
3.2.2 GNU ARM汇编程序中的标号 50
3.2.3 GNU ARM汇编程序中的段 51
3.2.4 GNU ARM汇编程序中的入口点 52
3.2.5 GNU ARM汇编程序中的宏定义 52
3.3 常用汇编语言程序子模块实例分析 52
3.3.1 特殊功能寄存器的访问 52
3.3.2 内存数据搬移 53
3.3.3 批量加载与存储 54
3.3.4 堆栈操作 55
3.3.5 实现查表功能 57
3.4 GNU交叉编译工具链简介 57
3.4.1 arm-linux-gcc编译器 58
3.4.2 arm-linux-ld链接器 60
3.4.3 arm-linux-objcopy格式转换工具 64
3.4.4 arm-linux-objdump工具 64
3.5 Makefile简介 65
3.5.1 Makefile规则和命令 66
3.5.2 Makefile变量 68
3.5.3 Makefile内嵌函数 69
3.6 本章小结 72
第4章 传递C语言的正能量 73
4.1 数据类型基础 73
4.1.1 用typedef和#define定义类型 74
4.1.2 用signed和unsigned修饰数据类型 74
4.1.3 volatile和强制类型转换 75
4.2 深入理解位运算符和位运算 76
4.2.1 按位与运算符(&) 76
4.2.2 按位或运算符(|) 76
4.2.3 按位取反运算符(~) 77
4.2.4 左移和右移运算符(<>) 77
4.2.5 位运算应用实例分析 77
4.3 防止文件重复包含技巧 78
4.4 本章小结 79
第5章 ARM汇编与C语言混合编程的那些事儿 80
5.1 一个混合编程实例的实现 80
5.2 APCS规则概述 82
5.2.1 寄存器的使用 82
5.2.2 参数传递 82
5.2.3 函数的返回值 83
5.3 本章小结 83
第6章 点亮神奇的流水灯 84
6.1 S5PV210处理器GPIO接口概述 84
6.1.1 GPIO的结构简介 85
6.1.2 GPIO的操作方法 86
6.1.3 GPIO应用实例 89
6.2 点亮LED流水灯 91
6.2.1 LED硬件电路分析 91
6.2.2 新建一个LED流水灯工程 91
6.2.3 代码编写与详解 93
6.2.4 编写Makefile文件 96
6.2.5 编译链接LED流水灯程序 98
6.2.6 下载可执行程序到开发板运行 101
6.3 让TQ210开发板发出声音 105
6.3.1 蜂鸣器硬件电路分析 106
6.3.2 代码编写与详解 107
6.3.3 蜂鸣器的Makefile文件 112
6.3.4 编译、链接蜂鸣器源程序 113
6.3.5 下载、测试蜂鸣器实验可执行程序 114
6.4 本章小结 118
第7章 探究时钟滴答的奥秘 119
7.1 S5PV210处理器时钟体系结构概述 119
7.1.1 S5PV210处理器的顶层时钟 120
7.1.2 各类时钟频率之间的关系 122
7.2 PLL的配置及时钟初始化 124
7.2.1 APLL和MPLL的相关寄存器 125
7.2.2 与时钟相关的其他寄存器及初始化流程 130
7.2.3 时钟初始化应用实例 133
7.3 PWM定时器的原理及应用 135
7.3.1 PWM定时器概述 136
7.3.2 PWM定时器相关寄存器 138
7.3.3 PWM定时器的操作方法 143
7.3.4 PWM定时器应用实例 144
7.4 PWM定时器拓展实验—蜂鸣器实验 153
7.5 本章小结 157
第8章 玩转UART 158
8.1 UART概述 158
8.2 UART的操作 160
8.3 UART的工作模式 163
8.4 UART的相关寄存器 166
8.5 UART接口应用实例 178
8.5.1 UART接口硬件电路分析 178
8.5.2 UART的操作方法与步骤 179
8.5.3 UART程序设计与代码详解 180
8.5.4 UART实例测试 184
8.6 本章小结 189
第9章 挑战启动流程 191
9.1 S5PV210处理器启动流程概述 191
9.1.1 启动流程的3部曲 193
9.1.2 安全启动(Secure Booting) 196
9.2 深入理解S5PV210处理器的启动流程 197
9.2.1 启动设备的选择 197
9.2.2 S5PV210处理器的启动流程图 200
9.2.3 BL1阶段代码的结构 202
9.2.4 BL1头部信息的制作工具 204
9.2.5 启动过程中的内存映射 207
9.3 本章小结 209
第二篇 Android应用开发连连看
第10章 传说中的Android 212
10.1 什么是Android 212
10.2 Android历史 216
10.3 Android开发介绍 217
10.4 Android初体验 218
10.5 本章小结 218
第11章 Android开发平台搭建 219
11.1 操作系统平台 219
11.2 软件安装 220
11.2.1 JDK安装 220
11.2.2 Eclipse、Android SDK安装 223
11.2.3 开发平台测试 225
11.3 本章小结 226
第12章 个Android应用程序 227
12.1 Hello World项目分析 227
12.1.1 新建工程 228
12.1.2 编译运行 231
12.1.3 导入工程 233
12.1.4 程序实现 235
12.2 程序调试技巧 235
12.2.1 设置断点 236
12.2.2 单步执行 237
12.2.3 查看变量 238
12.2.4 下载到TQ210开发板 239
12.3 本章小结 241
第13章 Android基本组件大串烧 242
13.1 文本框(TextView) 243
13.1.1 实例编程实现 243
13.1.2 实例演示 247
13.2 编辑框(EditText) 250
13.2.1 实例编程实现 250
13.2.2 实例演示 252
13.3 按钮(Button) 253
13.3.1 实例编程实现 253
13.3.2 实例演示 255
13.3.3 Button扩展实验—消息响应 256
13.4 进度条 257
13.4.1 实例编程实现 257
13.4.2 实例演示 261
13.5 Android进阶—Intent和Activity 261
13.5.1 实例编程实现 262
13.5.2 实例演示 267
参考文献 268
第1章 S5PV210处理器的前世今生 2
1.1 数据类型 3
1.2 处理器状态 4
1.3 存储器格式 4
1.4 工作模式 5
1.5 寄存器介绍 6
1.5.1 堆栈指针寄存器R13和链接寄存器R14 6
1.5.2 程序计数器R15 7
1.5.3 程序状态寄存器 7
1.6 存储器映射 8
1.6.1 S5PV210处理器的地址空间 9
1.6.2 S5PV210处理器的存储器地址映射 9
1.7 天嵌TQ210开发板硬件资源概述 10
1.8 本章小结 12
第2章 搭建嵌入式交叉编译环境 13
2.1 交叉编译简介 14
2.2 在主机上构建嵌入式Linux开发环境 15
2.2.1 VMware Workstation的安装 15
2.2.2 Ubuntu12.04的安装 18
2.3 主机与虚拟机之间文件传输方法的介绍 25
2.4 交叉编译器的安装 30
2.5 Windows环境下远程登录工具 SecureCRT 的安装 31
2.6 S5PV210程序烧写方法概述 33
2.6.1 使用SD卡方式烧写及SD启动卡的制作方法 33
2.6.2 使用U-Boot方式烧写程序 36
2.7 本章小结 36
第3章 ARM指令集及汇编语言编程介绍 37
3.1 ARM指令集介绍 37
3.1.1 ARM指令集 38
3.1.2 ARM寻址方式 44
3.1.3 GNU ARM伪操作和伪指令介绍 47
3.2 GNU ARM汇编程序编程规范 50
3.2.1 GNU ARM汇编程序基本结构 50
3.2.2 GNU ARM汇编程序中的标号 50
3.2.3 GNU ARM汇编程序中的段 51
3.2.4 GNU ARM汇编程序中的入口点 52
3.2.5 GNU ARM汇编程序中的宏定义 52
3.3 常用汇编语言程序子模块实例分析 52
3.3.1 特殊功能寄存器的访问 52
3.3.2 内存数据搬移 53
3.3.3 批量加载与存储 54
3.3.4 堆栈操作 55
3.3.5 实现查表功能 57
3.4 GNU交叉编译工具链简介 57
3.4.1 arm-linux-gcc编译器 58
3.4.2 arm-linux-ld链接器 60
3.4.3 arm-linux-objcopy格式转换工具 64
3.4.4 arm-linux-objdump工具 64
3.5 Makefile简介 65
3.5.1 Makefile规则和命令 66
3.5.2 Makefile变量 68
3.5.3 Makefile内嵌函数 69
3.6 本章小结 72
第4章 传递C语言的正能量 73
4.1 数据类型基础 73
4.1.1 用typedef和#define定义类型 74
4.1.2 用signed和unsigned修饰数据类型 74
4.1.3 volatile和强制类型转换 75
4.2 深入理解位运算符和位运算 76
4.2.1 按位与运算符(&) 76
4.2.2 按位或运算符(|) 76
4.2.3 按位取反运算符(~) 77
4.2.4 左移和右移运算符(<>) 77
4.2.5 位运算应用实例分析 77
4.3 防止文件重复包含技巧 78
4.4 本章小结 79
第5章 ARM汇编与C语言混合编程的那些事儿 80
5.1 一个混合编程实例的实现 80
5.2 APCS规则概述 82
5.2.1 寄存器的使用 82
5.2.2 参数传递 82
5.2.3 函数的返回值 83
5.3 本章小结 83
第6章 点亮神奇的流水灯 84
6.1 S5PV210处理器GPIO接口概述 84
6.1.1 GPIO的结构简介 85
6.1.2 GPIO的操作方法 86
6.1.3 GPIO应用实例 89
6.2 点亮LED流水灯 91
6.2.1 LED硬件电路分析 91
6.2.2 新建一个LED流水灯工程 91
6.2.3 代码编写与详解 93
6.2.4 编写Makefile文件 96
6.2.5 编译链接LED流水灯程序 98
6.2.6 下载可执行程序到开发板运行 101
6.3 让TQ210开发板发出声音 105
6.3.1 蜂鸣器硬件电路分析 106
6.3.2 代码编写与详解 107
6.3.3 蜂鸣器的Makefile文件 112
6.3.4 编译、链接蜂鸣器源程序 113
6.3.5 下载、测试蜂鸣器实验可执行程序 114
6.4 本章小结 118
第7章 探究时钟滴答的奥秘 119
7.1 S5PV210处理器时钟体系结构概述 119
7.1.1 S5PV210处理器的顶层时钟 120
7.1.2 各类时钟频率之间的关系 122
7.2 PLL的配置及时钟初始化 124
7.2.1 APLL和MPLL的相关寄存器 125
7.2.2 与时钟相关的其他寄存器及初始化流程 130
7.2.3 时钟初始化应用实例 133
7.3 PWM定时器的原理及应用 135
7.3.1 PWM定时器概述 136
7.3.2 PWM定时器相关寄存器 138
7.3.3 PWM定时器的操作方法 143
7.3.4 PWM定时器应用实例 144
7.4 PWM定时器拓展实验—蜂鸣器实验 153
7.5 本章小结 157
第8章 玩转UART 158
8.1 UART概述 158
8.2 UART的操作 160
8.3 UART的工作模式 163
8.4 UART的相关寄存器 166
8.5 UART接口应用实例 178
8.5.1 UART接口硬件电路分析 178
8.5.2 UART的操作方法与步骤 179
8.5.3 UART程序设计与代码详解 180
8.5.4 UART实例测试 184
8.6 本章小结 189
第9章 挑战启动流程 191
9.1 S5PV210处理器启动流程概述 191
9.1.1 启动流程的3部曲 193
9.1.2 安全启动(Secure Booting) 196
9.2 深入理解S5PV210处理器的启动流程 197
9.2.1 启动设备的选择 197
9.2.2 S5PV210处理器的启动流程图 200
9.2.3 BL1阶段代码的结构 202
9.2.4 BL1头部信息的制作工具 204
9.2.5 启动过程中的内存映射 207
9.3 本章小结 209
第二篇 Android应用开发连连看
第10章 传说中的Android 212
10.1 什么是Android 212
10.2 Android历史 216
10.3 Android开发介绍 217
10.4 Android初体验 218
10.5 本章小结 218
第11章 Android开发平台搭建 219
11.1 操作系统平台 219
11.2 软件安装 220
11.2.1 JDK安装 220
11.2.2 Eclipse、Android SDK安装 223
11.2.3 开发平台测试 225
11.3 本章小结 226
第12章 个Android应用程序 227
12.1 Hello World项目分析 227
12.1.1 新建工程 228
12.1.2 编译运行 231
12.1.3 导入工程 233
12.1.4 程序实现 235
12.2 程序调试技巧 235
12.2.1 设置断点 236
12.2.2 单步执行 237
12.2.3 查看变量 238
12.2.4 下载到TQ210开发板 239
12.3 本章小结 241
第13章 Android基本组件大串烧 242
13.1 文本框(TextView) 243
13.1.1 实例编程实现 243
13.1.2 实例演示 247
13.2 编辑框(EditText) 250
13.2.1 实例编程实现 250
13.2.2 实例演示 252
13.3 按钮(Button) 253
13.3.1 实例编程实现 253
13.3.2 实例演示 255
13.3.3 Button扩展实验—消息响应 256
13.4 进度条 257
13.4.1 实例编程实现 257
13.4.2 实例演示 261
13.5 Android进阶—Intent和Activity 261
13.5.1 实例编程实现 262
13.5.2 实例演示 267
参考文献 268
书摘插画
评论
还没有评论。