搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
ARM Cortex-M3 权威指南
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787811245332
  • 作      者:
    (英)Joseph Yiu著
  • 出 版 社 :
    北京航空航天大学出版社
  • 出版日期:
    2009
收藏
内容介绍
  《ARM Cortex-M3权威指南》重点介绍了新的ARM架构、指令集的总结、硬件特性以及调试系统的概览。《ARM Cortex-M3权威指南》还提供了一些程序示例,并且在其中讲解了使用GNU工具链与ARM工具的基本方法与步骤。主要内容包括:ARM架构的背景、CortexM3入门、操作模式、异常与中断、汇编语言基础、存储器系统、CortexM3上的汇编与C编程、开发流程、电源管理、多处理机通信、开发工具、调试、Keil RealView MDK使用入门等。随书附光盘1张,内含ARM CortexM3相关文章及Keil RealView MDK评估软件等。 《ARM Cortex-M3权威指南》适用于使用ARM CortexM3微控制器的研发人员作为技术、编程参考,也可作为CortexM3微控制器教学或培训用教材。
展开
精彩书摘

  第1章 介绍
  1.1 ARM Cortex-M3处理器初探
  单片机市场的规模可以用“巨无霸”来形容,预计到2010年时每年能有20 G片的出货量。世界各地的器件供应商纷纷亮出自己的得意之作,他们提供的器件和架构也是各具特色。业界内部可谓是百花齐放,热闹非凡,好戏不断。各行各业对单片机能力的要求也一直“得寸进尺”,而且还又要马儿跑,又要马儿不吃草——处理器必须在不怎么增加主频和功耗的条件下干更多的活儿。另一方面,处理器之间的互连也在加深,看这一串串熟悉的字眼:串口,USB,以太网,无线数传……,处理器如欲支持这些数据通道,就必须在片上塞进更多的外设。软件方面的情况也如出一辙:应用程序的功能一直在花样翻新,性能需求也是变本加厉;更高的运算速度,更硬的实时能力,更多的功能模块,更炫的图形界面……,所有这些要求单片机都得照单全收。在这个大环境下,ARM Cortex-M3(CM3)处理器,作为Cortex系列的处女作,为了让32位处理器作庄单片机市场,轰轰烈烈地诞生了!由于采用了最新的设计技术,它的门数更低,性能却更强。许多曾经只能求助于高级32位处理器或DSP的软件设计,都能在CM3上跑得很快很欢。嵌入式处理器市场正在32位化,相信用不了多久,CM3就一定会在这美丽新世界中脱颖而出,比当年8051推动整个业界还有过之而无不及,再次放飞工程师的梦想,让深埋于心底多年的夙愿迎来dreams come true的激动!
  ……

展开
目录
第1章 介绍.
1.1 ARMCortex-M3处理器初探
1.1.1 从Cortex-M3处理器内核到基于Cortex-M3的MCU
1.1.2 ARM及ARM架构的背景
1.2 ARM的各种架构版本
1.3 指令集的开发
1.4 Thumb-2指令集体系结构(ISA)
1.5 Cortex-M3处理器的舞台
1.6 本书的组织结构
1.7 深入研究用的读物

第2章 Cortex-M3概览
2.1 简介
2.2 寄存器组
2.3 操作模式和特权级别
2.4 内建的嵌套向量中断控制器
2.5 存储器映射
2.6 总线接口
2.7 存储器保护单元(MPU)
2.8 指令集
2.9 中断和异常
2.1 0调试支持
2.1 1Cortex-M3的品性简评
2.1 1.1 高性能
2.1 1.2 先进的中断处理功能
2.1 1.3 低功耗
2.1 1.4 系统特性
2.1 1.5 调试支持

