《ARM Cortex-M4嵌入式系统开发与实战》王文成,胡应坤,胡智|(epub+azw3+mobi+pdf)电子书下载

图书名称:《ARM Cortex-M4嵌入式系统开发与实战》

【作 者】王文成,胡应坤,胡智
【丛书名】信盈达嵌入式系统实践系列丛书
【页 数】 316
【出版社】 北京:北京航空航天大学出版社 , 2021.04
【ISBN号】7-5124-3473-8
【分 类】微型计算机-系统设计-高等学校-教材
【参考文献】 王文成,胡应坤,胡智. ARM Cortex-M4嵌入式系统开发与实战. 北京:北京航空航天大学出版社, 2021.04.

图书目录:

《ARM Cortex-M4嵌入式系统开发与实战》内容提要:

本书收集整理了作者在STM32单片机学习和实践中的经验,由浅入深,带领大家进入STM32的世界。 本书共23章:第1-2章主要介绍本书的实验平台以及STM32开发软件的使用和一些下载调试的技巧;第3-8章详细介绍了Cortex-M4单片机的各个片上外设;第9-10章介绍了两大常用通信协议;第11-22章详细介绍了在智能锁项目中所用到的各个模块;第23章介绍了ESP32接入阿里云平台设备。从最简单的开始,循序渐进,以智能锁项目为依托进行理论和实践的结合。 本书从工程实践出发,旨在引领读者学会如何在STM32单片机的开发设计过程中发现问题、分析问题并解决问题。本书的主要读者为电子、计算机、控制及信息等相关专业的在校学生,从事单片机开发设计的电子工程师,以及所有电子设计制作的爱好者。

《ARM Cortex-M4嵌入式系统开发与实战》内容试读

第1章

初识Cortex-M4处理器

1.1ARM处理器简介

1.1.1ARM公司发展历程

·1978年12月5日,物理学家赫尔曼·豪泽(Hermann Hauser)和工程师

Chris Curry,在英国剑桥创办了CPU(Cambridge Processing Unit)公司,主要业务是为当地市场供应电子设备。

·1979年,CPU公司改名为Acorn计算机公司。

·1985年,Roger Wilson和Steve Furber设计了他们自己的第一代32位、6MHz的处理器,用它做出了一台RISC指令集的计算机,简称ARM(AcornRISC Machine),这就是ARM这个名字的由来

·1990年11月27日,Acorn公司正式改组为ARM计算机公司。苹果公司出资150万英镑,芯片厂商VLSI出资25万英镑,Acorn本身则以150万英镑

的知识产权和12名工程师入股。由于缺乏资金,ARM做出了一个意义深远

的决定:自己不制造芯片,只将芯片的设计方案授权(licensing)给其他公司,由它们来生产。

·20世纪90年代,ARM公司的业绩平平,处理器的出货量徘徊不前。

·进入21世纪之后,由于手机的快速发展,出货量呈现爆炸式增长,ARM处理

器占领了全球手机市场。

·2002年,ARM架构芯片的出货量突破10亿片。

·2004年,Cortex系列诞生,这是ARM公司的大事件,从此该公司不再用数字

为处理器命名,它分为A、R和M三类,旨在为各种不同的市场提供服务。

·2006年,全球ARM芯片出货量为20亿片。

·2015年,ARM基于ARMv8架构推出了一种面向企业级市场的新平台标准。

此外,他们还开始在物联网领域发力。同年,福布斯杂志将ARM评为世界

上五大最具创新力的公司之一。

·2016年,ARM被软银收购。

ARM Cortex-M4嵌入式系统开发与实战

1.1.2Classic系列处理器

1.ARM7系列微处理器

ARM7于1994年推出,是使用范围最广的32位嵌入式处理器系列,采用0.9MIPS

MHz的三级流水线和冯·诺依曼结构。ARM7系列包括ARM7TDMI

ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T。该系列处理器提供

Thumbl6位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设

计。ARM7TDMI基于ARM体系结构V4版本,是目前低端的ARM核。

2.ARM9系列微处理器

ARM9采用哈佛体系结构,指令和数据分属不同的总线,可以并行处理。在流

水线上,ARM7是三级流水线,ARM9是五级流水线。由于结构不同,ARM7的执行

效率低于ARM9。基于ARM9内核的处理器,是具有低功耗、高效率的开发平台,广

泛用于各种嵌入式产品。它主要应用于音频技术以及高档工业级产品,可以运行

Linux以及Wince等高级嵌入式系统,可以进行界面设计,做出人性化的人机互动界面,如一些网络产品和手机产品。

3.ARM9E系列微处理器

ARM9E中的E就是Enhance Instrctions,意思是增强型DSP指令,说明

ARM9E其实就是ARM9的一个扩充、变种。ARM9E系列微处理器为可综合处理

器,使用单一的处理器内核提供了微控制器、DSP、Java应用系统的解决方案,极大地

减少了芯片的面积和系统的复杂程度。ARM9E系列微处理器提供了增强的DSP

处理能力,很适合于那些需要同时使用DSP和微控制器的应用场合。

4.ARM10E系列微处理器

