打印
[STM32H7]

STM32H7不完全填坑教程系列

[复制链接]
898|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
STM32H7系列的单片机是ST这几年新推的一个系列,主频都比较高,适合做一些复杂的应用。H7系列的浮点运算性能也是比较强悍的,可以胜任一些信号处理的任务,当然做一些多媒体处理也是不在话下的。
点此移步系列文章目录
在这里博主使用了一个价格非常便宜的STM32H750VBT6,这个是一个100Pin的芯片。H750系列仅拥有128Kbyte的Flash空间,但是可用的RAM空间还是比较大的,有864Kbyte(总共是1M)。
当然作为一个Cortex M7内核的处理器自然支持一些指令缓存(ICache)和数据缓存(DCache),这里面就需要注意Cache一致性的问题。
H750外设是比较丰富的,CubeMX一打开可以看到一长串乱七八糟的外设看起来就有点头疼,但是随着对H7的熟悉这些外设都会称为产品设计的得力助手,以下捡出一些有代表性的分享一下。

使用特权

评论回复
沙发
突然下起雨|  楼主 | 2022-11-15 23:41 | 只看该作者
SDIO

在这里特别提到了SDIO,因为这个和其他系列的真不一样。

使用特权

评论回复
板凳
突然下起雨|  楼主 | 2022-11-15 23:43 | 只看该作者
可以看到STM32H7系列的SDIO最高支持UHS-I的卡,这个在其他系列里面是没有的。这是什么样一个概念,大家可以看以下下表

使用特权

评论回复
地板
突然下起雨|  楼主 | 2022-11-15 23:43 | 只看该作者
读写速度提上来了可玩性当然也有了很大提升。当然H7的性能也为这些拓展应用提供了强有力的保障,尽管相比A系列的或者是某些MIPS处理器、RISC处理器而言性能还是比较**肋的,但是不管怎么说,在成本敏感的产品上面H750还是很香的。

使用特权

评论回复
5
突然下起雨|  楼主 | 2022-11-15 23:46 | 只看该作者
注意H7支持UHS-I需要外部电路的支持,UHS-I卡子是1.8V电平。但是不管怎么说聊胜于无。
这种高性能的外设通常而言都有一个非常讨厌的毛病:眼花缭乱的配置搞得大家一脸懵逼。但是得益于HAL库的高度封装,这个SDIO使用起来非常简单,再加上H7系列的SDIO有一个专属的DMA通道,使用起来简直比Arduino还Arduino。
博主手上有几张SDHC,SDXC的卡片,实测SDHC C4的卡片速度大概保持在 5MB/s写,11MB/s读,SDXC配合外部硬件做到了45MB/s写,96MB/s读。当然带上文件系统以后速度就不会这么快了

使用特权

评论回复
6
突然下起雨|  楼主 | 2022-11-15 23:47 | 只看该作者
HRTIM

HRTIM是一个全新的定时器,全名高分辨率定时器。这个定时器在STM32F334、H74/H75、G47/G48系列里面都有。这个定时器的优势在于能定制几乎所有想要的波形,同时连带了各种触发信号:ADC触发、DAC触发、比较器触发,这个用在数字电源上面就非常香了。
不过遗憾的是H7系列的HRTIM相比F334、G47、G48的HRTIM就有些捉襟见肘了


可以看到另外几款通过一些特殊的方式都能够将HRTIM的频率提到GHz级别,唯独H7还是MHz,这个还是很遗憾的。高频率的HRTIM优势很明显,就是能够获得更高的占空比分辨率。

使用特权

评论回复
7
突然下起雨|  楼主 | 2022-11-15 23:59 | 只看该作者
例如博主需要做一款Buck电源,Buck电源的降压比是和占空比有关系的,利用伏秒平衡可以得到

占空比分辨率越高的电源调节更精确更细腻,若配合高速的ADC和强有力的数字控制系统,可以做成一个响应速度非常快的电源。
再者博主需要控制一个电机,当电机转速较高的时候占空比分辨率就显得捉襟见肘了,此使HRTIM将派上大用场。
尽管H7的HRTIM跟前几个比完全不占优势,但是480兆的主频却是其他系列微控制器望尘莫及的。

使用特权

评论回复
8
突然下起雨|  楼主 | 2022-11-17 10:38 | 只看该作者
SPDIF与SAI

SPDIF很多朋友可能都没用过,这个是SONY和PHILIPS联合定制的音频接口,采用光纤传输。H7上有4路输入,当然这4路信号不一定能同时处理的过来,但是总归是有的。SAI这个有些朋友应该用过,用来输出一些音频信号,例如I2S信号,SPDIF信号。

使用特权

评论回复
9
突然下起雨|  楼主 | 2022-11-17 10:39 | 只看该作者
SAI与I2S外设的区别在于I2S外设是SPI模拟出来的,占用一个SPI通道,而SAI是独立的。现在看起来,H7还是一个略“发烧”的MCU,高性能可以做一些解码、数字信号处理的工作,而高速的SDIO正好配合了这种大码率音频文件的读取,确实非常爽。

使用特权

评论回复
10
突然下起雨|  楼主 | 2022-11-17 10:42 | 只看该作者
H750也和其他系列的控制器一样可以外部输入音频时钟,但是非常令人不爽的是这个输入又与SDIO1的D1管脚复用了…

当然题外话是,合格的发烧音源需要良好的相位噪声,就这一点而言H7似乎差的很远。抛开发烧这两个字,做一些常规音频应用,H7绝对是够格的。

使用特权

评论回复
11
突然下起雨|  楼主 | 2022-11-17 10:42 | 只看该作者
QSPI

H7的QSPI是支持内存映射的,也就是说我们有办法让H7的程序运行在QSPI上,这显然弥补了H7天生的Flash空间不足。H7的QSPI最高可以到133MHz,当然这么高的速度也需要那个芯片支持才行,同时也要良好的PCB设计。但是这两点都是比较容易达到的。

现在我们看到了一个问题:代码空间是够了,RAM不够了,可能我们需要QSPI的PSRAM吧。

在这里还是要吐槽一下,令人非常不爽的引脚复用:QSPI BANK2的CK与SDMMC1的数据又复用了…而BANK1的管脚分布简直变态,这让咱怎么拉线?

使用特权

评论回复
12
OKAKAKO| | 2024-6-25 15:55 | 只看该作者
学习一下H7的填坑教程

使用特权

评论回复
13
周半梅| | 2024-12-1 08:03 | 只看该作者

整流器或功率开关管与每个电容端的连线长度和宽度都要一样

使用特权

评论回复
14
Pulitzer| | 2024-12-1 09:06 | 只看该作者

不要根据不同的参数类型走不同的代码逻辑

使用特权

评论回复
15
童雨竹| | 2024-12-1 11:02 | 只看该作者

其他的信号和地要与这些高压引线和它的散热部分隔开

使用特权

评论回复
16
Wordsworth| | 2024-12-1 12:05 | 只看该作者

对于没有else的场景,使用ifPresent即可

使用特权

评论回复
17
Clyde011| | 2024-12-1 13:08 | 只看该作者

每个Strategy交由Spring管理,并在构造后注册

使用特权

评论回复
18
公羊子丹| | 2024-12-1 14:01 | 只看该作者

变压器隔离拓扑中,变压器有多少个绕组

使用特权

评论回复
19
万图| | 2024-12-1 15:04 | 只看该作者

使用Optional简化if判空

使用特权

评论回复
20
Uriah| | 2024-12-1 16:07 | 只看该作者

不同的代码逻辑就代表了不同的策略

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

284

帖子

1

粉丝