嵌入式开发–获取STM32产品系列和容量信息

获取STM32产品系列

有时候我们需要知道当前MCU是STM32的哪一个系列,这当然可以从外部丝印看出来,但是运行在内部的软件如何知道呢?

ST为我们提供了一个接口,F1和G4系列地址统一为:0xE004 2000,需要以32位方式读取。

H7系列的地址是0x10006450

对于F1系列,该说明如下:

对于G4系列,说明如下:

例如我读取的内容如下图,注意读到的数据是先低位后高位:

对应的就是

再去查看后面蓝色标识的表格如下:

是属于第2类设备,容量是128KB
但如果读出来的是第3类设备呢,有那么多型号。

查询FLASH的容量

别急,ST还给我们提供了另一个地方,可以查询FLASH的容量,这个地址不是确定值,需要查询手册。
对于H7系列,地址0x1FF1E880,16位方式读取

对于F1系列,地址: 0x1FFF F7E0,16位方式读取

对于G4系列,地址:0x1FFF75E0

读取的内容如下:

先是低位,后是高位,所以读到的数据是0x0080,也就是128,表示FLASH容量是128KB字节

封装和引脚数量

还有人要问封装和引脚数量呢,其实这个也是有的哈,对于G4系列,地址是0x1FFF7500,只有最低4位是有效位

F1系列呢,我没有查到,可能是太老的芯片,不提供这个功能吧。