ARM10E系列微处理器为可综合处理器,使用单一的处理器内核提供了微控制

器、DSP、Java应用系统的解决方案,极大地减少了芯片的面积和系统的复杂程度。

ARM9E系列微处理器提供了增强的DSP处理能力,很适合于那些需要同时使用

DSP和微控制器的场合。ARM1OE与ARM9ER的区别在于:ARM1OE使用哈佛结

构,六级流水线,主频最高可达325MHz,1.35MIPS/Hz。

5.ARM11系列微处理器

ARM公司近年推出的新一代RISC处理器,它是ARM新指令架构

ARMv6的第一代设计实现。该系列主要有ARM1136J、ARM1156T2和

ARM1176JZ三个内核型号,分别针对不同的应用领域。ARM11的媒体处理能力和

低功耗特点特别适用于无线和消费类电子产品,其高数据吞吐量和高性能的结合非

常适合网络处理应用。另外,ARM11也在实时性能和浮点处理等方面满足汽车电

子应用的需求。

初识Cortex-M4处理器/

1.1.3Cortex系列处理器

ARM公司在经典处理器ARM11以后的产品改用Cortex命名,并分成A、R和

M三类,旨在为各种不同的市场提供服务。Cortex系列属于ARMv7架构,由于应用领域不同,基于ARMv7架构的Cortex处理器系列所采用的技术也不相同,基于ARMv7A的称为Cortex-A系列,基于ARMv7R的称为Cortex-R系列,基于ARMv7M的称为Cortex-M系列。

1.ARM Cortex-A

ARM Cortex-A系列应用型处理器可向托管丰富OS平台和用户应用程序的设备提供全方位的解决方案,以及从超低成本手机、智能手机、移动计算平台、数字电视和机顶盒到企业网络、打印机和服务器的解决方案。

ARM在Cortex-A系列处理器中的大体排序为:Cortex-A77处理器、Cortex-

A76处理器、Cortex-A76AE处理器、Cortex-A75处理器、Cortex-A73处理器、

Cortex-A72处理器、Cortex-A65处理器、Cortex-A65AE处理器、Cortex-A57处理器、Cortex-A55处理器、Cortex-A53处理器、Cortex-A35处理器、Cortex-A34处理器、Cortex-A32处理器、Cortex-A17处理器、Cortex-A15处理器、Cortex-A9处理器、

Cortex-A8处理器、Cortex-A7处理器和Cortex-A5处理器。

2.ARM Cortex-R

ARM Cortex-R实时处理器为要求可靠性、高可用性、容错功能、可维护性和实时响应的嵌入式系统提供高性能计算解决方案。Cortex-R系列处理器通过已经在

数以亿计的产品中得到验证的成熟技术提供极快的上市速度,并利用广泛的ARM

生态系统、全球和本地语言以及全天候的支持服务,保证快速、低风险的产品开发。

ARM在Cortex-R系列处理器中的大体排序为:Cortex-R52处理器、Cortex-R8处理器、Cortex-R7处理器、Cortex-R5处理器和Cortex-R4处理器。

3.ARM Cortex-M

ARM Cortex-M系列处理器是一系列可向上兼容的高能效、易于使用的处理器,这些处理器旨在帮助开发人员满足将来的嵌入式应用的需要。这些需要包括以更低的成本提供更多功能,不断增加连接,改善代码重用,以及提高能效。Cortex-M

系列针对成本和功耗敏感的MCU和终端应用(如智能测量、人机接口设备、汽车和

工业控制系统、大型家用电器、消费性产品和医疗器械)的混合信号设备进行过优化。

ARM在Cortex-M系列处理器中的大体排序为:Cortex-M55处理器、Cortex

M35P处理器、Cortex-M33处理器、Cortex-M23处理器、Cortex-M7处理器、Cortex

M4处理器、Cortex-M3处理器、Cortex-M1处理器、Cortex-M0十处理器和Cortex

M0处理器。

ARM Cortex-M4嵌入式系统开发与实战

1.1.4 SecurCore系列处理器

SecurCore系列处理器专门为安全需要而设计,提供了完善的32位RISC技术的安全解决方案,因此,SecurCore系列处理器除了具有ARM体系结构的低功耗、高性能的特点外,还具有其独特的优势,即提供了对安全解决方案的支持。SecurCore系列处理器主要用于一些对安全性要求较高的应用产品及应用系统,如电子商务、电子政务等。SecurCore系列处理器包含SecurCore SC300、SecurCore SC000、

SecurCore SCl00、SecurCore SC1l0、SecurCore SC200和SecurCore SC2l.

1.Intel的XScale系列

Intel的XScale源于ARM内核,在这个架构基础上扩展,它保留了对以往产品的向下兼容性。在指令集结构上,XScale仍然属于ARM的“v5TE”体系,与ARM9和ARM10系列内核相同,但它拥有与众不同的七级流水线,除了无法直接支持Java解码和v6SIMD指令集外,各项性能参数与ARM11核心都比较接近。再结合Intel在半导体制造领域的技术优势,XScale获得了极大的性能提升,它的最高频率可达1GHz,并保持ARM体系贯有的低功耗特性。

