微信扫一扫,移动浏览光盘
简介
本书以瑞典IAR 公司最新推出的v4.30A版本IAR Embedded Workbench for ARM为核心,详细介绍了IAR嵌入式C编译器和集成开发环境的使用方法,给出了Philips、Atmel、ST等世界著名半导体公司的多种ARM核嵌入式处理器编程实例;分析了与具体处理器架构相关的软件技术要点,详细介绍了应用程序设计和调试过程,以便于读者快速掌握集成开发环境和嵌入式C编译器的使用方法。本书附光盘一张,内含EWARM学习版软件及其使用的动画演示、开发板原理图、ADS代码移植技术白皮书、书中全部程序范例以及IAR公司提供的v4.30A版本全功能评估软件包。本书适合于从事ARM核嵌入式系统设计的工程技术人员阅读,也可作为大专院校相关专业嵌入式系统课程的教学参考书。
目录
第1章 iar embedded workbench嵌入式开发工具简介.
1.1 iar embedded workbench的主要特性1
1.2 iar embedded workbench的目录结构和文件类型4
1.2.1 目录结构4
1.2.2 文件格式4
第2章 快速入门
2.1 项目的创建与编译链接7
2.1.1 创建项目7
2.1.2 编译项目13
2.1.3 链接项目15
2.2 使用iar c-spy调试程序17
2.3 使用c与汇编混合编程模式21
2.4 采用c++编程24
2.5 模拟中断仿真28
2.5.1 添加中断句柄28
2.5.2 设置仿真环境31
2.5.3 运行仿真中断35
2.6 使用库模块37
第3章 arm处理器编程基础
3.1 arm编程模型40
.3.1.1 arm的数据类型和存储器格式40
3.1.2 处理器工作状态和运行模式42
3.1.3 寄存器组织43
3.1.4 异常48
3.2 arm的寻址方式52
3.2.1 寄存器寻址52
3.2.2 立即寻址53
3.2.3 寄存器移位寻址53
3.2.4 寄存器间接寻址53
3.2.5 基址寻址54
3.2.6 相对寻址54
3.2.7 多寄存器寻址55
3.2.8 堆栈寻址55
3.2.9 块拷贝寻址55
3.3 arm指令集57
3.3.1 arm指令的功能与格式57
3.3.2 指令的条件域58
3.3.3 指令分类说明59
3.4 thumb指令集77
3.4.1 thumb指令集与arm指令集的区别77
3.4.2 thumb指令分类说明78
3.5 arm汇编语言程序设计 87
3.5.1 arm汇编语言程序规范87
3.5.2 iar汇编器支持的伪指令89
3.5.3 简单汇编语言程序设计102
3.6 用汇编语言编写系统启动程序104
3.6.1 编写启动程序的一般规则105
3.6.2 iar embedded workbench for arm软件包给出的一般启动程序106
第4章 iar embedded workbench集成开发环境
4.1 iar embedded workbench的菜单命令110
4.1.1 file菜单110
4.1.2 edit菜单111
4.1.3 view菜单113
4.1.4 project菜单113
4.1.5 tools菜单116
4.1.6 window菜单116
4.1.7 help菜单117
4.2 定制iar embedded worbench集成环境118
4.3 iar embedded workbench的项目管理120
4.3.1 项目与创建配置120
4.3.2 项目文件导航121
4.3.3 源代码控制122
4.4 应用程序创建123
4.4.1 程序创建123
4.4.2 扩展工具链125
4.5 iar embedded workbench编辑器126
4.5.1 iar embedded workbench编辑器的使用126
4.5.2 定制编辑环境128
第5章 应用程序仿真调试
5.1 iar c-spy调试器环境131
5.2 c-spy调试器的菜单命令136
5.2.1 view菜单136
5.2.2 debug菜单136
5.2.3 disassembly菜单140
5.2.4 simulator菜单140
5.3用 c-spy调试用户程序145
5.3.1 程序执行方式145
5.3.2 用call stack窗口跟踪函数调用147
5.4 变量和表达式148
5.4.1 c-spy表达式148
5.4.2 察看变量和表达式149
5.5 断点150
5.5.1 定义断点150
5.5.2 察看断点..152
5.6 察看存储器和寄存器153
5.6.1 使用存储器窗口153
5.6.2 使用寄存器窗口154
5.7 c-spy宏系统155
5.7.1 宏语言156
5.7.2 使用c-spy宏162
5.8 利用c-spy模拟器进行中断仿真166
5.8.1 c-spy中断仿真系统166
5.8.2 中断仿真系统的使用167
5.9 应用程序分析172
5.9.1 函数级刨析172
5.9.2 代码覆盖分析173
5.10 c-spy硬件仿真系统174
5.10.1 硬件仿真流程174
5.10.2 采用iar j-link进行硬件系统仿真调试174
第6章 iar arm c/c++编译器
6.1 iar arm c/c++编译器的选项配置181
6.1.1 基本选项配置181
6.1.2 c/c++编译器选项配置183
6.2 数据类型190
6.2.1 基本类型数据190
6.2.2 指针类型数据192
6.2.3 结构体类型数据193
6.2.4 类型属性与对象属性194
6.3 数据存储方式195
6.3.1 堆栈与自动变量195
6.3.2 动态存储器与堆196
6.4 扩展关键字196
6.5 函数200
6.5.1 cpu模式和ram中的运行函数200
6.5.2 用于中断、并发及操作系统编程的基元201
6.5.3 本征函数204
6.6 代码和数据的段定位206
6.6.1 段的作用说明206
6.6.2 段在存储器中的定位208
6.6.3 数据段209
6.6.4 代码段212
6.6.5 c++ 动态初始化213
6.6.6 变量与函数在存储器中的定位213
6.7 dlib库运行环境215
6.7.1 运行环境简介215
6.7.2 使用预编译库217
6.7.3 设置库选项219
6.7.4 代换库模块220
6.7.5 创建和使用定制库220
6.7.6 系统启动和终止221
6.7.7 定制系统初始化222
6.7.8 标准输入/输出223
6.7.9 配置printf 和 scanf 符号224
6.7.10 文件输入/输出225
6.7.11 locale225
6.7.12 环境交互及其他226
6.7.13 c-spy调试器运行接口227
6.7.14 模块一致性检查228
6.7.15 执行启动代码229
6.8 库函数230
6.8.1 头文件231
6.8.2 附加c函数233
6.9 汇编语言接口234
6.9.1 c与汇编混合编程234
6.9.2 c程序调用汇编语言子程序235
6.9.3 c++程序调用汇编语言子程序238
6.9.4 调用规则239
6.9.5 函数调用242
6.9.6 调用结构信息243
6.10 使用 c++244
6.10.1 一般介绍244
6.10.2 c++特性描述245
6.11 pragma 预编译命令247
6.12 iar 语言扩展252
第7章 arm嵌入式系统应用编程实例
7.1 嵌入式系统编程中的代码优化257
7.1.1 合理利用编译系统257
7.1.2 选择数据类型以及数据在存储器中的安排259
7.1.3 编写高效代码261
7.2 philips lpc2148应用系统编程264
7.2.1 lpc2148处理器简介264
7.2.2 存储器结构266
7.2.3 中断控制器267
7.2.4 引脚功能配置268
7.2.5 通用输入/输出端口gpio编程269
7.2.6 串行口uart编程286
7.2.7 实时时钟rtc及外部中断编程290
7.2.8 adc接口编程294
7.2.9 usb接口编程298
7.3 atmel at91sam7s64应用系统编程345
7.3.1 atmel at91sam7s64处理器简介345
7.3.2 存储器结构与外设控制346
7.3.3 并行输入/输出端口pio编程350
7.3.4 adc接口编程366
7.3.5 twi接口编程371
7.3.6 usb接口编程383
7.3.7 μc/osii在 at91sam7s64上的移植399
7.4 st str71x应用系统编程428
7.4.1 st str71x处理器简介428
7.4.2 str71x处理器的存储器结构430
7.4.3 通用输入/输出端口gpio编程432
7.4.4 adc接口编程452
附录a iar embedded workbench设备支持列表
附录b 关于随书配套光盘和j-link仿真器
参考文献...
1.1 iar embedded workbench的主要特性1
1.2 iar embedded workbench的目录结构和文件类型4
1.2.1 目录结构4
1.2.2 文件格式4
第2章 快速入门
2.1 项目的创建与编译链接7
2.1.1 创建项目7
2.1.2 编译项目13
2.1.3 链接项目15
2.2 使用iar c-spy调试程序17
2.3 使用c与汇编混合编程模式21
2.4 采用c++编程24
2.5 模拟中断仿真28
2.5.1 添加中断句柄28
2.5.2 设置仿真环境31
2.5.3 运行仿真中断35
2.6 使用库模块37
第3章 arm处理器编程基础
3.1 arm编程模型40
.3.1.1 arm的数据类型和存储器格式40
3.1.2 处理器工作状态和运行模式42
3.1.3 寄存器组织43
3.1.4 异常48
3.2 arm的寻址方式52
3.2.1 寄存器寻址52
3.2.2 立即寻址53
3.2.3 寄存器移位寻址53
3.2.4 寄存器间接寻址53
3.2.5 基址寻址54
3.2.6 相对寻址54
3.2.7 多寄存器寻址55
3.2.8 堆栈寻址55
3.2.9 块拷贝寻址55
3.3 arm指令集57
3.3.1 arm指令的功能与格式57
3.3.2 指令的条件域58
3.3.3 指令分类说明59
3.4 thumb指令集77
3.4.1 thumb指令集与arm指令集的区别77
3.4.2 thumb指令分类说明78
3.5 arm汇编语言程序设计 87
3.5.1 arm汇编语言程序规范87
3.5.2 iar汇编器支持的伪指令89
3.5.3 简单汇编语言程序设计102
3.6 用汇编语言编写系统启动程序104
3.6.1 编写启动程序的一般规则105
3.6.2 iar embedded workbench for arm软件包给出的一般启动程序106
第4章 iar embedded workbench集成开发环境
4.1 iar embedded workbench的菜单命令110
4.1.1 file菜单110
4.1.2 edit菜单111
4.1.3 view菜单113
4.1.4 project菜单113
4.1.5 tools菜单116
4.1.6 window菜单116
4.1.7 help菜单117
4.2 定制iar embedded worbench集成环境118
4.3 iar embedded workbench的项目管理120
4.3.1 项目与创建配置120
4.3.2 项目文件导航121
4.3.3 源代码控制122
4.4 应用程序创建123
4.4.1 程序创建123
4.4.2 扩展工具链125
4.5 iar embedded workbench编辑器126
4.5.1 iar embedded workbench编辑器的使用126
4.5.2 定制编辑环境128
第5章 应用程序仿真调试
5.1 iar c-spy调试器环境131
5.2 c-spy调试器的菜单命令136
5.2.1 view菜单136
5.2.2 debug菜单136
5.2.3 disassembly菜单140
5.2.4 simulator菜单140
5.3用 c-spy调试用户程序145
5.3.1 程序执行方式145
5.3.2 用call stack窗口跟踪函数调用147
5.4 变量和表达式148
5.4.1 c-spy表达式148
5.4.2 察看变量和表达式149
5.5 断点150
5.5.1 定义断点150
5.5.2 察看断点..152
5.6 察看存储器和寄存器153
5.6.1 使用存储器窗口153
5.6.2 使用寄存器窗口154
5.7 c-spy宏系统155
5.7.1 宏语言156
5.7.2 使用c-spy宏162
5.8 利用c-spy模拟器进行中断仿真166
5.8.1 c-spy中断仿真系统166
5.8.2 中断仿真系统的使用167
5.9 应用程序分析172
5.9.1 函数级刨析172
5.9.2 代码覆盖分析173
5.10 c-spy硬件仿真系统174
5.10.1 硬件仿真流程174
5.10.2 采用iar j-link进行硬件系统仿真调试174
第6章 iar arm c/c++编译器
6.1 iar arm c/c++编译器的选项配置181
6.1.1 基本选项配置181
6.1.2 c/c++编译器选项配置183
6.2 数据类型190
6.2.1 基本类型数据190
6.2.2 指针类型数据192
6.2.3 结构体类型数据193
6.2.4 类型属性与对象属性194
6.3 数据存储方式195
6.3.1 堆栈与自动变量195
6.3.2 动态存储器与堆196
6.4 扩展关键字196
6.5 函数200
6.5.1 cpu模式和ram中的运行函数200
6.5.2 用于中断、并发及操作系统编程的基元201
6.5.3 本征函数204
6.6 代码和数据的段定位206
6.6.1 段的作用说明206
6.6.2 段在存储器中的定位208
6.6.3 数据段209
6.6.4 代码段212
6.6.5 c++ 动态初始化213
6.6.6 变量与函数在存储器中的定位213
6.7 dlib库运行环境215
6.7.1 运行环境简介215
6.7.2 使用预编译库217
6.7.3 设置库选项219
6.7.4 代换库模块220
6.7.5 创建和使用定制库220
6.7.6 系统启动和终止221
6.7.7 定制系统初始化222
6.7.8 标准输入/输出223
6.7.9 配置printf 和 scanf 符号224
6.7.10 文件输入/输出225
6.7.11 locale225
6.7.12 环境交互及其他226
6.7.13 c-spy调试器运行接口227
6.7.14 模块一致性检查228
6.7.15 执行启动代码229
6.8 库函数230
6.8.1 头文件231
6.8.2 附加c函数233
6.9 汇编语言接口234
6.9.1 c与汇编混合编程234
6.9.2 c程序调用汇编语言子程序235
6.9.3 c++程序调用汇编语言子程序238
6.9.4 调用规则239
6.9.5 函数调用242
6.9.6 调用结构信息243
6.10 使用 c++244
6.10.1 一般介绍244
6.10.2 c++特性描述245
6.11 pragma 预编译命令247
6.12 iar 语言扩展252
第7章 arm嵌入式系统应用编程实例
7.1 嵌入式系统编程中的代码优化257
7.1.1 合理利用编译系统257
7.1.2 选择数据类型以及数据在存储器中的安排259
7.1.3 编写高效代码261
7.2 philips lpc2148应用系统编程264
7.2.1 lpc2148处理器简介264
7.2.2 存储器结构266
7.2.3 中断控制器267
7.2.4 引脚功能配置268
7.2.5 通用输入/输出端口gpio编程269
7.2.6 串行口uart编程286
7.2.7 实时时钟rtc及外部中断编程290
7.2.8 adc接口编程294
7.2.9 usb接口编程298
7.3 atmel at91sam7s64应用系统编程345
7.3.1 atmel at91sam7s64处理器简介345
7.3.2 存储器结构与外设控制346
7.3.3 并行输入/输出端口pio编程350
7.3.4 adc接口编程366
7.3.5 twi接口编程371
7.3.6 usb接口编程383
7.3.7 μc/osii在 at91sam7s64上的移植399
7.4 st str71x应用系统编程428
7.4.1 st str71x处理器简介428
7.4.2 str71x处理器的存储器结构430
7.4.3 通用输入/输出端口gpio编程432
7.4.4 adc接口编程452
附录a iar embedded workbench设备支持列表
附录b 关于随书配套光盘和j-link仿真器
参考文献...
IAR EWARM嵌入式系统编程与实践
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!