32位ARM微控制器系统设计与实践

出版社:北京航空航天大学出版社
出版日期:2010-3
ISBN:9787512400306
页数:453页

章节摘录

  激活位表示如果任意系统处理器被激活,则会立即运行或者由于占先而被压伐。这可以用于调试和应用处理器中。挂起位仅在以后不会再发生的故障,出现更高优先级的迟来中断而被延迟的情况下才置位。  4.向量表偏移寄存器  向量表偏移寄存器(NVIC-VTABLE,OxE000ED08)用来决定:  向量表是位于RAM还是程序存储器中;  向量表的偏移量。  向量表偏移寄存器的位分配如下:  位[31:30];[6:0]:保留。  位[29]:TBLBASE,向量表基址位于Code(0)或RAM(1)处。  位[28:7]:TBLOFF,向量表的基址偏移域。包括向量表的基址与SRAM或CODE空间的底部的偏移量。  向量表偏移寄存器将向量表定位在CODE或SRAM中。默认情况下复位时为O(CODE空间)。定位时,偏移量必须根据表中异常的数目来对齐,即最小的对齐是32字对齐,可供1 6个外部中断使用。但当N个中断大于16个外部中断时,向量表对齐必须调整为:  向量表对齐=[(N+16)/32]凑整×32 (单位:字)  例如,如果需要21个中断,而由于表的大小是37(加上16个系统异常)个字,向量表对齐值为:[(21+16)/32]凄整×32-64字,所以其可设置的向量表地址为:TBLOFF×64(TBLOFF≥0)。

前言

  嵌入式系统目前正在成为高等院校电子信息工程、通信工程、自动控制、电气自动化、计算机科学与技术等本科专业学生必修课程,而嵌入式系统与应用开发涉及软、硬件及操作系统等复杂的知识,因此,选择一个合适的嵌入式微控制器进行教学,建立一个完善的教学体系,尤其是建立面向实际开发应用的教学体系,是一项非常复杂的系统工程。一个完善的嵌入式系统课程教学体系需要基础知识、实验教学、应用开发多层次的教学过程配合。  为满足高等院校有关专业进行嵌入式系统的需要,针对嵌入式系统特点,我们以stellaris(群星)LM3S系列32位ARM微控制器为核心(LM3S系列微控制器包含运行在50 MHz频率下的ARM Cortex-M3 MCU内核、嵌入式Flash和SRAM、集成的掉电复位和上电复位功能、模拟比较器、10位ADC、SSI、GPIO、看门狗和通用定时器、UART、I2C、USB、运动控制PwM以及正交编码器输入、100 MHz以太网控制器、CAN控制器等,芯片内部固化驱动库)编写了本书。  本书内容丰富实用、层次清晰、叙述详尽,方便教学与自学,目标是用较少的学时使学生掌握嵌入式系统的基础知识,结合实验教学,进入嵌入式系统的领域,为学生进一步地研究、开发和应用嵌入式系统打下一个良好的基础。  本书可以作为高等院校有关专业进行ARM微控制器系统教学的教材,也可以作为全国大学生电子设计竞赛培训教材,还可以作为工程技术人员进行ARM微控制器系统开发与应用的参考书。  本书共分9章。第1章介绍了LM3S系列32位ARM微控制器的类型与主要技术特性,以及LM3S101、LM3S615、LM3S8962和LM3S5749的最小系统设计。第2章介绍了ARMcortex_M3处理器内核的体系结构、编程模型、存储器映射、系统异常(中断)、嵌套向量中断控制器(NVIC)、存储器保护单元(MPu),以及Cortex-M3跟踪系统、JTAG接口电路、IAR EwARM集成开发环境和LM LINK调试器。第3章介绍了Stellaris驱动库的功能、工具链和组织结构,常用的Stellaris驱动库API函数、引导代码、实用函数、错误处理、BootLoader,编译代码所需要的软件和工具链,以及Stellaris驱动库编程示例。

书籍目录

