【STM32图书分享】--《ARM Cortex-M0权威指南》 作者:Joseph Yiu 著 吴常玉 魏军 译+ D( ~3 r: z6 K 出版社:清华大学出版社 出版日期:2013-8-1* l: p6 l) ]# G# c% Y& Y 推荐理由" r# B( t& D; j- O" g4 B 本书是全球首本系统论述ARM Cortex-M0处理器及其编程的图书。本书既有ARM Cortex-M0处理器内核、体系结构及其应用的详尽论述,也有指令集、编译器、软件开发的基本论述,甚至也涵盖如何定位程序代码中的错误和软件移植等方面的知识。本书适合的读者对象包括:嵌入式产品设计工程师、嵌入式软件开发人员、电子爱好者以及学习嵌入式系统课程(ARMCortex-M0)的高年级本科生及研究生等,因此适应性比较广。另外ST公司推出的产品中M0内核的产品逐渐增多,在不久的将来将M0内核的stm32微处理器应用于的产品设计的案例将越来越多,因此作为ST的忠实粉丝,我们有必要十分了解ARM Cortex-M0处理器内核。而这本书就是我所推荐的。% O/ Y" [; f0 q F2 w. [& Z% i 编辑推荐 JosephYiu是英国ARM公司微控制器系统级设计专家,是ARMCortex-M3和Cortex-M0设计者,作者高屋建瓴,创作了基于Cortex-M0的重量级作品——《ARMCortex-M0权威指南》,这也是全球首本系统论述Cortex-M0的内核、体系结构、指令集、编译器、程序设计及软件移植的经典。作者配套提供了大量源代码(可到图书封底网址下载)。本书得到了五大专业机构六位知名专家的鼎力推荐。非常值得开发者珍藏! 作者简介. e: H4 {7 b6 e3 @ Joseph Yiu英国ARM公司资深专家,12年半导体行业从业经历(在ARM公司工作10年之余)。曾参与多个处理器设计项目,包括ARMCortex-M3和Cortex-M0,并参与了多种ARM IP(知识产权)产品的开发。JosephYiu为微控制器系统级设计专家,并涉猎了诸多相关领域,包括ARMCortex-M系列微控制器软件开发、微控制器市场以及片上系统设计技术。其他代表性著作有《The Definitive Guideto the ARM Cortex-M3, 2nd Edition》、《The Definitive Guide to ARMCortex-M3 and Cortex-M4 Processors, 3rdEdition》(中文翻译版即将由清华大学出版社出版发行)。 目录 译者序& d3 U- q+ u) o/ g 推荐序 前言 致谢 本书约定6 V: B* Y8 ~: g/ B8 `- q 缩写术语; V; e0 l9 D9 P( H) {/ j% |9 k- b 第1章绪论 1.1为什么要选择Cortex-M0. O7 K6 l/ a8 u* L9 F/ L 1.1.1能耗效率: E O+ \7 ~" Y 1.1.2代码密度 1.1.3易于使用5 `7 |8 N8 |/ O 1.2Cortex-M0处理器的应用0 ~# N$ k0 @+ m# ?2 H* C 1.3ARM和ARM处理器的背景 1.4Cortex-M0处理器说明和ARM体系结构 1.5ARM处理器和ARM生态系统 1.6开始使用Cortex-M0处理器 1.7本书的结构和资源 第2章Cortex-M0技术综述 2.1Cortex-M0处理器简介 2.2ARM Cortex-M0处理器的特性 2.2.1系统特性7 h% r/ v' {4 ^5 v6 E 2.2.2应用特性 2.2.3调试特性 2.2.4其他特性6 j3 i% j+ \: p+ \7 M 2.3Cortex-M0处理器的优势( ]6 V3 A5 Z( n" w 2.3.1能耗效率- @, Y4 ]- e8 R5 s% c9 R- } 2.3.28位和16位架构的局限性4 ]5 r3 @( l& o( `) ?& f6 B 2.3.3易于使用,软件可移植 2.3.4选择多样化 2.4低功耗应用. K. ?- q, A7 w% C* Y! o& ]) e 2.4.1门数量低5 [) L+ w* z) `( I1 y2 P9 q& B 2.4.2高效率) d# }4 G6 a: G 2.4.3低功耗特性; k2 p& @" o( T. y1 D 2.4.4逻辑单元提升$ ?) g( |: P5 B7 o% n 2.5Cortex-M0的软件可移植性0 b" y }* z1 W3 H' l, }! V- h 第3章体系结构 3.1概述' I% R8 L& G2 t/ y4 c5 e, ` 3.2系统模型& Y& H$ O2 E$ n) _6 h5 g3 ] 3.2.1操作模式和状态( F! e5 q2 h( v5 y, \/ Z 3.2.2寄存器和特殊寄存器 3.2.3R0?R12 3.2.4R13,栈指针(SP)0 J8 o \ s2 d; z2 P8 O 3.2.5R14,链接寄存器(LR) 3.2.6R15,程序计数器(PC)2 c0 [% f( H* A 3.2.7xPSR,组合程序状态寄存器 3.2.8应用程序状态寄存器(APSR)的行为: R/ c% h# {' @2 f( N 3.2.9PRIMASK: 中断屏蔽特殊寄存器' ]- g& n) N& k0 d* R0 [ 3.2.10CONTROL: 特殊寄存器 3.3存储器系统 f3 t5 s+ E% q 3.4栈空间操作 3.5异常和中断& Z+ E: c% M# A9 M; ] 3.6嵌套向量中断控制器(NVIC)* T) F/ G' J% q3 J$ X5 B) x 3.6.1灵活的中断管理; B* I8 V/ [1 C# o' s 3.6.2支持嵌套中断 3.6.3向量化的异常入口# B; L9 w1 j/ o 3.6.4中断屏蔽; s4 P; R$ H+ {2 } 3.7系统控制块(SCB) 调试系统/ @- C' Z& I A 3.8程序映像和启动流程) s: l! E% `/ x# ? 第4章Cortex-M0编程入门: j- T( U0 ?7 g( a 4.1嵌入式系统编程入门" @* M; @/ t# c) u: [! L 4.1.1微控制器是如何启动的& u/ m0 l5 ^, E 4.1.2嵌入式程序设计 4.2输入和输出 4.3开发流程/ s w, \+ b3 D+ R2 e5 H8 x 4.4C编程和汇编编程 4.5什么是程序映像+ o: f5 ^, q2 @ 4.5.1向量表7 j1 k: K" _/ Z) ~ 4.5.2C启动代码* ~1 ^$ c. L% d8 U( X( U 4.5.3程序代码 4.5.4C库代码: `: Z( z" |7 L7 x% r r$ W 4.5.5RAM中的数据 4.6C编程: 数据类型 4.7用C语言操作外设 4.8Cortex微控制器软件接口标准(CMSIS)7 _/ F: W6 k4 V" c, l) e$ r% q5 b- w 4.8.1CMSIS介绍" p' F& f+ I" @' Y( H 4.8.2CMSIS中有什么是标准化的 4.8.3CMSIS的组织结构5 W) g6 X2 X1 I" ` 4.8.4使用CMSIS! x, {7 c$ `% F" B; H+ { 4.9CMSIS的优势 第5章指令集$ J8 B4 r8 A7 y; D 5.1ARM和Thumb指令集的背景1 K4 q! O N1 T1 L* m 5.2汇编基础 5.2.1汇编语法一览 5.2.2后缀的使用 5.2.3Thumb代码和统一汇编语言(UAL) 5.2.4指令列表' ~# u3 B0 ~, [ 5.2.5处理器内移动数据 5.2.6存储器访问, \+ A7 O; P' i, H4 g 5.2.7栈空间访问 5.2.8算术运算 5.2.9逻辑运算 5.2.10移位和循环操作 5.2.11展开和顺序反转操作 5.2.12程序流控制5 {1 M9 d( y d% n; m 5.2.13存储器屏障指令7 q: J$ N* G7 Y: `; ? 5.2.14异常相关指令! c2 Q5 {. ^1 m0 z5 I _$ W 5.2.15休眠模式特性相关指令 5.2.16其他指令 5.3伪指令, J$ W# D9 |. h5 V" i 第6章指令集使用实例 6.1概述' K( X- p' N$ r# U& Q" y 6.2程序控制 6.2.1If?Else+ T' k3 l8 [$ \/ L 6.2.2循环/ R0 E0 X$ t" h- k) h+ l 6.2.3进一步了解跳转指令) m/ q* A3 }5 I4 y2 U3 g3 } 6.2.4跳转条件的典型用法 6.2.5函数调用和函数返回 6.2.6跳转表 6.3数据访问 6.3.1简单数据访问 6.3.2使用存储器访问指令的例子/ R. G! O5 ^/ n0 o 6.4数据类型转换6 y* T8 t2 S3 b' K- \ 6.4.1数据大小的转换 6.4.2大小端转换 6.5数据处理: Y0 i: o$ _' p D7 q$ D0 c 6.5.164位/128位加法 6.5.264位/128位减法 6.5.3整数除法4 H% B( m W. ` 6.5.4无符号整数开方根+ p/ c- l4 H0 v! o& ^ 6.5.5位和位域运算) [# b4 U$ z1 l; l* q- O 第7章存储器系统 7.1概述 7.2存储器映射 7.3程序存储器,Boot Loader和存储器重映射& X2 Q0 z: o% J; D6 ~# z; x4 T* z 7.4数据存储器2 W. i9 n% s( N/ K D0 s 7.5支持小端和大端! ^8 f+ O$ ? N- m+ r 7.5.1数据类型' n0 q9 _$ e# P. i 7.5.2硬件行为对编程的影响3 G" Z" C4 T; E. R& |( I 7.5.3数据对齐 7.5.4访问非法地址 7.5.5多寄存器加载和存储指令的使用' J" L- r' N' n1 N/ Z 7.6存储器属性 第8章异常和中断 8.1什么是异常和中断 8.2Cortex-M0处理器的异常类型- L- |0 E @$ o$ b" ~" k) G 8.2.1不可屏蔽中断(NMI) 8.2.2硬件错误$ }, @- x0 Q8 P/ V+ `+ y h 8.2.3SVC(请求管理调用) 8.2.4PendSV(可挂起的系统调用) 8.2.5系统节拍 8.2.6中断8 w- Z$ U \, z 8.3异常优先级定义 8.4向量表# i. @1 C- S, M1 H# t 8.5异常流程概述 8.5.1接受异常请求 8.5.2压栈和出栈 8.5.3异常返回指令! z) h' ^. O, _ h 8.5.4末尾连锁 z3 D$ D, G, O& R& g& o& I8 O- g 8.5.5延迟到达# Y& }* i$ u# t& x 8.6EXC_RETURN 8.7异常入口流程的细节 8.7.1压栈% X4 d1 B( z! a/ i/ ~ 8.7.2取出向量并更新PC 8.7.3寄存器更新; x" ^) X- h, @0 C9 ]- a6 `! \ 8.8异常退出流程的细节4 \, G; o) l' j# w9 r# M, \ 8.8.1寄存器出栈 8.8.2从返回地址取值并执行& {% G3 T1 o2 S/ ? 第9章中断控制和系统控制 9.1NVIC和系统控制块特性2 F9 R+ `/ s4 t3 [- A5 P5 u, e 9.2中断使能和清除使能 9.3中断挂起和清除挂起 9.4中断优先级 A9 P; g0 U' h 9.5中断控制的通用汇编代码8 | J& e8 [: A; O. E 9.5.1使能和禁! U3 E! s$ F) }# p 媒体评论: G' C* l4 \* j+ z$ v "对于微控制器使用者来说,现在是让人非常兴奋的时期,许多供应商推出的ARMCortex-M设备的种类越来越多,而且应用范围也越来越广泛。许多使用8位和16位控制器的用户转而使用基于ARMCortex-M的设备,有了对ARMCortex-M0的介绍,他们都很惊讶这些设备这么容易使用而且32位机的性价比会这么高。因此,我很荣幸JosephYiu为用户写了这样一份ARM Cortex-M0设备指南,作为之前的8位机用户以及ARMCortex-M家族的权威,Joseph在指导新用户接触ARMCortex微控制器,以及给高级用户分享Cortex-M0的细节知识方面,确实有独到之处。 ——Dominic Pajak博士 (ARM Cortex-M0产品经理) + C% L! e+ s2 F" r& C' F 《ARM Cortex-M0权威指南》的作者JosephYiu在ARM公司剑桥总部的处理器部门担任MCU技术专家多年,他对Cortex-M系列的理解正如书名所述,可谓权威。因此本书的英文版一经推出即在使用Cortex-M0处理器的技术人员中广受好评和追捧。书中深度解析了Cortex-M0处理器的各个技术方面及应用开发,提供了很多高级技术细节,并配套了大量作者编写的源码供理解和参考,堪称内核分析与实战开发的完美结合。本书的中文版经过清华出版社和译者的精心工作后,现在终于推出,相信对于高校师生、嵌入式研发人员和爱好者、甚至半导体公司的技术人员,本书都是一本不可多得的宝典!1 `# X, l5 A# k5 t ——时昕博士(ARM大中华区大学计划)0 I( B2 u) ]0 A! A X- J1 G 《ARM Cortex-M0权威指南》的作者JosephYiu是ARM公司微控制器系统级设计专家,本书的权威性毋庸置疑!该书首次揭秘Cortex-M0的内核,全面剖析介绍其体系结构与开发方法,并不吝篇幅介绍从其他架构处理器进行软件移植的方法,包括ARM7TDMI、ARMCortex-M3以及8051微控制器移植的实例。,并配套提供作者亲自编写的大量实例源码,堪称一本Cortex-M0芯片内核分析与编程实战的完美学习解决方案!必将成为广大嵌入式产品设计工程师、嵌入式软件开发人员、电子爱好者以及嵌入式课程学习者的阅读“圣经”!: K {# Z& }+ z9 o! I7 y ——与非网 创始人(苏公雨)3 o# [- N- \9 C$ t; y - {; X: U- C- O$ d/ q ARM Cortex-M0权威指南》终于有了中文版,这是学习ARMCortex-M0人的福音!该书深度剖析了系统模型、指令集以及中断处理,全面把握ARMCortex-M0的工作方式;综合运用汇编语言和C语言实现的丰富的ARMCortex-M0编程案例,便于读者快速动手实践;并系统论述软件的开发流程,并以常用软件开发工具为例,介绍程序设计的实战案例;涵盖如何定位程序代码中的bug和软件移植等方面的知识;尤其适合真正想从事Cortex-M0系统设计实战的开发人员阅读学习。 ——电子发烧友网站(陈峰) * ?9 K0 e, K! o3 I" k; b# u 《ARMCortex-M0权威指南》细致入微地介绍了ARM公司Cortex-M0处理器。本书最大的亮点就是讲述了如何将从基于传统MCU的嵌入式设计过渡到基于Cortex-M0的嵌入式设计。该书的出版将极大推动Cortex-M0在中国嵌入式设计领域的应用,为中国“智造”添砖加瓦。! Z$ y7 e1 x. q. }( ~: S$ J ——何宾博士(畅销书《Xilinx FPGA设计权威指南》作者) ) ]6 w3 q9 Y# @: i/ w3 V 当当网购买链接product.dangdang.com/23323661.html#catalog9 l3 J: a' P' o* F e 亚马逊购买链接www.amazon.cn/ARM-Cortex-M0权威指南-Joseph-Yiu/dp/B00ESCGQD6/ref=sr_1_1$ ]) Q! r2 U; L" n https://www.stmcu.org.cn/file:///C:UsersAdministratorAppDataRoamingTencentUsers953478916QQWinTempRichOle5%YE@P$F8DD7YD9BODP)4T6.jpg |
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》
回复:【STM32图书分享】--《ARM Cortex-M0权威指南》
32个赞!!多谢楼主推荐啦,我已加到推荐书单中
哇。。。谢谢啦,哈哈,会不会有图书相赠啊?. ~, V5 n |9 I% ^0 Q
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》