发表于2024-12-28
ARM Cortex-M0与Cortex-M0+指南(第2版) Jsoseph Yiu,吴 pdf epub mobi txt 电子书 下载
基本信息
书名:ARM Cortex-M0与Cortex-M0+指南(第2版)
定价:128.00元
作者:Jsoseph Yiu,吴常玉 张淑 吴卫东
出版社:清华大学出版社
出版日期:2018-01-01
ISBN:9787302473312
字数:
页码:
版次:1
装帧:平装-胶订
开本:16开
商品重量:0.4kg
编辑推荐
本书是系统论述ARM Cortex-M0与Cortex-M0 处理器及其编程的图书,作者Joseph Yiu是英国ARM公司的主管工程师,著有久负盛名的畅销图书《ARM Cortex-M3与Cortex-M4指南(第3版)》(清华大学出版社)。本书适合的读者对象包括:嵌入式产品设计工程师、嵌入式软件开发人员、电子爱好者以及学习嵌入式系统课程(ARM Cortex-M0与Cortex-M0 )的高年级本科生及研究生等。作者提供了详实的配书工程源文件(见封面下载地址)。l 深度剖析系统模型、指令集以及中断处理,以利于理解ARM Cortex-M0与Cortex-M0 的工作方式;l 综合运用汇编语言和C语言实现的丰富的ARM Cortex-M0与Cortex-M0 编程案例,有助于快速动手实践;l 系统论述软件的开发流程,并以常用软件开发工具为例,介绍程序设计的实例及如何定位程序代码问题和软件移植等方面的知识;l 全面揭秘从其他架构处理器进行软件移植的方法,包括ARM7TDMI、ARM Cortex-M3以及8051微控制器移植的实例;l 深入解析Cortex-M0和Cortex-M0 处理器架构特性的差异(如非特权执行等级、向量表重定位);l 细致分析了Cortex-M0 处理器的优势,比如新的单周期I/O接口、更优的能耗效率、更高的性能以及微跟踪缓冲(MTB)特性;l 详尽介绍了软件开发工具方面的新内容,如Keil MDK版本5、IAR Embedded Workbench for ARM、ARM gcc、CooCox及mbed使用示例;l 提供了基于CMSIS-RTOS API的Keil RTX实时操作系统的新实例;l 提供了Cortex-M0和Cortex-M0 微控制器使用实例,包括Freescale Freedom板(FRDM-KL25Z)、STM32F0 Discovery、STM32L0 Discovery和NXP LPC1114(DIP封装)面包板等。
内容提要
本书是ARM公司微控制器系统级设计专家Joseph Yiu的作品。本书全面系统论述Cortex-M0与Cortex-M0 的内核、体系结构、指令集、编译器、程序设计及软件移植。全书共23章,近700页。深度剖析系统模型、指令集以及中断处理,以利于理解ARM Cortex-M0与Cortex-M0 的工作方式;综合运用汇编语言和C语言实现的丰富的ARM Cortex-M0与Cortex-M0 编程案例,有助于快速动手实践;系统论述软件的开发流程,并以常用软件开发工具为例,介绍程序设计的实例及如何定位程序代码问题和软件移植等方面的知识;全面揭秘从其他架构处理器进行软件移植的方法,包括ARM7TDMI、ARM Cortex-M3以及8051微控制器移植的实例;深入解析Cortex-M0和Cortex-M0 处理器架构特性的差异(如非特权执行等级、向量表重定位);细致分析了Cortex-M0 处理器的优势,比如新的单周期I/O接口、更优的能耗效率、更高的性能以及微跟踪缓冲(MTB)特性;详尽介绍了软件开发工具方面的新内容,如Keil MDK版本5、IAR Embedded Workbench for ARM、ARM gcc、CooCox及mbed的实例。另外,为便于读者学习,全书提供了完整的案例源代码!
目录
目录
译者序1
推荐序3
前言5
致谢7
术语和缩写9
本书约定13
章概论
1.1欢迎来到嵌入式处理器的世界
1.1.1处理器有什么作用
1.1.2处理器、CPU、内核、微控制器及其命名
1.1.3嵌入式系统的编程
1.1.4学习微控制器需要了解什么
1.2理解处理器的类型
1.2.1处理器为什么有很多种类
1.2.2ARM处理器家族概述
1.2.3模糊边界
1.2.4ARM Cortex�睲处理器系列
1.2.5ARM Cortex�睲0和Cortex�睲0 处理器简介
1.2.6从Cortex�睲0处理器到Cortex�睲0 处理器
1.2.7Cortex�睲0和Cortex�睲0 处理器的应用
1.3微控制器内部有什么
1.3.1微控制器内常见部件
1.3.2微控制器应用的处理器的特点
1.3.3硅片技术
1.4ARM介绍
1.4.1ARM生产芯片吗
1.4.2ARM的产品是什么
1.4.3芯片厂商为什么不设计自己的处理器
1.4.4ARM生态系统有什么特殊之处
1.5ARM处理器和ARM微控制器方面的资源
1.5.1ARM主页
1.5.2微控制器厂商提供的资源
1.5.3工具厂商提供的资源
1.5.4其他资源
第2章技术综述
2.1Cortex�睲0和Cortex�睲0 处理器
2.2模块框图
2.3典型系统
2.4什么是ARMv6�睲架构
2.5Cortex�睲处理器间的软件可移植性
2.6ARM Cortex�睲0和Cortex�睲0 处理器的优势
2.6.1低功耗和能耗效率
2.6.2高代码密度
2.6.3低中断等待和确定行为
2.6.4易于使用
2.6.5系统级特性和OS支持特性
2.6.6调试特性
2.6.7可配置性、灵活性和可扩展性
2.6.8软件可移植性和可重用性
2.6.9产品选择的多样性
2.6.10生态系统支持
2.7Cortex�睲0和Cortex�睲0 处理器的应用
2.7.1微控制器
2.7.2传感器
2.7.3传感器集线器
2.7.4电源管理IC
2.7.5ASSP和ASIC
2.7.6片上系统中的子系统
2.8为什么要在微控制器应用中使用32位处理器
2.8.1性能
2.8.2代码密度
2.8.3ARM架构的其他优势
2.8.4软件可重用性
第3章嵌入式软件开发介绍
3.1欢迎进入嵌入式系统编程
3.2基本概念
3.2.1复位
3.2.2时钟
3.2.3电压
3.2.4输入和输出
3.2.5嵌入式软件程序流程介绍
3.2.6编程语言选择
3.3ARM Cortex�睲编程介绍
3.3.1C编程数据类型
3.3.2用C访问外设
3.3.3程序映像内有什么
3.3.4SRAM中的数据
3.3.5微控制器启动时会发生什么
3.4软件开发流程
3.5Cortex微控制器软件接口标准
3.5.1CMSIS介绍
3.5.2CMSIS�睠ORE所做的标准化
3.5.3CMSIS�睠ORE的组织
3.5.4使用CMSIS�睠ORE
3.5.5CMSIS的优势
3.6软件开发的其他信息
第4章架构
4.1ARMv6�睲架构综述
4.1.1架构的含义
4.1.2ARMv6�睲架构背景
4.2编程模型
4.2.1操作模式和状态
4.2.2寄存器和特殊寄存器
4.2.3APSR的行为
4.3存储器系统
4.3.1概述
4.3.2单周期I/O接口
4.3.3存储器保护单元
4.4栈存储操作
4.5异常和中断
4.6嵌套向量中断控制器
4.6.1灵活的中断管理
4.6.2嵌套中断支持
4.6.3向量异常入口
4.6.4中断屏蔽
4.7系统控制块
4.8调试系统
4.9程序映像和启动流程
第5章指令集
5.1指令集是什么
5.2ARM和Thumb指令集背景
5.3汇编基础
5.3.1汇编语法一览
5.3.2后缀的使用
5.3.3统一汇编语言(UAL)
5.4指令列表
5.4.1处理器内传送数据
5.4.2存储器访问
5.4.3栈存储访问
5.4.4算术运算
5.4.5逻辑运算
5.4.6移位和循环移位运算
5.4.7展开和顺序反转运算
5.4.8程序流控制
5.4.9存储器屏障指令
5.4.10异常相关指令
5.4.11休眠模式特性相关指令
5.4.12其他指令
5.5伪指令
第6章指令使用示例
6.1概述
6.2程序控制
6.2.1if�瞭hen�瞖lse
6.2.2循环
6.2.3跳转指令
6.2.4跳转指令的典型用法
6.2.5函数调用和函数返回
6.2.6跳转表
6.3数据访问
6.3.1简单数据访问
6.3.2使用存储器访问指令的例子
6.4数据类型转换
6.4.1数据大小的转换
6.4.2大小端转换
6.5数据处理
6.5.164位/128位加法
6.5.264位/128位减法
6.5.3整数除法
6.5.4无符号整数开方根
6.5.5位和位域计算
第7章存储器系统
7.1微控制器中的存储器系统
7.2Cortex�睲0和Cortex�睲0 处理器中的总线系统
7.3存储器映射
7.3.1概述
7.3.2系统级设计
7.4程序存储器、Bootloader和存储器重映射
7.4.1程序存储器和Bootloader
7.4.2存储器映射
7.5数据存储器
7.6小端和大端支持
7.7数据类型
7.8存储器属性和存储器访问权限
7.9硬件行为对编程的影响
7.9.1数据对齐
7.9.2访问非法地址
7.9.3多加载和存储指令的使用
7.9.4等待状态
第8章异常和中断
8.1异常和中断的含义
8.2Cortex�睲0和Cortex�睲0 处理器内的异常类型
8.2.1概述
8.2.2不可屏蔽中断
8.2.3HardFault
8.2.4SVC
8.2.5可挂起的系统调用
8.2.6系统节拍
8.2.7中断
8.3NVIC简介
8.4异常优先级定义
8.5向量表
8.6异常流程概述
8.6.1接受异常
8.6.2压栈和出栈
8.6.3异常返回指令
8.6.4末尾连锁
8.6.5延迟到达
8.7EXC_RETURN
8.8用于中断控制的NVIC控制寄存器
8.8.1NVIC控制寄存器概述
8.8.2中断使能和清除使能
8.8.3中断挂起和清除挂起
8.8.4中断优先级
8.9异常屏蔽寄存器(PRIMASK)
8.10中断输入和挂起行为
8.10.1简单中断处理
8.10.2简单的脉冲中断处理
8.10.3中断挂起状态在得到服务前取消
8.10.4外设在确认中断请求时清除挂起状态
8.10.5ISR完成后中断请求保持为高
8.10.6进入ISR前产生了多个中断请求脉冲
8.10.7在ISR执行期间产生了中断请求脉冲
8.10.8已禁止中断的中断请求确认
8.11异常入口流程
8.11.1压栈
8.11.2取出向量并更新PC
8.11.3更新寄存器
8.12异常退出流程
8.12.1寄存器出栈
8.12.2从返回地址取指并执行
8.13中断等待
第9章系统控制和低功耗特性
9.1系统控制寄存器简介
9.2SCB中的寄存器
9.2.1SCB中的寄存器列表
9.2.2CPU ID寄存器
9.2.3用于系统异常管理的控制寄存器
9.2.4向量表偏移寄存器
9.2.5应用中断和复位控制寄存器
9.2.6系统控制寄存器
9.2.7配置和控制寄存器
9.2.8系统处理控制和状态寄存器
9.3使用自复位特性
9.4使用向量表重定位特性
9.5低功耗特性
9.5.1概述
9.5.2休眠模式
9.5.3等待事件和等待中断
9.5.4唤醒条件
9.5.5退出时休眠特性
9.5.6唤醒中断控制器
0章操作系统支持特性
10.1支持OS的特性概述
10.2嵌入式系统的操作系统介绍
10.3SysTick定时器
10.3.1SysTick寄存器
10.3.2设置SysTick
10.3.3SysTick用于时间测量
10.3.4将SysTick用作单发定时器
10.4进程栈和PSP
10.5SVCall异常
10.6PendSV
10.7高级话题: 在编程中使用SVC和PendSV
10.7.1使用SVC异常
10.7.2使用PendSV异常
10.8高级话题: 实际的 ARM Cortex-M0与Cortex-M0+指南(第2版) Jsoseph Yiu,吴 电子书 下载 mobi epub pdf txt
ARM Cortex-M0与Cortex-M0+指南(第2版) Jsoseph Yiu,吴 pdf epub mobi txt 电子书 下载