2.Intel的StrongARM系列

在PDA领域,Intel的StrongARM和XScale处理器占据举足轻重的地位,这两者在架构上都属于ARM体系,相当于ARM的一套实际应用方案。StrongARM系列处理器是一款现归于Intel旗下的ARM公司推出的旨在支持WinCE3.O-PocketPC系统

的RISC(精简指令集)处理器。

3.小知识:RISC和CISC的差别

①RISC指令较简单,实现特殊功能时效率较低,大量使用通用寄存器;CISC指

令丰富,有专用的指令完成特定的功能,处理特殊任务时效率较高。RISC易学易

用;CISC结构复杂,实现特殊功能容易。

②RISC汇编语言需要较大内存空间,实现特殊功能时程序复杂;CISC汇编语

言编程简单,复杂计算容易,效率高。

③RISC的CPU包含较少的电路单元,面积小,功耗低;CISC的CPU包含丰富

的电路单元,功能强,面积大,功耗大。

④RISC指令系统的确定与特定的应用领域有关,更适合于专用机,如ARM:

CISC更适合于通用机,如Intel、AMD

1.2 Cortex-M4处理器简介

Cortex-M处理器系列旨在使开发人员能够为多种设备创建成本敏感且功耗受限的解决方案。Cortex-M4是一款高性能嵌入式处理器,旨在满足数字信号控制市

一初识Cortex--M4处理器

场的需求,在数字信号控制市场领域中,我们常常需要将控制和信号处理功能进行高效、易于使用的融合。所以此时使用Cortex-M4系列处理器是一个不错的选择。

1.2.1 Cortex-M4处理器的组成

在具有ARM Cortex-M4处理器的典型SoC(如现成的微控制器)中,包含以下组件:

(1)数字系统组件

·ARM Cortex-M处理器;

·AHB和APB总线基础架构组件;

·数字外围设备,例如IC/IC,SPI接口。

(2)可选-系统外设例如:

·DMA(直接内存访问)控制器;

·加密引擎;

·用于通信会话密钥的真随机数生成器(TRNG):

·安全的数据存储:

·调试身份验证等。

(3)内存

·非易失性存储器(NVM)、例如闪存、OTP(一次性可编程)存储器或ROM;

·静态随机存取存储器(SRAM);

·可选的引导加载程序内存(NVM)。

(4)可选的模拟组件

在某些应用中,模拟外设有ADC、DAC、参考电压、欠压检测器和稳压器等。

(5)无线接口

一些现代SoC还包括片上无线接口,例如蓝牙、Zigbee等。

(6)系统组成

时钟管理功能:晶体振荡器、锁相环(PLL)。

(7)其他物理接口

标准单元库、时钟门控和电源门控单元、I/O接口。

在某些情况下,特殊的外围接口还需要特殊的物理接口,例如USBI/O接口(符

合电气规范)。

1.2.2 Cortex-M4处理器的优点1,浮点处理实现更多

内置浮点单元(FPU),单精度浮点运算的10倍加速可降低功耗并延长电池寿

5

ARM Cortex-M4嵌入式系统开发与实战

命。结合ARM的CMSIS-NN机器学习库,Cortex-M4为电池供电的嵌入式和IoT设备带来了高级智能。

2.添加DSP功能

通过在同一处理器中组合控制和信号处理来降低芯片系统成本。集成数字信号

处理(DSP)、SIMD和MAC指令简化了整体系统设计以及软件开发和调试。用C

语言编程,并由丰富的DSP函数库支持,简化了信号处理,减少了开发工作,并将

DSP推向了大众

3.更快进入市场,降低设计风险

通过使用部署最广泛的Cortex-M处理器之一,降低风险并获得首次成功。凭

借其广泛的软件、工具、编解码器和其他DSP代码生态系统,可以轻松地在现有软件

上构建,从而以更少的精力和更快的上市时间来创建高级嵌入式产品。

1.2.3 Cortex-M4处理器的应用

·电机控制;

·汽车电子:

·电源管理

·嵌入式音频;

·物联网传感器;

·工业控制;

·人工智能与机器学习。

1.3 Cortex-M4处理器之STM32简介

ST(意法半导体集团)宣称,他们基于Cortex-M4内核的STM32F4系列微控制器是全球性能最强的Cortex-M微控制器。归功于强大的ART实时加速器,

STM32F4的处理能力远胜于竞争产品,如图1.3.1所示。

本书以STM32F407系列产品详细描述Cortex-M4处理器的使用。

1.3.1STM32F407系列芯片简介

STM32F407X×系列基于高性能ARM Cortex-M432位RISC在高达168MHz的频率核心操作。Cortex-M4内核具有浮点单元(FPU)单精度,支持所有ARM单精

度数据处理指令和数据类型。它还实现了全套DSP指令和1个内存保护单元

(MPU),从而增强了应用程序的安全性。

STM32F407××系列集成了高速嵌人式存储器(高达1MB的闪存,高达192KB

的SRAM的闪存),高达4KB的备用SRAM以及与2个APB连接的广泛的增强型

···试读结束···

阅读剩余
THE END