第1章 32位LM3S系列微控制器1.1 LM3S系列微控制器简介1.2 LM3S系列微控制器最小系统设计1.2.1 LM3S101最小系统1.2.2 LM3S615最小系统1.2.3 LM3S8962最小系统1.2.4 LM3S5749最小系统思考题与习题第2章 .ARMCortex-M3体系结构2.1 ARMCortex-M3处理器内核2.1.1 Correx-M3内核的主要特点2.1.2 功能描述2.1.3 Cortex-M3与ARM7的性能比较2.2 编程模型2.2.1 编程模型2.2.2 特权访问和用户访问2.2.3 寄存器2.2.4 数据类型2.2.5 存储器格式2.2.6 Cortex-M3指令集2.3 存储器映射2.3.1 存储器映射、接口和存储范围2.3.2 位操作2.3.3 ROM存储器表2.4 系统异常2.4.1 异常模式2.4.2 异常类型2.4.3 异常优先级2.4.4 异常占先2.4.5 末尾连锁2.4.6 异常迟来2.4.7 异常退出2.4.8 复位2.4.9 其他系统中断2.5 嵌套向量中断控制器2.5.1 NVIC的中断与异常控制的结构2.5.2 NVIC寄存器映射2.5.3 外部中断2.5.4 系统异常2.5.5 系统定时器2.5.6 系统故障2.6 存储器保护单元2.6.1 MPU概述2.6.2 MPU编程器模型2.6.3 MPU访问权限2.6.4 MPU异常中止2.6.5 更新MPU区域2.6.6 中断和更新MPU2.7 调试和跟踪2.7.1 Cortex-M3跟踪系统2.7.2 JTAG接口电路2.7.3 IAREWARM集成开发环境和LMLINK调试器2.8 总线矩阵和接口思考题与习题第3章 Stellaris驱动库3.1 Stellaris驱动库简介3.1.1 驱动程序的功能3.1.2 驱动程序库支持的工具链3.1.3 驱动程序库源代码的组织结构3.2 引导代码3.3 常用的Stellaris驱动库API函数3.4 实用函数3.5 错误处理3.6 BootLoader3.7 编译代码3.7.1 需要的软件3.7.2 用KeilUVision编译3.7.3 用IAREmbedded Workbench编译3.7.4 从命令行编译3.8 工具链3.8.1 编译器3.8.2 调试器3.9 Stellaris驱动库编程示例3.9.1 硬件类型定义3.9.2 通用输入/输出端口思考题与习题第4章 L.M3S系列微控制器的系统控制单元4.1 系统控制寄存器4.1.1 系统控制寄存器映射4.1.2 器件标识和功能寄存器4.2 复位控制4.2.1 复位源4.2.2 RST引脚复位4.2.3 上电复位4.2.4 掉电复位4.2.5 软件复位4.2.6 看门狗定时器复位4.3 片内输出电压调整4.4 时钟控制4.4.1 基础时钟源4.4.2 PLL的频率设置与编程4.5 电源管理4.5.1 处理器的4种模式4.5.2 处理器的睡眠机制4.5.3 与睡眠模式相关的寄存器4.5.4 睡眠模式和深度睡眠模式的设置4.6 系统控制模块的中断4.7 休眠模块4.7.1 休眠模块的特性与结构4.7.2 休眠模块寄存器映射与访问时序4.7.3 休眠模块时钟源4.7.4 休眠模块电池管理4.7.5 休眠模块实时时钟4.7.6 休眠模块电源控制4.7.7 休眠模块中断和状态4.7.8 休眠模块非易失性存储器4.7.9 休眠模块的配置4.7.10 休眠模块的示例程序4.8 通用定时器4.8.1 GPTM工作模式与结构4.8.2 GPTM寄存器映射4.8.3 功能描述4.8.4 GPTM复位条件4.8.5 32位定时器操作模式4.8.6 16位定时器操作模式……第5章 存贮器第6章 输入/输出设备接口第7章 总线接口第8章 网络接口第9章 EasyARM开发板与常用外围模块的连接与编程参考文献

编辑推荐

  本书共分九章,主要介绍了ARM Cortex-M3体系结构,LM3S系列微控制器的系统控制单元,EasyARM开发板与常用外围模块的连接与编程等内容。全书内容丰富实用、层次清晰、叙述详尽,方便教学与自学,目标是用较少的学时使学生掌握嵌入式系统的基础知识,结合实验教学,进入嵌入式系统的领域,为学生进一步地研究、开发和应用嵌入式系统打下一个良好的基础。

作者简介

《32位ARM微控制器系统设计与实践:基于Luminary Micro LM3S系统工程Cortex-M3内核》分9章,系统介绍了Luminary Micro LM3S系列32位ARM微控制器的体系结构、ARM Cottex-M3内核、Stellaris驱动库、系统控制单元、存储器、输入/输出设备接口、总线接口、网络接口以及EasyARM开发板与外围模块的连接与编程。每章都附有思考题与习题,提供免费电子课件。

图书封面


 32位ARM微控制器系统设计与实践下载



发布书评

 
 


 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024