数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 18|回复: 2

《STM32H7R7开发指南》第二章 STM32简介

[复制链接]
发表于 3 小时前 | 显示全部楼层 |阅读模式
第二章 STM32简介



本章,我们将向大家介绍STM32是一个什么东西?有哪些资源?能够做什么?如何选型?等基础知识,让大家对STM32有一个大概了解。
本章将分为如下几个小节:
2.1 初识STM32
2.2 STM32H7R7资源简介
2.3 STM32H7R7设计选型


2.1 初识STM32
20076月,ST在北京发布了全球第一款基于ARM Cortex M3内核的32位通用微控制器芯片:STM32F103,以优异的性能,丰富的资源,超高的性价比,迅速占领市场,从此一鸣惊人,一发不可收拾,截止到20206月,STM32累计出货量超过45亿颗。
战舰开发板使用的STM32F103ZET6芯片如图2.1.1所示:
2.1.1 STM32F103ZET6芯片(LQFP144脚)
上图中,左侧是STM32F103ZET6芯片,右侧则是芯片开盖后的图片,即芯片内部视图,可以看到外观看上去平平无奇,但是内部是有很多东西的,需要我们花很多时间和精力去学习掌握。
STM32的优异性体现在如下几个方面:
1,超低的价格。8位机的价格,32位机的性能,是STM32最大的优势。
2,超多的外设。STM32拥有包括:FMCTIMERSPIIICUSBCANIISSDIOADCDACRTCDMA等众多外设及功能,具有极高的集成度。
3,丰富的型号。STM32M3内核就拥有F100F101F102F103F105F107F207F2178个系列上百种型号,具有QFNLQFPBGA等封装可供选择。同时STM32还推出了STM32LSTM32W等超低功耗和无线应用型的M3芯片,另外,ST还推出了STM32F4/F7/H7等更高性能的芯片。
4,优异的实时性能。150个中断,16级可编程优先级,并且所有引脚都可以作中断输入。
5,杰出的功耗控制。STM32各个外设都有自己的独立时钟开关,可以通过关闭相应外设的时钟来降低功耗。
6,极低的开发成本。通过串口即可下载程序,而且相应的仿真器也很便宜,支持JTAG&SWD调试接口,最少仅2IO口即可实现仿真调试,极大的降低了开发成本。
再来看一个STM3251的性能对比如表2.1.1所示:

内核
主频(Mhz)
DMIPS
硬件FPU
STM32H7
Cortex M7
480
1027
双精度
STM32F7
Cortex M7
216
462
双精度
STM32H5
Cortex M33
250
375
单精度
STM32F4
Cortex M4
168
210
单精度
STM32F1
Cortex M3
72
90
STC15
8051
35
35
2.1.1 STM32 VS 51
这里我们选的51是性能比较好的STC15系列做为对比,如果换成传统51,速度会比STC1512倍左右。最强H7DMIPS性能约为STC1530倍,即便是STM32F103也大概有STC15性能的3倍,由此可见STM32的强大,而且最便宜的STM32F103,价格大概在5块多人民币,和STC15系列的价格差不多。
简单来说是,价格差不多的情况下,51能做的,STM32都能做,51不能做的,STM32也能做,因此,越来越多的企业选择使用STM32替代51,所以,大家如果能学会STM32,找工作的时候,也会有一定的优势。
2.2 STM32H7R7资源简介
下面来看看STM32H7R7L8H6H具体的内部资源,如表2.2.1所示:
STM32H7R7L8H6H资源
内核
Cortex M7
低功耗定时器
5
USART
3
主频
600Mhz
通用定时器
11
FDCAN
2
FLASH
64KB
高级定时器
1
SDMMC
2
SRAM
620KB
12位ADC
2
FMC
1
封装
TFBGA225
ADC通道数
19
DMA
2
IO数量
112
SPDIFRX
1
RTC
1
工作电压
3.3V
SPI
6
IIC
3
USB OTG
2
XSPI
2
SAI
2
ETH MAC
100M
JPEG Codec
支持
DCMIPP
1
2.2.1 STM32H7R7L8H6H内部资源
        由表可知,STM32内部资源还是非常丰富的,本书将针对这些资源进行详细的使用介绍,并提供丰富的例程,供大家参考学习,相信经过本书的学习,您会对STM32H7R7有一个全面的了解和掌握。
