当前位置:首页 > 工业技术
嵌入式Linux系统开发入门宝典  基于ARM Cortex-A8处理器
嵌入式Linux系统开发入门宝典  基于ARM Cortex-A8处理器

嵌入式Linux系统开发入门宝典 基于ARM Cortex-A8处理器PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:李建祥编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302424710
  • 页数:349 页
图书介绍:全书分为三个部分,第一篇:工欲善其事必先利其器,主要引导读者认识嵌入式开发,强化一些编程方面的知识,最后自己动手搭建一个嵌入式开发环境。第二篇:千里之行始于足下,主要是带着读者一起动手学习一下软硬件结合相关的知识,为后面进一步深入学习嵌入式系统开发做铺垫。第三篇:欲穷千里目更上一层楼,从开发板的开机上电,到系统上第一个应用程序的运行,深入学习嵌入式Linux系统开发的方方面面。
《嵌入式Linux系统开发入门宝典 基于ARM Cortex-A8处理器》目录

第一篇 工欲善其事,必先利其器 3

第1章 嵌入式系统概述 3

1.1 嵌入式系统基础知识 3

1.1.1 嵌入式系统简介 3

1.1.2 嵌入式系统的特点 3

1.1.3 嵌入式系统的发展历史 4

1.1.4 嵌入式系统的组成 5

1.1.5 嵌入式操作系统简介 6

1.1.6 嵌入式系统开发概述 6

1.2 基于ARM架构的S5PV210处理器 7

1.2.1 ARM微处理器概述 7

1.2.2 ARM流水线技术的发展 8

1.2.3 ARM Cortex-A8处理器介绍 9

1.2.4 ARM Cortex-A8寄存器组介绍 11

1.2.5 SAMSUNG S5PV210处理器介绍 13

1.3 本章小结 15

第2章 嵌入式Linux开发环境搭建 16

2.1 交叉开发模式 16

2.1.1 嵌入式交叉开发模式介绍 16

2.1.2 硬件需求 17

2.2 软件环境搭建与配置 18

2.2.1 宿主机Linux操作系统的安装 18

2.2.2 配置宿主Linux操作系统 25

2.2.3 在宿主机上安装、配置开发环境 28

2.2.4 制作交叉编译工具链 29

2.3 本章小结 33

第3章 常用开发工具和命令的使用 34

3.1 Windows环境下的工具介绍 34

3.1.1 代码阅读、编辑工具Source Insight 34

3.1.2 文件传输工具CuteFTP 39

3.1.3 终端仿真工具SecureCRT 40

3.2 Linux环境下的工具介绍 43

3.2.1 代码阅读、编辑工具 43

3.2.2 终端访问工具 43

3.3 嵌入式Linux系统常用命令介绍 43

3.3.1 编辑命令vi(vim) 43

3.3.2 常用13个命令介绍 45

3.3.3 SD卡烧写命令df、dd 49

3.4 本章小结 50

第4章 嵌入式编程基础知识 51

4.1 GNU ARM常用汇编指令介绍 51

4.1.1 相对跳转指令b和bl 51

4.1.2 数据传送指令mov和地址读取伪指令ldr 52

4.1.3 内存访问指令ldr、str、ldm、stm 52

4.1.4 加减指令add、sub 54

4.1.5 程序状态寄存器访问指令msr、 mrs 54

4.1.6 其他伪指令 54

4.2 ARM-Thumb子程序调用(ATPCS)规则介绍 55

4.2.1 寄存器使用规则 55

4.2.2 数据栈使用规则 56

4.2.3 参数传递规则 56

4.3 ARM交叉工具链介绍 56

4.3.1 编译工具arm-linux-gcc 57

4.3.2 链接工具arm-linux-ld 62

4.3.3 对象生成工具arm-linux-objcopy 63

4.3.4 反汇编工具arm-l inux-obj dump 64

4.4 Makefile简介 65

