图书介绍
嵌入式系统设计与应用 基于ARM Cortex-A8和LinuxPDF|Epub|txt|kindle电子书版本网盘下载
![嵌入式系统设计与应用 基于ARM Cortex-A8和Linux](https://www.shukui.net/cover/27/31933221.jpg)
- 王剑,刘鹏,胡杰,文汉云主编 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302458067
- 出版时间:2017
- 标注页数:377页
- 文件大小:96MB
- 文件页数:391页
- 主题词:微型计算机-系统设计
PDF下载
下载说明
嵌入式系统设计与应用 基于ARM Cortex-A8和LinuxPDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 嵌入式系统概述1
1.1 嵌入式系统简介1
1.1.1 嵌入式系统的产生1
1.1.2 嵌入式系统的定义、特点和分类2
1.1.3 嵌入式系统的两种应用模式4
1.1.4 嵌入式系统的典型组成5
1.2 嵌入式微处理器6
1.2.1 嵌入式微处理器简介6
1.2.2 主流嵌入式微处理器8
1.3 嵌入式操作系统9
1.3.1 嵌入式Linux9
1.3.2 Windows CE11
1.3.3 Symbian11
1.3.4 Android12
1.3.5 μC/OS-Ⅱ12
1.3.6 VxWorks13
1.4 嵌入式系统的应用领域和发展趋势13
1.4.1 嵌入式系统的应用领域13
1.4.2 嵌入式系统的发展趋势13
1.5 本章小结14
习题14
第2章 ARM处理器体系结构15
2.1 ARM处理器概述15
2.1.1 ARM处理器简介15
2.1.2 ARM体系结构发展16
2.1.3 ARM处理器系列主要产品19
2.1.4 ARM开发工具简介24
2.2 Cortex-A8处理器架构26
2.3 Cortex-A8处理器工作模式和状态30
2.3.1 Cortex-A8处理器工作模式30
2.3.2 Cortex-A8处理器状态31
2.4 Cortex-A8存储器管理32
2.4.1 ARM的基本数据类型32
2.4.2 浮点数据类型32
2.4.3 大/小端存储模式32
2.4.4 寄存器组33
2.4.5 Cortex-A8存储系统37
2.5 Cortex-A8异常处理43
2.5.1 异常向量和优先级43
2.5.2 异常响应过程44
2.5.3 异常返回过程45
2.5.4 Cortex-A8处理器S5PC100中断机制46
2.6 本章小结48
习题48
第3章 ARM指令集49
3.1 ARM指令集概述49
3.1.1 指令格式49
3.1.2 指令的条件码50
3.2 ARM指令的寻址方式51
3.2.1 立即寻址51
3.2.2 寄存器寻址51
3.2.3 寄存器间接寻址51
3.2.4 寄存器移位寻址52
3.2.5 变址寻址52
3.2.6 多寄存器寻址52
3.2.7 相对寻址53
3.2.8 堆栈寻址53
3.2.9 块复制寻址54
3.3 ARM指令简介54
3.3.1 跳转指令54
3.3.2 数据处理指令55
3.3.3 程序状态寄存器处理指令59
3.3.4 加载/存储指令60
3.3.5 协处理器指令61
3.3.6 异常产生指令62
3.4 Thumb指令简介63
3.5 ARM汇编语言编程简介63
3.5.1 伪操作63
3.5.2 伪指令65
3.5.3 汇编语句格式66
3.5.4 汇编语言的程序结构66
3.6 C语言与汇编语言的混合编程67
3.6.1 C程序中内嵌汇编67
3.6.2 汇编中访问C语言程序变量67
3.6.3 ARM中的汇编和C语言相互调用68
3.7 本章小结69
习题69
第4章 S5PV210微处理器与接口71
4.1 基于S5PV210微处理器的硬件平台体系结构71
4.1.1 S5PV210处理器简介71
4.1.2 S5PV210内部各模块介绍72
4.2 存储系统76
4.2.1 S5PV210的地址空间76
4.2.2 S5PV210启动流程77
4.3 时钟系统78
4.3.1 S5PV210时钟概述78
4.3.2 S5PV210的时钟结构79
4.4 GPIO接口81
4.4.1 GPIO概述81
4.4.2 GPIO寄存器83
4.4.3 GPIO操作步骤83
4.4.4 一个LED灯的例子84
4.5 串行通信接口89
4.5.1 串行通信方式89
4.5.2 RS-232C串行接口90
4.5.3 S5PV210的异步串行通信91
4.5.4 S5PV210的UART寄存器92
4.5.5 UART通信示例92
4.6 A/D转换器97
4.7 本章小结100
习题100
第5章 ARM-Linux内核101
5.1 ARM-Linux概述101
5.1.1 GNU/Linux操作系统的基本体系结构101
5.1.2 ARM-Linux内核版本及特点102
5.1.3 ARM-Linux内核的主要架构及功能104
5.1.4 Linux内核源码目录结构105
5.2 ARM-Linux进程管理106
5.2.1 进程的表示和切换107
5.2.2 进程、线程和内核线程109
5.2.3 进程描述符task_ struct的几个特殊字段109
5.2.4 do_ fork()函数110
5.2.5 进程的创建112
5.2.6 线程和内核线程的创建113
5.2.7 进程的执行——exec函数族113
5.2.8 进程的终止114
5.2.9 进程的调度115
5.3 ARM-Linux内存管理117
5.3.1 ARM-Linux内存管理概述117
5.3.2 ARM-Linux虚拟存储空间及分布118
5.3.3 进程空间描述119
5.3.4 物理内存管理123
5.3.5 基于slab分配器的管理技术124
5.3.6 内核非连续内存分配(vmalloc)125
5.3.7 页面回收简述127
5.4 ARM_ Linux模块127
5.4.1 LKM的编写和编译128
5.4.2 LKM版本差异比较128
5.4.3 模块的加载与卸载129
5.4.4 工具集module-init-tools131
5.5 ARM-Linux中断管理132
5.5.1 ARM_ Linux中断的一些基本概念132
5.5.2 内核异常向量表的初始化133
5.5.3 Linux中断处理135
5.5.4 内核版本2.6.38后的中断处理系统的一些改变——通用中断子系统142
5.6 ARM-Linux系统调用143
5.7 本章小结146
习题146
第6章 Linux文件系统148
6.1 Linux文件系统概述148
6.2 ext2文件系统格式150
6.2.1 ext2文件系统150
6.2.2 目录结构153
6.3 ext3和ext4文件系统154
6.3.1 ext3文件系统154
6.3.2 ex4文件系统155
6.4 嵌入式文件系统JFFS2155
6.4.1 嵌入式文件系统155
6.4.2 JFFS2嵌入式文件系统157
6.5 YAFFS与YAFFS2文件系统简介164
6.5.1 YAFFS文件系统164
6.5.2 YAFFS2文件系统简介165
6.6 根文件系统166
6.6.1 根文件系统概述166
6.6.2 根文件系统的制作工具——BusyBox168
6.6.3 YAFFS2文件系统的创建170
6.7 本章小结171
习题171
第7章 嵌入式Linux系统移植及调试172
7.1 BootLoader基本概念与典型结构172
7.1.1 BootLoader基本概念172
7.1.2 BootLoader的操作模式173
7.1.3 BootLoader的典型结构174
7.1.4 常见的BootLoader174
7.2 U-Boot175
7.2.1 U-Boot概述175
7.2.2 U-Boot启动的一般流程176
7.2.3 U-Boot环境变量180
7.2.4 U-Boot命令181
7.3 交叉开发环境的建立183
7.4 交叉编译工具链185
7.4.1 交叉编译工具链概述185
7.4.2 工具链的构建方法186
7.4.3 交叉编译工具链的主要工具186
7.4.4 Makefile192
7.5 嵌入式Linux系统移植过程194
7.5.1 U-Boot移植194
7.5.2 内核的配置、编译和移植198
7.6 GDB调试器205
7.7 远程调试209
7.7.1 远程调试工具的构成209
7.7.2 通信协议——RSP210
7.7.3 远程调试的实现方法及设置211
7.7.4 远程调试应用实例方法212
7.8 内核调试213
7.8.1 printk()213
7.8.2 KDB214
7.8.3 Kprobes216
7.8.4 KGDB216
7.9 本章小结217
习题218
第8章 设备驱动程序设计219
8.1 设备驱动程序开发概述219
8.1.1 Linux设备驱动程序分类220
8.1.2 驱动程序的处理过程221
8.1.3 设备驱动程序框架230
8.1.4 驱动程序的加载233
8.2 内核设备模型234
8.2.1 设备模型功能235
8.2.2 sysfs235
8.2.3 sysfs的实现机制kobject237
8.2.4 设备模型的组织——platform总线239
8.3 字符设备驱动设计框架243
8.3.1 字符设备的重要数据结构243
8.3.2 字符设备驱动框架248
8.4 GPIO驱动概述252
8.4.1 gpiolib关键数据结构252
8.4.2 GPIO的申请和注册253
8.5 I2C总线驱动设计255
8.5.1 I2 C总线概述256
8.5.2 I2 C驱动程序框架257
8.5.3 关键数据结构258
8.5.4 I2 C核心接口函数261
8.5.5 I2C设备驱动的通用方法265
8.6 块设备驱动程序设计概述267
8.6.1 块设备驱动整体框架267
8.6.2 关键数据结构268
8.6.3 块设备的请求队列操作275
8.7 嵌入式网络设备驱动设计276
8.7.1 网络设备驱动程序框架277
8.7.2 网络设备驱动程序关键数据结构278
8.7.3 网络设备驱动程序设计方法概述282
8.8 网络设备驱动程序示例——网卡DM9000驱动程序分析282
8.9 本章小结291
习题292
第9章 Qt图形界面应用程序开发基础293
9.1 Qt简介293
9.2 Qt 5概述294
9.2.1 Qt 5简介294
9.2.2 通过“帮助”菜单了解Qt 5的组成——模块295
9.2.3 Linux下Qt开发环境的安装与集成297
9.2.3 Qt Creator功能和特性299
9.3 信号和插槽机制299
9.4 Qt程序设计302
9.4.1 helloworld程序302
9.4.2 多窗口应用程序303
9.5 Qt数据库应用309
9.5.1 数据库驱动309
9.5.2 Qt与SQLite数据库的连接310
9.5.3 SQL模型311
9.6 本章小结317
习题318
第10章 SQLite数据库319
10.1 SQLite数据库概述321
10.1.1 基于Linux平台的嵌入式数据库概述321
10.1.2 SQLite的特点322
10.1.3 SQLite的体系结构323
10.2 SQLite安装324
10.3 SQLite的常用命令326
10.4 SQLite的数据类型328
10.5 SQLite的API函数329
10.5.1 核心C API函数329
10.5.2 扩充C API函数335
10.6 本章小结337
习题337
第11章 嵌入式系统的开发设计案例338
11.1 嵌入式系统设计方法介绍338
11.1.1 传统的嵌入式系统设计方法338
11.1.2 “协同设计”概念的嵌入式系统设计方法342
11.2 基于ARM的嵌入式Web服务器设计实例344
11.2.1 系统环境搭建344
11.2.2 Web服务器原理349
11.2.3 嵌入式Web服务器设计350
11.3 物联网网关设计实例355
11.3.1 背景介绍——环境监测系统平台整体架构355
11.3.2 网关节点硬件设计方案357
11.3.3 系统软件设计360
11.3.4 数据库建设360
11.4 智能无人值守实验室监控系统设计实例361
11.4.1 系统总体框架361
11.4.2 学生选课预约364
11.4.3 门禁系统365
11.4.4 ZigBee网络的网络拓扑及路由协议365
11.4.5 Qt的使用369
11.5 本章小结375
参考文献376