图书介绍
零基础学ARM9嵌入式Linux系统开发PDF|Epub|txt|kindle电子书版本网盘下载
![零基础学ARM9嵌入式Linux系统开发](https://www.shukui.net/cover/35/34649781.jpg)
- 段群杰,霍艳忠,杜旭等编著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111316718
- 出版时间:2010
- 标注页数:462页
- 文件大小:181MB
- 文件页数:475页
- 主题词:微处理器,ARM9;Linux操作系统
PDF下载
下载说明
零基础学ARM9嵌入式Linux系统开发PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 入门篇1
第1章 嵌入式系统1
1.1嵌入式系统简介1
1.1.1嵌入式系统的特点1
1.1.2嵌入式系统的应用领域2
1.1.3嵌入式系统的发展趋势3
1.2嵌入式系统的组成5
1.2.1嵌入式平台的硬件结构5
1.2.2板级支持包和嵌入式系统6
1.2.3嵌入式系统上的应用程序6
1.3嵌入式系统中的处理器6
1.3.1微处理器7
1.3.2微控制器7
1.3.3数字信号处理器7
1.3.4嵌入式片上系统8
1.4嵌入式系统的一般设计流程和方法8
1.4.1嵌入式系统的一般设计流程8
1.4.2嵌入式系统的一般设计方法9
1.5实践拓展10
1.6习题11
第2章 ARM微处理器结构12
2.1ARM公司简介12
2.2ARM微处理器系列12
2.3ARM体系结构的版本及命名方法15
2.3.1 ARM体系结构的版本16
2.3.2 ARM体系结构的变种18
2.3.3 ARM/Thumb体系结构的命名格式19
2.4 ARM微处理器模式20
2.5 ARM寄存器介绍21
2.5.1通用寄存器22
2.5.2程序状态寄存器23
2.6 ARM体系的异常中断24
2.6.1ARM中异常中断的种类25
2.6.2ARM处理器对异常中断的响应过程25
2.6.3从异常中断处理程序中返回26
2.7 ARM体系中的存储系统26
2.7.1ARM体系中的存储空间26
2.7.2ARM体系结构的存储器格式26
2.7.3非对齐的存储访问操作27
2.7.4ARM指令预取和自修改代码27
2.8实践拓展28
2.9习题29
第3章 ARM微处理器指令系统30
3.1ARM指令系统简介30
3.1.1ARM指令的分类30
3.1.2ARM指令的一般编码格式30
3.1.3ARM指令的条件码域31
3.2 ARM指令寻址方式32
3.2.1数据处理指令的操作数的寻址方式32
3.2.2字及无符号字节的Load/Store指令的寻址方式36
3.2.3杂类Load/Store指令的寻址方式39
3.2.4批量Load/Store指令的寻址方式41
3.2.5协处理器Load/Store指令的寻址方式42
3.3 ARM指令集详解43
3.3.1 跳转指令44
3.3.2数据处理指令45
3.3.3乘法指令与乘加指令49
3.3.4程序状态寄存器访问指令51
3.3.5加载/存储指令52
3.3.6批量数据加载/存储指令53
3.3.7数据交换指令54
3.3.8移位指令55
3.3.9协处理器指令56
3.3.10异常产生指令57
3.4 ARM程序设计示例58
3.5 实践拓展61
3.6 习题63
第二篇 基础篇64
第4章 构建嵌入式开发环境64
4.1交叉开发环境简介64
4.1.1交叉开发环境模型65
4.1.2Linux的常用版本65
4.2宿主机与目标板的连接方式66
4.2.1串行通信接口66
4.2.2以太网接口67
4.2.3USB接口68
4.2.4JTAG接口68
4.3建立主机开发环境69
4.3.1Fedora的安装69
4.3.2Minicom的安装配置82
4.3.3TFTP服务的安装配置85
4.3.4NFS的安装配置86
4.3.5建立交叉工具链87
4.4实践拓展89
4.5习题90
第5章 S3C2410X硬件结构及功能91
5.1 S3C2410X简介91
5.1.1S3C2410X处理器91
5.1.2S3C2410X引脚描述92
5.1.3S3C2410X内核结构95
5.2 S3C2410X的存储器映射96
5.2.1存储器的控制寄存器96
5.2.2 Nand Flash及其控制器99
5.3 DMA控制器103
5.3.1DMA工作原理103
5.3.2DMA控制器的相关寄存器105
5.4时钟和电源管理109
5.4.1时钟110
5.4.2电源管理112
5.4.3专用寄存器114
5.4.4S3C2410X时钟及电源管理应用117
5.5中断118
5.5.1中断控制器专用寄存器119
5.5.2中断实例122
5.6输入/输出端口124
5.6.1端口寄存器及其引脚配置124
5.6.2外中断实例133
5.7定时器135
5.7.1结构与工作原理135
5.7.2定时器专用寄存器138
5.7.3定时器的使用139
5.7.4定时器应用实例140
5.8实践拓展141
5.9习题144
第6章S3C2410X的外部接口145
6.1 UART接口145
6.1.1串行口结构和工作原理145
6.1.2 UART专用寄存器149
6.1.3 UART应用实例152
6.2 IIC总线接口153
6.2.1 IIC总线接口的工作模式154
6.2.2 IIC总线接口的特殊功能寄存器158
6.2.3 IIC应用实例160
6.3 SPI接口162
6.3.1 SPI结构与工作原理163
6.3.2 SPI专用寄存器164
6.3.3 SPI应用方法166
6.3.4 SPI应用实例167
6.4 A/D转换与触摸屏接口169
6.4.1 A/D转换器结构与工作原理170
6.4.2 A/D转换和触摸屏专用寄存器172
6.5实践拓展174
6.6习题176
第7章 嵌入式操作系统177
7.1常见的嵌入式操作系统177
7.2嵌入式Linux的基本结构和工作原理179
7.2.1嵌入式Linux的基本结构179
7.2.2嵌入式Linux的工作原理182
7.3实践拓展183
7.4习题185
第三篇 提高篇186
第8章 S3C2410X平台Bootloader186
8.1 Bootloader的操作模式186
8.2 Bootloader的启动流程187
8.3 Bootloader之vivi188
8.3.1 vivi的配置与编译189
8.3.2 vivi第一阶段的代码190
8.3.3 vivi第二阶段的代码201
8.4 Bootloader之U-Boot217
8.4.1 U-Boot的主要目录结构218
8.4.2 U-Boot支持的主要功能218
8.4.3 U-Boot的原理分析219
8.4.4 U-Boot在S3 C2410上的移植231
8.5自行开发Bootloader239
8.6实践拓展239
8.7习题241
第9章 移植嵌入式操作系统242
9.1 Linux内核242
9.1.1Linux内核的组成结构243
9.1.2Linux源码结构244
9.2移植Linux内核245
9.2.1给内核打补丁245
9.2.2配置内核247
9.2.3编译内核257
9.3移植根文件系统257
9.3.1安装Busybox258
9.3.2配置Busybox259
9.3.3向Busybox添加新命令260
9.3.4编译和安装Busybox262
9.3.5构造根文件系统262
9.3.6创建根文件系统映像文件264
9.4下载内核264
9.4.1使用U-Boot制作、下载内核264
9.4.2启动Linux内核266
9.5使用U-Boot加载根文件系统映像266
9.6实践拓展267
9.7习题268
第10章 嵌入式系统的设备管理及驱动269
10.1 Linux设备管理和驱动269
10.1.1Linux设备的分类269
10.1.2设备驱动程序的作用269
10.1.3访问设备的实现270
10.1.4Linux设备控制方式270
10.2 Linux设备驱动开发流程272
10.2.1构造和运行模块272
10.2.2字符设备驱动编写273
10.2.3字符设备驱动实例276
10.2.4并发控制278
10.2.5阻塞与非阻塞284
10.2.6select和poll288
10.2.7中断处理290
10.2.8内存与1/0操作292
10.3块设备驱动编写296
10.3.1块设备的I/o操作特点296
10.3.2block_device_operations结构体296
10.3.3gendisk结构体297
10.3.4request结构体299
10.3.5request操作函数302
10.3.6bio结构体304
10.3.7注册与注销305
10.3.8加载与卸载306
10.3.9打开与释放308
10.3.10 ioctl函数308
10.3.11 I/0请求处理309
10.4设备驱动实例——RAMDISK驱动312
10.5实践拓展317
10.6习题319
第11章 嵌入式LinuxC语言开发工具320
11.1编辑器VIM320
11.1.1VIM的编辑模式320
11.1.2VIM的进入与退出322
11.1.3光标的移动322
11.1.4删除、撤销和重复323
11.1.5复制和粘贴324
11.1.6查找和替换324
11.1.7帮助系统和网络资源324
11.2编译器GCC326
11.2.1GCC的编译流程326
11.2.2GCC的常用编译选项328
11.2.3应用实例331
11.3调试器GDB333
11.3.1GDB的使用流程335
11.3.2GdbServer远程调试338
11.4工程管理Make339
11.4.1Makefile文件介绍340
11.4.2Makefile的规则341
11.4.3Makefile的变量343
11.4.4Make命令的使用345
11.4.5使用自动工具生成Makefile346
11.5集成开发环境Eclipse347
11.5.1下载和安装Eclipse348
11.5.2Eclipse的界面348
11.6实践拓展350
11.7习题351
第12章 嵌入式C语言开发流程352
12.1命令行模式下的开发流程352
12.1.1编写代码352
12.1.2编译程序354
12.1.3运行程序355
12.1.4交叉编译355
12.1.5编写Makefile356
12.2基于Eclipse的开发流程358
12.2.1新建工程358
12.2.2编写代码359
12.2.3编译工程359
12.2.4运行程序361
12.3实践拓展362
12.4习题363
第四篇 精通篇364
第13章 ADS集成开发环境364
13.1命令行开发工具364
13.1.1 armcc编译器365
13.1.2 armlink的使用方法366
13.1.3 ARM运行时库367
13.1.4 CodeWarrior集成开发环境368
13.1.5 ADS调试器369
13.1.6实用工具和软件370
13.2使用ADS创建工程371
13.2.1建立一个工程371
13.2.2编译和链接工程374
13.2.3命令行模式下编译工程379
13.3使用AXD调试代码381
13.3.1打开调试文件381
13.3.2查看存储器内容382
13.3.3设置断点383
13.3.4查看变量值383
13.4实践拓展385
13.5习题386
第14章 图形用户界面编辑环境Qt387
14.1嵌入式系统中的GUI387
14.1.1 MicroWindows387
14.1.2 MiniGUI388
14.1.3 Qt/Embedded388
14.2 MiniGUI编程388
14.2.1 MiniGUI移植390
14.2.2 MiniGUI实例392
14.3初识Qt/Embedded394
14.3.1 Qt/Embedded的系统要求395
14.3.2 Qt的架构395
14.3.3窗口系统396
14.4 Qt/Embedded嵌入式图形开发397
14.4.1建立Qt/Embedded开发环境397
14.4.2认识Qt/Embedded开发环境399
14.4.3窗体401
14.4.4对话框407
14.4.5外形与感觉411
14.4.6国际化412
14.5 Qt/Embedded实战演练413
14.5.1安装Qt/Embedded工具开发包414
14.5.2交叉编译Qt/Embedded库414
14.5.3“Hello,World”程序415
14.5.4发布Qt/Embedded程序到目标板421
14.5.5添加一个Qt/Embedded应用到QPE423
14.6实践拓展424
14.7习题425
第15章S3C2410X完整开发系统的设计426
15.1最小系统426
15.2实验板硬件资源规划426
15.3实验板硬件电路设计427
15.3.1电源电路427
15.3.2复位电路428
15.3.3调试及下载接口电路429
15.3.4时钟电路429
15.3.5微处理器电路430
15.3.6外部存储器电路433
15.3.7串行接口电路437
15.3.8网络接口电路437
15.3.9USB接口电路439
15.3.10液晶接口电路440
15.3.11其他电路441
15.4PCB的设计方法442
15.5电路的调试方法444
15.6软件的移植与开发445
15.6.1准备交叉编译工具445
15.6.2vivi的移植447
15.6.3内核的移植452
15.6.4根文件系统的移植455
15.6.5驱动程序的编写457
15.7实践拓展460
15.8习题461
参考文献462