第3章 Cortex-M3基础
3.1 寄存器组
3.1.1 通用目的寄存器R0~R
3.1.2 通用目的寄存器R8~R
3.1.3 堆栈指针R
3.1.4 连接寄存器R
3.1.5 程序计数器R
3.2 特殊功能寄存器组
3.2.1 程序状态寄存器(PSRs或曰xPSR)
3.2.2 PRIMASK.FAULTMASK和BASEPRI
3.2.3 控制寄存器(CONTROL)
3.3 操作模式
3.4 异常与中断
3.5 向量表
3.6 栈内存操作
3.7 Cortex-M3的堆栈实现
3.8 复位序列

第4章 指令集
4.1 汇编语言基础
4.1.1 汇编语言:基本语法
4.1.2 汇编语言:后缀的使用
4.1.3 汇编语言:统一汇编语言书写语法
4.2 指令集
4.2.1 分类指令表
4.2.2 未支持的指令
4.3 近距离检视指令
4.3.1 汇编语言:数据传送
4.3.2 汇编语言:数据处理
4.3.3 汇编语言:子程调用与无条件跳转指令
4.3.4 汇编语言:标志位与条件转移
4.3.5 汇编语言:指令隔离指令和存储器隔离指令
4.3.6 汇编语言:饱和运算
4.4 CM3中一些前卫的指令
4.4.1 MRS和MSR
4.4.2 IF-THEN
4.4.3 CBZ和CBNZ
4.4.4 SDIV和UDIV
4.4.5 REV,REVH,REV16以及REVSH
4.4.6 RBIT
4.4.7 SXTB,SXTH,UXTB,UXTH
4.4.8 BFC/BFI,UBFX/SBFX
4.4.9 LDRD/STRD
4.4.1 0TBB,TBH

第5章 存储器系统
5.1 存储系统功能概览
5.2 存储器映射
5.3 存储器的各种访问属性
5.4 存储器的缺省访问许可
5.5 位带操作
5.5.1 位带操作的优越性
5.5.2 其他数据长度上的位带操作
5.5.3 在C语言中使用位带操作
5.6 非对齐数据传送
5.7 互斥访问
5.8 端模式

第6章 实现Cortex-M3的全景概貌
6.1 流水线
6.2 详细的框图
6.3 Cortex-M3的总线接口
6.4 Cortex-M3的其他接口
6.5 外部私有外设总线
6.6 典型的连接方式
6.7 复位信号

第7章 异常
7.1 异常类型
7.2 优先级的定义
7.3 向量表
7.4 中断输入及挂起行为
7.5 Fault异常
7.5.1 总线fault
7.5.2 存储器管理fault
7.5.3 用法fault
7.5.4 硬fault
7.5.5 应对fault
7.6 SVC和Pend SV

第8章 NVIC与中断控制
8.1 NVIC概览
8.2 中断配置基础
8.3 中断的使能与除能
8.4 中断的挂起与清除
8.4.1 优先级
8.4.2 活动状态
8.4.3 PRIMASK与FAULTMASK特殊功能寄存器
8.4.4 BASEPRI寄存器
8.4.5 其他异常的配置寄存器
8.5 中断建立全过程的演示..
8.6 软件中断
8.7 Sys Tick定时器

第9章 中断的具体行为
9.1 中断异常的响应序列
9.1.1 入栈
9.1.2 取向量
9.1.3 更新寄存器
9.2 异常返回
9.3 嵌套的中断
9.4 咬尾中断
9.5 晚到(的高优先级)异常
9.6 异常返回值
9.7 中断延迟
9.8 异常响应期间的fault

第10章 Cortex-M3的低层编程
10.1 概览
10.1.1 使用汇编
10.1.2 使用C
10.2 汇编与C的接口
10.3 典型的开发流程
10.4 第1步工作
10.5 与外界互动
10.6 使用数据存储器
10.7 使用互斥访问实现信号量操作
10.8 使用位带实现互斥锁操作
10.9 使用位段提取与查表跳转

