
【STM32图书分享】--《ARM Cortex-M0权威指南》0 T2 j4 P# K5 f; @) _: y 作者:Joseph Yiu 著 吴常玉 魏军 译 出版社:清华大学出版社 出版日期:2013-8-1 ![]() 推荐理由 本书是全球首本系统论述ARM Cortex-M0处理器及其编程的图书。本书既有ARM Cortex-M0处理器内核、体系结构及其应用的详尽论述,也有指令集、编译器、软件开发的基本论述,甚至也涵盖如何定位程序代码中的错误和软件移植等方面的知识。本书适合的读者对象包括:嵌入式产品设计工程师、嵌入式软件开发人员、电子爱好者以及学习嵌入式系统课程(ARMCortex-M0)的高年级本科生及研究生等,因此适应性比较广。另外ST公司推出的产品中M0内核的产品逐渐增多,在不久的将来将M0内核的stm32微处理器应用于的产品设计的案例将越来越多,因此作为ST的忠实粉丝,我们有必要十分了解ARM Cortex-M0处理器内核。而这本书就是我所推荐的。 N+ [9 d/ d0 ? 编辑推荐 JosephYiu是英国ARM公司微控制器系统级设计专家,是ARMCortex-M3和Cortex-M0设计者,作者高屋建瓴,创作了基于Cortex-M0的重量级作品——《ARMCortex-M0权威指南》,这也是全球首本系统论述Cortex-M0的内核、体系结构、指令集、编译器、程序设计及软件移植的经典。作者配套提供了大量源代码(可到图书封底网址下载)。本书得到了五大专业机构六位知名专家的鼎力推荐。非常值得开发者珍藏! 作者简介 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》(中文翻译版即将由清华大学出版社出版发行)。1 g8 L& ]; P8 b8 _6 Z 目录 译者序 推荐序 前言 致谢& I7 c# d9 n2 P* E" X 本书约定" U8 ], I: d5 W6 @3 d! u0 j 缩写术语- O }9 M3 c- x3 }- N6 I$ u 第1章绪论; _8 n3 ^5 i# H6 F 1.1为什么要选择Cortex-M0 1.1.1能耗效率 1.1.2代码密度 1.1.3易于使用; o4 Q. ^+ ^8 u" e, m 1.2Cortex-M0处理器的应用 h) Y* R7 l# d: p2 Z7 Q* Q3 i 1.3ARM和ARM处理器的背景 f Z1 J0 c, h8 p8 l 1.4Cortex-M0处理器说明和ARM体系结构. x+ J: t* m( ]8 y0 u8 t+ Y3 ? 1.5ARM处理器和ARM生态系统7 _( [6 p" C' Y( @* e/ Q 1.6开始使用Cortex-M0处理器& t% U7 Z* e5 ^6 ~9 U9 h2 o* r% @ 1.7本书的结构和资源 第2章Cortex-M0技术综述6 @4 }. V, Q% V* x4 h 2.1Cortex-M0处理器简介 2.2ARM Cortex-M0处理器的特性! U) y3 W8 s. x* O% ]) N 2.2.1系统特性" a H' {" j1 ] ]/ N& G 2.2.2应用特性: `3 _2 B( K1 W: S 2.2.3调试特性# z# b) X7 h% S1 I 2.2.4其他特性 2.3Cortex-M0处理器的优势 2.3.1能耗效率# {1 ^5 [8 q, X, Z$ T 2.3.28位和16位架构的局限性; x7 {3 v( |4 ^7 _0 T5 ~/ t5 ?3 z 2.3.3易于使用,软件可移植5 H( ?# B$ d1 ?2 C5 h 2.3.4选择多样化! _. r7 m! M+ v/ o1 ^6 @& `( F 2.4低功耗应用 2.4.1门数量低 2.4.2高效率 2.4.3低功耗特性 2.4.4逻辑单元提升 2.5Cortex-M0的软件可移植性 第3章体系结构3 c J# ?. ~: c8 ~7 D 3.1概述4 i4 M2 D* p" e 3.2系统模型8 ^5 X# O3 Z Y3 k. F; o) Y; u 3.2.1操作模式和状态1 u3 N! y% @$ F; Z; c 3.2.2寄存器和特殊寄存器 3.2.3R0?R12 3.2.4R13,栈指针(SP) 3.2.5R14,链接寄存器(LR) 3.2.6R15,程序计数器(PC). F% _ V2 X- ^6 D x 3.2.7xPSR,组合程序状态寄存器 3.2.8应用程序状态寄存器(APSR)的行为! ^+ {& A* Y+ p" [ 3.2.9PRIMASK: 中断屏蔽特殊寄存器, I2 o2 K; m) a6 k+ M/ H! |' Q 3.2.10CONTROL: 特殊寄存器2 G3 ?, x4 D* I; Z! f; s; Q 3.3存储器系统- k( w9 |0 a3 ]' g! h* L 3.4栈空间操作 3.5异常和中断 3.6嵌套向量中断控制器(NVIC) 3.6.1灵活的中断管理7 o* J0 H: p! i3 _) b5 s 3.6.2支持嵌套中断, `6 p7 _- z T0 H) D$ l! a 3.6.3向量化的异常入口- l+ c, V: f" i- _ 3.6.4中断屏蔽 3.7系统控制块(SCB) 调试系统 3.8程序映像和启动流程0 j: [# m; K7 X) R9 `3 j ^ 第4章Cortex-M0编程入门 4.1嵌入式系统编程入门 4.1.1微控制器是如何启动的 4.1.2嵌入式程序设计 4.2输入和输出 4.3开发流程# H2 H2 ~2 n% O 4.4C编程和汇编编程( N- U" V0 V* Q6 ~ 4.5什么是程序映像9 u* q$ G9 Q) O( [7 O0 X 4.5.1向量表 4.5.2C启动代码 4.5.3程序代码0 Q- Y s4 z. |# J* h* w! |, c, h 4.5.4C库代码 4.5.5RAM中的数据 4.6C编程: 数据类型 4.7用C语言操作外设 4.8Cortex微控制器软件接口标准(CMSIS) 4.8.1CMSIS介绍' K3 e& o6 a- j' n 4.8.2CMSIS中有什么是标准化的- ^" l C6 X9 k" C% U- o5 B8 S8 k M 4.8.3CMSIS的组织结构 4.8.4使用CMSIS3 C, O/ O' x7 K0 O8 R ] 4.9CMSIS的优势' e- T4 `3 n% x2 { v8 x R3 n6 G% ] 第5章指令集8 g- \4 e: G# t" ] 5.1ARM和Thumb指令集的背景7 [& Q" U1 T4 ]( F' W) k 5.2汇编基础 5.2.1汇编语法一览 5.2.2后缀的使用 5.2.3Thumb代码和统一汇编语言(UAL) 5.2.4指令列表4 _5 E" g% R n/ ?1 u5 v" F 5.2.5处理器内移动数据9 |. s& }* i0 ^+ u/ O 5.2.6存储器访问: u' o7 I- r; d4 v2 c7 \$ _ 5.2.7栈空间访问2 P* l6 S4 e& ?5 T 5.2.8算术运算 5.2.9逻辑运算 5.2.10移位和循环操作7 R4 D( C7 M- ?- k! A0 ] 5.2.11展开和顺序反转操作7 L9 @3 V; g; ?" t# m7 i 5.2.12程序流控制% U5 _. W; {- P) w' O1 R 5.2.13存储器屏障指令( A+ w. D2 A7 Y% d* } 5.2.14异常相关指令1 {3 ?% ]5 J m: m# ~$ c- P 5.2.15休眠模式特性相关指令 5.2.16其他指令 5.3伪指令5 U+ O2 e$ S& G4 K) Q( g1 X 第6章指令集使用实例& `0 q- D5 P. g) f+ M 6.1概述8 w R) @& G- |8 s3 l 6.2程序控制 6.2.1If?Else% [) l( f2 h' E, U$ p 6.2.2循环3 _$ v3 d! e9 q0 }8 J 6.2.3进一步了解跳转指令 6.2.4跳转条件的典型用法 6.2.5函数调用和函数返回* ?' O( u) g* Y; N2 U# x% G) K 6.2.6跳转表 6.3数据访问+ _5 N4 t2 g7 k' Y$ i) U8 w/ | 6.3.1简单数据访问, P) m' B% T" W2 t+ n5 m) v5 O 6.3.2使用存储器访问指令的例子7 V# y2 j- C# |2 h. o( Z, n6 T 6.4数据类型转换0 T3 y5 b) }6 v4 ~$ a+ m" @ 6.4.1数据大小的转换) ]" ]; `4 N1 w2 j$ O+ B# Z( L 6.4.2大小端转换8 l6 W1 N2 f+ T8 [/ L0 l 6.5数据处理 6.5.164位/128位加法: H( F& a% E) F2 d' q p" i& r 6.5.264位/128位减法 I* m4 O+ {& r6 @( ^% m/ s; o$ w 6.5.3整数除法3 h' D- x9 C( Z5 c9 {* d 6.5.4无符号整数开方根 6.5.5位和位域运算$ s5 j0 G7 E3 r: U 第7章存储器系统% I2 `! {; o4 T5 R9 A7 V, T6 P! S' a 7.1概述9 ~/ s5 j/ D8 {. W6 \ 7.2存储器映射 7.3程序存储器,Boot Loader和存储器重映射6 M' o( S3 b+ J, S0 D7 @* m4 o' b 7.4数据存储器 7.5支持小端和大端3 A+ D; B% y6 j4 `/ ]! D4 I 7.5.1数据类型 7.5.2硬件行为对编程的影响 7.5.3数据对齐 7.5.4访问非法地址 7.5.5多寄存器加载和存储指令的使用3 Y+ {. u0 Z) x2 G- Q, B 7.6存储器属性 第8章异常和中断; R3 _6 e9 K- C. e, j 8.1什么是异常和中断 8.2Cortex-M0处理器的异常类型 8.2.1不可屏蔽中断(NMI)0 ^6 o$ R3 F+ j 8.2.2硬件错误$ U" s m- p- u5 J; @ 8.2.3SVC(请求管理调用) 8.2.4PendSV(可挂起的系统调用) 8.2.5系统节拍 8.2.6中断 8.3异常优先级定义! ^! w+ @& y6 i7 U. O& }, a 8.4向量表# z' q$ a% \5 v$ T8 z 8.5异常流程概述 8.5.1接受异常请求2 l# M2 `1 u0 M: I1 p k/ S 8.5.2压栈和出栈 8.5.3异常返回指令 8.5.4末尾连锁 8.5.5延迟到达# [7 n$ M7 d! N" ?# o 8.6EXC_RETURN 8.7异常入口流程的细节+ X S- J; j) y& `1 _6 o 8.7.1压栈5 A. ?, ?) E; G& F 8.7.2取出向量并更新PC. N, Q# s* {8 d. \# ]/ c5 i2 ^+ P- r* c 8.7.3寄存器更新 8.8异常退出流程的细节 8.8.1寄存器出栈& C0 t7 r2 ~, J8 u% }1 M! y. b 8.8.2从返回地址取值并执行8 _, R* ]( ]; I% e, |9 Q 第9章中断控制和系统控制 9.1NVIC和系统控制块特性 9.2中断使能和清除使能 9.3中断挂起和清除挂起 9.4中断优先级- k! f8 T# _# ~ L3 N1 D Z 9.5中断控制的通用汇编代码& b9 T0 |$ |( C: f- [# r$ Q 9.5.1使能和禁3 W/ `4 B- p8 x4 r. F. k 媒体评论 "对于微控制器使用者来说,现在是让人非常兴奋的时期,许多供应商推出的ARMCortex-M设备的种类越来越多,而且应用范围也越来越广泛。许多使用8位和16位控制器的用户转而使用基于ARMCortex-M的设备,有了对ARMCortex-M0的介绍,他们都很惊讶这些设备这么容易使用而且32位机的性价比会这么高。因此,我很荣幸JosephYiu为用户写了这样一份ARM Cortex-M0设备指南,作为之前的8位机用户以及ARMCortex-M家族的权威,Joseph在指导新用户接触ARMCortex微控制器,以及给高级用户分享Cortex-M0的细节知识方面,确实有独到之处。$ }/ ]* [ _/ S7 {3 J- i" v ——Dominic Pajak博士 (ARM Cortex-M0产品经理) 《ARM Cortex-M0权威指南》的作者JosephYiu在ARM公司剑桥总部的处理器部门担任MCU技术专家多年,他对Cortex-M系列的理解正如书名所述,可谓权威。因此本书的英文版一经推出即在使用Cortex-M0处理器的技术人员中广受好评和追捧。书中深度解析了Cortex-M0处理器的各个技术方面及应用开发,提供了很多高级技术细节,并配套了大量作者编写的源码供理解和参考,堪称内核分析与实战开发的完美结合。本书的中文版经过清华出版社和译者的精心工作后,现在终于推出,相信对于高校师生、嵌入式研发人员和爱好者、甚至半导体公司的技术人员,本书都是一本不可多得的宝典! ——时昕博士(ARM大中华区大学计划) ; r/ k9 W: m" U! Z* G 《ARM Cortex-M0权威指南》的作者JosephYiu是ARM公司微控制器系统级设计专家,本书的权威性毋庸置疑!该书首次揭秘Cortex-M0的内核,全面剖析介绍其体系结构与开发方法,并不吝篇幅介绍从其他架构处理器进行软件移植的方法,包括ARM7TDMI、ARMCortex-M3以及8051微控制器移植的实例。,并配套提供作者亲自编写的大量实例源码,堪称一本Cortex-M0芯片内核分析与编程实战的完美学习解决方案!必将成为广大嵌入式产品设计工程师、嵌入式软件开发人员、电子爱好者以及嵌入式课程学习者的阅读“圣经”!* V6 @' z9 D+ K9 ]' J% O ——与非网 创始人(苏公雨)+ d+ V6 d P \) r# Y) h + M! N1 @1 Y+ X3 P5 M% n ARM Cortex-M0权威指南》终于有了中文版,这是学习ARMCortex-M0人的福音!该书深度剖析了系统模型、指令集以及中断处理,全面把握ARMCortex-M0的工作方式;综合运用汇编语言和C语言实现的丰富的ARMCortex-M0编程案例,便于读者快速动手实践;并系统论述软件的开发流程,并以常用软件开发工具为例,介绍程序设计的实战案例;涵盖如何定位程序代码中的bug和软件移植等方面的知识;尤其适合真正想从事Cortex-M0系统设计实战的开发人员阅读学习。 ——电子发烧友网站(陈峰) X4 i6 n9 r2 b & G: `/ e; {, [! I8 a+ M, k 《ARMCortex-M0权威指南》细致入微地介绍了ARM公司Cortex-M0处理器。本书最大的亮点就是讲述了如何将从基于传统MCU的嵌入式设计过渡到基于Cortex-M0的嵌入式设计。该书的出版将极大推动Cortex-M0在中国嵌入式设计领域的应用,为中国“智造”添砖加瓦。 ——何宾博士(畅销书《Xilinx FPGA设计权威指南》作者)+ C f& e3 ~3 |5 l- w- E. K5 M1 f2 [ 8 `6 L& _8 I* z, x9 ^ 当当网购买链接product.dangdang.com/23323661.html#catalog 亚马逊购买链接www.amazon.cn/ARM-Cortex-M0权威指南-Joseph-Yiu/dp/B00ESCGQD6/ref=sr_1_15 T( A: X" h/ {0 D3 H 3 |- K2 Q6 U7 \, q 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个赞!!多谢楼主推荐啦,我已加到推荐书单中
哇。。。谢谢啦,哈哈,会不会有图书相赠啊?
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》
RE:【STM32图书分享】--《ARM Cortex-M0权威指南》