关于STM32H7R7内部资源的详细介绍,请大家参考光盘àA盘à7,硬件资料à2,芯片资料à STM32H7R7L8H6H.pdf,该文档即STM32H7R7的数据手册,里面有STM32H7R7详细的资源说明和相关性能参数。
2.3 STM32H7R7设计选型
STM322007年推出至今,已经有20个系列,超过1000个型号,为了方便大家选择合适的型号设计产品,本节给大家讲讲STM32的设计选型。
2.3.1 STM32系列
STM32目前总共有5大类,20个系列,如表2.3.1.1所示:
大类
系列
内核
特性
主流级
MCU
C0
Cortex M0+
全新入门级MCU
G0
Cortex M0+
全新入门级MCU
G4
Cortex M4
模数混合型MCU
F0
Cortex M0
入门级MCU
F1
Cortex M3
基础型MCU
F3
Cortex M4
混合信号MCU
高性能
MCU
F2
Cortex M4
高性能MCU
F4
Cortex M4
高性能MCU
H5
Cortex M33
高性能MCU
F7
Cortex M7
高性能MCU
H7
Cortex M7
超高性能MCU,部分型号有双核(M7+M4
超低功耗
MCU
L0
Cortex M0+
超低功耗MCU
L1
Cortex M3
超低功耗MCU
L4
Cortex M4
超低功耗MCU
L4+
Cortex M4
超低功耗高性能MCU
L5
Cortex M33
超低功耗高性能安全MCU
U5
Cortex M33
超低功耗高性能大容量安全MCU
无线
MCU
WB
Cortex M4
Cortex M0+
双核无线MCU
WL
Cortex M4
远程无线MCU
微处理器
MPU
MP1
Cortex A7
Cortex M4
双核超高性能MPU
2.3.1.1 STM32系列分类及说明
可以看到,STM32主要分两大块,MCUMPUMCU就是我们常见的STM32微控制器,不能跑Linux,而MPU则是ST19年才推出的微处理器,可以跑Linux。本书重点介绍MCU产品,正点原子 STM32H7R7开发板使用的STM32H7R7L8H6H属于高性能MCU分类里面的高性能型 H7系列。
STM32 MCU提供了包括:基础入门、混合信号、高性能、超低功耗和无线等5方面应用的产品型号,我们可以根据自己的实际需要选择合适的STM32来设计。比如,我们的产品对性能要求比较高,则可以选择ST的高性能MCU,包括:F2F4H5F7H7等5个系列的产品;又比如想做超低功耗,则可以选择ST的超低功耗MCUL系列的产品。
2.3.1.1中加粗的系列,正点原子都有相应的开发板,包括:主流级F1、高性能F4/F7/H7、超低功耗L4和微处理器MP1,大家可以根据自己的需要选择合适的正点原子开发板进行学习。
由于STM32系列有很好的兼容性,我们只要能够熟练掌握其中一任何一款MCU,就可以很方便的学会并使用其他系列的MCU。比如学好了STM32F103,再去学F4/F7/H7就比较容易学会,由于STM32F103系列最早推向市场,资料和教程都是最多的,在市场上的使用也是最为广泛,所以对于没有接触过STM32的初学者来说,我们强烈建议先学习STM32F103,再去学习其他的STM32系列。
2.3.2 STM32命名
STM32的命名规则如图2.3.2.1所示:
2.3.2.1 STM32 MCU命名规则(摘自STM32产品选型手册)
    如图所示,STM32的产品名字里面包含了:家族、类别、特定功能、引脚数、闪存容量、封装、温度范围等重要信息,这些信息可以帮助我们识别和区分STM32不同芯片。
下面来看看STM32H7R7L8H6H这个型号包含的信息,如表2.3.2.1所示:
描述
型号
说明
家族
STM32
ST公司32MCU
产品类别
H
高性能
特定功能
7R7
STM32图显系列,强化性能、GUI
引脚数
L
225引脚(STM32H7RS系列)
闪存容量
8
64KB FLASH
封装
H
LFBGA/TFBGA封装
温度范围
6
-40 ~ +85 工作温度范围(工业级)
2.3.2.1 STM32H7R7L8H6H型号说明
大部分的STM32型号,都可以按图2.3.2.1所示命名规则进行区分解读。
2.3.3 STM32选型
了解了STM32的系列和命名以后,我们再进行STM32选型就会比较容易了,这里我们只要遵循:由高到低,由大到小 的原则,就可以很方便的完成设计选型了。
由高到低原则:在不能评估项目所需性能的时候,可以考虑先选择高性能的STM32型号进行开发,比如选择F4/F7/H7等,在高性能STM32上面完成关键性能(即最需要性能的代码)开发验证,如果满足使用要求,则可以降档,如从H7àF7àF4àF1,如不满足要求,则可以升档,如从F4àF7àH7,通过此方法找到最佳性价比的STM32系列。
由大到小原则:在不能评估项目所需FLASH大小、SRAM大小、GPIO数量、定时器等资源需求的时候,可以考虑先选择容量较大的型号进行开发,比如选择512K/甚至1M FLASH的型号进行开发,等到开发完成大部分功能之后,就对项目所需资源有了定论,从而可以根据实际情况进行降档选择(当然极少数情况可能还需要升档),通过此方法,找到最合适的STM32型号。
通过这两个原则,我们就可以找到最适合项目使用的STM32具体型号了。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
发表于 3 小时前 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2 小时前 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2026-3-28 12:57 , Processed in 0.140400 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz!

© MyDigit.Net Since 2006

快速回复 返回顶部 返回列表