图书介绍
ARM处理器裸机开发实战 机制而非策略PDF|Epub|txt|kindle电子书版本网盘下载
- 王小强主编 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121153037
- 出版时间:2012
- 标注页数:370页
- 文件大小:135MB
- 文件页数:385页
- 主题词:微处理器,ARM-系统设计
PDF下载
下载说明
ARM处理器裸机开发实战 机制而非策略PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1篇 基础篇2
第1章 ARM处理器简介2
1.1处理器工作模式2
1.2寄存器介绍3
1.2.1堆栈指针寄存器R13和链接寄存器R144
1.2.2程序计数器R154
1.2.3程序状态寄存器4
1.3工作状态5
1.4数据长度5
1.5存储系统5
1.5.1 ARM地址空间6
1.5.2 ARM存储器的格式6
1.6天嵌TQ2440开发板硬件资源概述7
1.7本章小结9
1.8扩展阅读之CISC处理器和RISC处理器简介9
第2章 ADS集成开发环境及程序下载具体流程11
2.1 ADS 1.2集成开发环境简介11
2.1.1 CodeWarrior for ARM开发环境12
2.1.2 AXD调试器的启动13
2.2工程的编辑与修改13
2.2.1建立一个新工程14
2.2.2建立一个源文件14
2.2.3添加源文件到工程15
2.2.4编译与链接工程16
2.2.5打开已有的工程16
2.3工程的调试16
2.3.1装载映像文件16
2.3.2调试工具条的使用17
2.4 H-JTAG的安装与调试18
2.4.1 H-JTAG的安装18
2.4.2 H-JTAG的设置18
2.5使用U-Boot下载裸机程序21
2.6本章小结23
第3章 ARM指令集及汇编语言基础24
3.1 ARM指令集介绍24
3.1.1 ARM指令集24
3.1.2 ARM寻址方式30
3.1.3 ARM伪操作和伪指令介绍33
3.2 ARM汇编基础知识40
3.3 ARM汇编程序的基本结构41
3.3.1编写汇编程序基本的格式规范42
3.3.2程序入口和程序结束43
3.3.3段43
3.3.4标号(标志符)44
3.3.5外部标号48
3.3.6文件包含48
3.4用AXD调试ARM汇编程序实验48
3.4.1建立工程并添加源文件48
3.4.2工程的设置50
3.4.3编译源文件51
3.4.4启动AXD调试器51
3.4.5手把手调试汇编程序54
3.5常用汇编语言程序子模块实例分析57
3.5.1特殊功能寄存器的访问57
3.5.2内存数据复制58
3.5.3批量加载与存储58
3.5.4堆栈操作59
3.5.5实现查表功能61
3.6本章小结61
3.7扩展阅读之内存和I/O地址、前序寻址和后序寻址61
第4章 ARM C语言基础63
4.1数据类型基础63
4.1.1用typedef和#define定义类型63
4.1.2用signed和unsigned修饰数据类型64
4.1.3 volatile和强制类型转换64
4.2深入理解位运算符和位运算65
4.2.1按位与运算符(&)65
4.2.2按位或运算符(|)66
4.2.3按位取反运算符(~)66
4.2.4左移和右移运算符(<<)、(>>)66
4.2.5位运算应用实例分析66
4.3控制结构67
4.3.1选择结构67
4.3.2循环结构67
4.4防止文件重复包含技巧68
4.5 ARM编译器对C语言的扩展68
4.5.1 _irq声明中断处理函数68
4.5.2 _swi声明软中断69
4.5.3 _asm内嵌汇编69
4.5.4 _inline定义内联函数69
4.6本章小结71
4.7扩展阅读之高速缓存基础知识71
第5章 ARM汇编语言和C语言混合编程基础74
5.1一个混合编程实例的实现74
5.2 APCS规则概述77
5.2.1寄存器的使用77
5.2.2参数传递77
5.2.3函数的返回值77
5.3本章小结77
第6章 GPIO编程实验79
6.1 GPIO概述79
6.1.1 GPIO引脚介绍79
6.1.2 GPIO特性分析79
6.1.3 GPIO相关寄存器80
6.1.4 GPIO应用实例81
6.2基础实验:第一个裸机程序——流水灯82
6.2.1硬件电路分析82
6.2.2建立工程并添加启动代码83
6.2.3添加源文件84
6.2.4编辑源文件85
6.2.5工程设置、编译、链接86
6.2.6下载程序到开发板运行89
6.2.7由点亮LED引发的思考93
6.2.8再议点亮LED实验95
6.2.9将点亮一个LED扩展到流水灯97
6.3 GPIO扩展实验99
6.3.1按键实验99
6.3.2蜂鸣器实验104
6.4本章小结105
6.5扩展阅读之模块化编程、NAND FLASH和NOR FLASH概述106
第2篇 提高篇110
第7章 启动代码分析110
7.1从开发板硬件讲起110
7.1.1 TQ2440核心板芯片功能介绍110
7.1.2从NAND FLASH和NOR FLASH启动流程分析112
7.2启动代码详解113
7.3启动代码主要功能模块分析134
7.3.1建立中断向量表134
7.3.2初始化各个模式的堆栈136
7.3.3初始化系统硬件137
7.3.4初始化应用程序的执行环境并跳转到主程序执行137
7.3.5跳转到C语言主程序执行139
7.4本章小结140
7.5本章附录——完整版启动代码140
第8章 系统时钟和定时器147
8.1 S3C2440时钟系统概述147
8.1.1系统时钟初始化148
8.1.2 FCLK、HCLK和PCLK与Fin的关系149
8.2定时器原理与应用151
8.2.1定时器原理151
8.2.2定时器相关的寄存器153
8.2.3定时器基础实验代码详解及测试155
8.2.4定时器扩展实验之PWM实验157
8.3本章小结159
第9章 存储器控制器160
9.1 S3C2440地址空间160
9.2操作实例:SDRAM实例分析162
9.2.1 SDRAM工作原理162
9.2.2 SDRAM接口电路设计163
9.2.3 SDRAM初始化过程详解164
9.2.4回顾启动代码中的SDRAM初始化166
9.3本章小结167
第10章 通用异步收发器(UART)168
10.1 UART概述168
10.2 S3C2440处理器UART工作原理169
10.3引脚描述及相关寄存器170
10.4 UART基础实验173
10.4.1硬件电路分析173
10.4.2程序设计及代码详解174
10.4.3实例测试175
10.4.4 UART基础实验分析176
10.5 UART高级实验——可变参数函数在UART中的应用178
10.5.1程序设计及代码详解178
10.5.2实例测试181
106本章小结181
第11章 中断控制系统182
11.1 S3C2440中断系统概述182
11.1.1深入理解CPU的工作模式183
11.1.2中断控制器184
11.2外部中断实验189
11.2.1硬件电路分析189
11.2.2程序分析189
11.2.3中断执行流程详解201
11.2.4中断处理流程引发的思考206
11.2.5实例测试210
11.2.6为什么进入不了中断212
11.3定时器中断实验216
11.3.1程序代码分析217
11.3.2实例测试220
11.4串口中断原理及实验220
11.4.1如何正确使用中断221
11.4.2程序代码分析224
11.4.3实例测试228
11.5 ARM中断之高级应用:软中断原理及实验228
11.5.1程序代码分析228
11.5.2实例测试233
11.5.3软中断所用到的启动代码234
11.6本章小结240
第12章 NAND FLASH原理与实验241
12.1 FLASH概述241
12.1.1 NAND FLASH的基本结构242
12.1.2 NAND FLASH接口电路243
12.1.3如何访问NAND FLASH245
12.1.4 S3C2440 NAND FLASH控制器246
12.1.5使用宏代替简单的函数249
12.2 NAND FLASH基础实验251
12.2.1 NAND FLASH基本操作函数分析251
12.2.2 NAND FLASH基础实验之页读写259
12.2.3页读写实例测试265
12.2.4 NAND FLASH基础实验之读ID268
12.2.5读ID实例测试271
12.3 NAND FLASH高级实验272
12.3.1随机读、写实验代码详解273
12.3.2随机读、写实例测试276
12.4回顾启动代码中的NAND FLASH读取函数277
12.5本章小结280
第13章 LCD控制器原理与实验281
13.1 LCD和LCD控制器工作原理281
13.1.1 LCD概述281
13.1.2 LCD接口信号282
13.1.3 LCD显示原理283
13.1.4 LCD操作时序详解285
13.1.5 S3C2440 LCD控制器287
13.1.6 LCD控制寄存器初始化288
13.2 LCD基础实验295
13.2.1硬件电路分析295
13.2.2程序代码分析296
13.2.3实例测试299
13.3 LCD基础实验之单像素显示299
13.3.1程序代码分析300
13.3.2实例测试300
13.4 LCD基础实验之图片显示301
13.4.1如何将图片转换为C语言数组301
13.4.2程序代码分析304
13.4.3实例测试307
13.5 LCD高级实验之汉字显示307
13.5.1两种常见的汉字编码307
13.5.2 LCD汉字显示原理308
13.5.3程序代码分析309
13.5.4实例测试312
13.5.5 LCD显示高级技巧——可变参函数Lcd_Printf的实现313
13.5.6可变参函数Lcd_Printf测试316
13.5.7汉字区位码的思考316
13.5.8实例测试318
13.6本章小结319
第14章 ADC原理与实验320
14.1 ADC原理320
14.1.1 ADC相关寄存器321
14.1.2 ADC初始化322
14.2 ADC实验323
14.2.1 ADC实验代码详解323
14.2.2 ADC实验测试326
14.3本章小结327
第3篇 典型项目分析330
第15章 综合实战330
15.1实战1:数据采集系统实现330
15.1.1功能描述330
15.1.2模块划分330
15.1.3代码实现331
15.1.4实例测试339
15.1.5实验总结339
15.2实战2:串口控制实验339
15.2.1功能描述339
15.2.2模块划分340
15.2.3代码实现340
15.2.4实例测试347
15.2.5实验总结347
15.3实战3:制作电子相册347
15.3.1功能描述347
15.3.2模块划分347
15.3.3代码实现347
15.3.4实例测试354
15.3.5实验总结354
第4篇 理论知识扩展356
第16章 嵌入式系统电源设计和Linux内核开发基础356
16.1直流稳压电源分类356
16.1.1普通线性稳压器工作原理356
16.1.2低压差线性稳压器工作原理357
16.1.3电容式开关电源的工作原理357
16.1.4电感式开关电源的工作原理358
16.1.5嵌入式系统设计中的电源芯片选型358
16.1.6设计实例分析360
16.2 Linux内核基础实验361
16.2.1实验一:修改调度算法实验361
16.2.2实验二:添加内核模块实验367
参考文献370