4.4.1 基本规则 66

4.4.2 make是如何工作的 66

4.4.3 变量的用法 66

4.4.4 常用函数介绍 68

4.5 本章小结 70

第二篇 千里之行,始于足下 73

第5章 基于Cortex-A8的S5PV210启动流程介绍 73

5.1 S5PV210启动流程概述 73

5.1.1 外部启动介质介绍 73

5.1.2 iROM启动的优势 73

5.2 S5PV210上电初始化及内存空间分布 74

5.2.1 启动流程 74

5.2.2 空间分布 75

5.2.3 SD卡引导块分配情况介绍 77

5.2.4 iROM中的时钟配置 77

5.3 S5PV210上的程序烧写介绍 78

5.3.1 程序烧写概述 78

5.3.2 制作BL1头信息 78

5.3.3 烧写SD卡 78

5.3.4 制作Shell脚本 79

5.4 本章小结 82

第6章 通用输入/输出接口GPIO 83

6.1 GPIO控制技术概述 83

6.1.1 GPIO的介绍 83

6.1.2 S5PV210的GPIO寄存器 83

6.1.3 实验用到的寄存器详解 85

6.2 S5PV210的GPIO应用实例 86

6.2.1 实验介绍 86

6.2.2 程序设计与代码详解 87

6.3 本章小结 91

第7章 通用异步收发器UART 92

7.1 UART的原理及S5PV210的UART介绍 92

7.1.1 UART通信的基本原理 92

7.1.2 S5PV210的UART介绍 93

7.2 S5PV210的UART应用实例 97

7.2.1 实验介绍 97

7.2.2 程序设计与代码详解 97

7.2.3 实例测试 100

7.3 本章小结 101

第8章 中断体系结构 102

8.1 S5PV210中断体系结构 102

8.1.1 中断体系结构概述 102

8.1.2 中断控制寄存器介绍 105

8.2 S5PV210的中断应用实例 107

8.2.1 实验介绍 107

8.2.2 程序设计与代码详解 107

8.2.3 实例测试 111

8.3 本章小结 111

第9章 系统时钟和定时器 112

9.1 S5PV210的时钟体系结构 112

9.1.1 S5PV210的时钟域和时钟源 112

9.1.2 S5PV210的时钟应用和配置流程 113

9.1.3 S5PV210时钟控制寄存器介绍 115

9.2 S5PV210 PWM定时器 117

9.2.1 S5PV210 PWM定时器概述 117

9.2.2 S5PV210定时器 119

9.2.3 PWM定时器的寄存器介绍 120

9.3 S5PV210时钟和定时器应用实例 122

9.3.1 实验介绍 122

9.3.2 程序设计与代码详解 123

9.3.3 实验测试 132

9.4 本章小结 133

第10章 S5PV210存储控制器 134

10.1 S5PV210存储控制器介绍 134

10.1.1 存储控制器概述 134

10.1.2 DRAM存储控制器 134

10.1.3 与外设的接线方式 135

10.1.4 DDR2 SDRAM概述 136

10.1.5 S5PV210 DDR2初始化顺序 140

10.1.6 存储控制器的寄存器介绍 141

10.2 存储控制器应用实例 147

10.2.1 实验介绍 147

10.2.2 程序设计与代码详解 147

10.2.3 实验测试 151

10.3 本章小结 151

第11章 S5PV210 Nand Flash控制器 152

11.1 Nor Flash与Nand Flash介绍 152

11.1.1 Flash闪存 152

11.1.2 Nor Flash与Nand Flash比较 152

11.1.3 Nand Flash的物理结构 154

11.1.4 Nand Flash的访问方法 155

11.2 S5PV210 Nand Flash控制器介绍 158

11.2.1 Nand Flash控制器的特性 158

11.2.2 Nand Flash的模块图 159

11.2.3 Nand Flash的引脚配置 159

11.2.4 Nand Flash存储控制器配置 160

