新华书店直发 全新正版 急速发货 开票联系客服
¥ 58.65 4.6折 ¥ 128 全新
库存15件
作者Jsoseph Yiu,吴常玉 张淑 吴卫东
出版社清华大学出版社
ISBN9787302473312
出版时间2018-01
装帧平装
开本16开
定价128元
货号25206073
上书时间2024-10-19
前言
从2011年开始,嵌入式系统技术有了很大的变化,当时本书的版刚好出版。2012年,ARM发布了CortexM0 处理器,并在2014年发布了CortexM7。今天, CortexM处理器应用广泛,其中包括多种微控制器、混合信号以及无线通信芯片。
除了处理器设计,嵌入式软件开发技术也有了一定的进步,随着ARM CortexM微控制器的广泛应用,微控制器软件开发人员在开发方面也越发成熟。同时,随着开发组件的优化,人们也在继续改进电池寿命以及能耗效率。
有了这些变化,微控制器用户需要快速适应新的技术,本书的这一版也有了许多新信息和内容的提升。除了和CortexM0 处理器有关的信息外,还介绍了使用多种常见开发组件的例子。例如,本书详细描述了微控制器低功耗特性的使用,并在一个简单的应用中使用了RTOS。
由于物联网(IoT)受到了越来越多的关注,且正在成为主流,越来越多的人都开始学习嵌入式编程。另外,许多高校在教学方面,也从老式的8位和16位微控制器转向了ARM CortexM等32位处理器。因此,本书中的许多部分都进行了重新编写,并且还加入了许多基本的例子,以满足初学者、学生或业余爱好者的需求。
当然,专业嵌入式软件开发人员、研究人员或半导体产品设计人员等许多读者都希望看到一些更加深入的信息,为了满足这些人的需求,本书还增加了不少技术细节以及高级应用示例。
希望你能从本书中学到东西,并在下一个项目中使用CortexM处理器时找到乐趣。
学习资源下载地址: http://booksite.elsevier.com/9780128032770。
Joseph
目录
译者序1
推荐序3
前言5
致谢7
术语和缩写9
本书约定13
第1章概论
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 CortexM处理器系列
1.2.5ARM CortexM0和CortexM0 处理器简介
1.2.6从CortexM0处理器到CortexM0 处理器
1.2.7CortexM0和CortexM0 处理器的应用
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.1CortexM0和CortexM0 处理器
2.2模块框图
2.3典型系统
2.4什么是ARMv6M架构
2.5CortexM处理器间的软件可移植性
2.6ARM CortexM0和CortexM0 处理器的优势
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.7CortexM0和CortexM0 处理器的应用
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 CortexM编程介绍
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.2CMSISCORE所做的标准化
3.5.3CMSISCORE的组织
3.5.4使用CMSISCORE
3.5.5CMSIS的优势
3.6软件开发的其他信息
第4章架构
4.1ARMv6M架构综述
4.1.1架构的含义
4.1.2ARMv6M架构背景
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.1ifthenelse
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.2CortexM0和CortexM0 处理器中的总线系统
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.2CortexM0和CortexM0 处理器内的异常类型
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
— 没有更多了 —
以下为对购买帮助不大的评价