第11章 使用异常系统
11.1 使用中断
11.1.1 建立堆栈
11.1.2 建立向量表
11.1.3 建立中断优先级
11.1.4 使能中断
11.2 异常/中断服务例程
11.3 软件触发中断
11.4 异常服务例程的范例
11.5 使用SVC
11.6 SVC示范:用于输出函数
11.7 在C中使用SVC

第12章 编程进阶与系统行为
12.1 在系统中使用双堆栈
12.2 双字的堆栈对齐方式
12.3 非基级的线程模式
12.4 性能评估
12.5 当处理器被锁定(Lockup)时
12.5.1 锁定情形下的众生相
12.5.2 避免被锁定

第13章 Cortex-M3的其他特性
13.1 Sys Tick定时器
13.2 电源管理
13.3 多处理器通信
13.4 自复位控制

第14章 存储保护单元MPU
14.1 MPU概览
14.2 MPU的寄存器组
14.3 启用MPU
14.4 MPU的典型设置
14.5 使用子region除能的示例

第15章 调试系统架构
15.1 调试特性概览
15.2 Core Sight技术概览
15.2.1 处理器的调试接口
15.2.2 DP模块.AP模块和DAP
15.2.3 跟踪接口
15.2.4 Core Sight的性质
15.3 调试模式
15.4 调试事件
15.5 Cortex-M3中的断点
15.6 调试时访问寄存器
15.7 内核的其他调试特性

第16章 调试组件
16.1 简介
16.2 跟踪组件:数据观察点与跟踪(DWT)
16.3 跟踪组件:仪器化跟踪宏单元(ITM)
16.3.1 基于ITM的软件跟踪
16.3.2 基于ITM和DWT的硬件跟踪
16.3.3 ITM时间戳
16.4 跟踪组件:嵌入式跟踪宏单元(ETM)
16.5 跟踪组件:跟踪端口接口单元(TPIU)
16.6 闪存地址重载及断点单元(FPB)
16.7 AHB访问端口
16.8 ROM表

第17章 开始Cortex-M3开发
17.1 选择一款Cortex-M3产品
17.2 Cortex-M3版本0与版本1的区别
17.3 Cortex-M3修订版1与修订版2的区别
17.3.1 双字堆栈对齐方式成为缺省值
17.3.2 新增辅助控制寄存器(Auxiliary Control Register)
17.3.3 ID寄存器的更新
17.3.4 调试功能
17.3.5 睡眠特性
17.3.6 使用修订版2带来的好处和注意事项
17.4 开发工具
17.4.1 C编译器
17.4.2 嵌入式操作系统支持

第18章 ARM7应用程序移植到Cortex-M
18.1 简介
18.2 系统性质
18.2.1 存储器映射
18.2.2 中断/异常系统
18.2.3 MPU
18.2.4 系统控制
18.2.5 操作模式
18.3 汇编源程序
18.3.1 Thumb状态
18.3.2 ARM状态
18.4 C源程序
18.5 预编译的目标文件
18.6 优化

第19章 使用GNU工具链开始Cortex-M3开发
19.1 背景
19.2 获取GNU工具链
19.3 示例程序
19.4 访问特殊功能寄存器
19.5 使用未支持的指令
19.6 GNUC编译器的内联汇编

第20章 KEIL Real View Micro controller Development Kit(RVMDK)使用入门
20.1 简介
20.2 μVision使用入门
20.3 使用UART输出“Hello world”
20.4 测试示例程序
20.5 使用调试器
20.6 指令模拟器
20.7 修改向量表
20.8 使用中断实现的秒表示例程序
附录A Cortex-M3指令小结
附录B 16位Thumb指令及架构版本
附录C Cortex-M3异常快速参考
附录D NVIC寄存器小结
附录E Cortex-M3疑难解答
E.1 简介
E.2 设计fault服务例程
E.2.1 上报fault状态寄存器
E.2.2 上报入栈的PC
E.2.3 上报fault地址寄存器
E.2.4 其他注意事项
E.3 理解发生fault的原因
E.4 在C中上报入栈的寄存器和各fault状态寄存器
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证