11.2.5 Nand Flash寄存器介绍 160

11.2.6 Nand Flash控制器的ECC校验方法 165

11.3 Nand Flash控制器应用实例 166

11.3.1 实验介绍 166

11.3.2 程序设计与代码详解 166

11.3.3 实例测试 170

11.4 本章小结 170

第12章 LCD控制器 171

12.1 LCD介绍 171

12.1.1 LCD的分类 171

12.1.2 LCD的接口 172

12.2 S5PV210LCD控制器 173

12.2.1 S5PV210 LCD控制器概述 173

12.2.2 S5PV210 LCD控制器主要特性介绍 174

12.2.3 S5PV210 LCD控制器功能介绍 175

12.2.4 S5PV210 TFT LCD的操作 177

12.2.5 S5PV210 LCD控制器编程方法介绍 181

12.2.6 S5PV210 LCD控制器主要寄存器介绍 181

12.3 LCD控制器应用实例 189

12.3.1 实验介绍 189

12.3.2 程序设计与代码详解 189

12.3.3 实例测试 194

12.4 本章小结 195

第三篇 欲穷千里目,更上一层楼 199

第13章 移植U-Boot 199

13.1 Bootloader介绍 199

13.1.1 Bootloader概述 199

13.1.2 Bootloader的结构和启动方式 201

13.1.3 Bootloader操作模式和安装位置 203

13.1.4 如何编写Bootloader 204

13.1.5 U-Boot与内核之间的交互 205

13.2 移植U-Boot到S5PV210开发板 208

13.2.1 U-Boot简介 208

13.2.2 U-Boot源码结构 209

13.2.3 U-Boot配置、编译与SPL介绍 212

13.2.4 U-Boot启动过程源码分析 232

13.2.5 U-Boot下的驱动移植 252

13.2.6 添加启动菜单 279

13.3 本章小结 281

第14章 Linux内核移植和根文件系统制作 282

14.1 Linux内核概述 282

14.1.1 Linux内核发展及其版本特点 282

14.1.2 Linux内核源码获取 283

14.1.3 内核源码结构及Makefile分析 285

14.1.4 Linux内核的Kconfig介绍 291

14.1.5 Linux内核配置选项 296

14.2 Linux内核移植 299

14.2.1 Linux内核启动过程分析 299

14.2.2 修改内核支持S5PV210平台 301

14.3 本章小结 304

第15章 构建Linux根文件系统 305

15.1 Linux文件系统概述 305

15.1.1 文件系统概述 305

15.1.2 Linux根文件系统目录结构 306

15.1.3 文件系统工作原理 310

15.2 移植Busybox 310

15.2.1 Busybox介绍 310

15.2.2 Busybox的目录结构 311

15.2.3 内核init进程及用户程序启动过程 311

15.2.4 配置/编译/安装Busybox 316

15.2.5 构建根文件系统 320

15.3 本章小结 325

第16章 驱动相关移植 326

16.1 Linux驱动程序概述 326

16.1.1 驱动程序、内核和应用程序之间的关系 326

16.1.2 驱动程序分类 327

16.1.3 驱动程序开发步骤 327

16.1.4 驱动程序的加载和卸载 328

16.2 网卡驱动移植 328

16.2.1 DM9000网卡特性 328

16.2.2 DM9000驱动移植 329

16.3 Nand驱动移植 332

16.3.1 S5PV210平台Nand驱动移植 332

16.3.2 8位硬件ECC和Nand启动 338

16.4 LCD驱动移植 342

16.4.1 LCD驱动概述 342

16.4.2 LCD驱动移植 342

16.5 其他驱动移植 344

16.5.1 支持SD卡驱动 344

16.5.2 LED子系统驱动移植 345

16.5.3 支持RTC驱动 346

16.5.4 支持1-wire单总线驱动 347

16.6 本章小结 348

参考文献 349

相关图书
作者其它书籍
返回顶部