1、芯片内部有什么
(1)ARM与ST
Arm是芯片半导体知识产权(IP)提供商,负责提供内核;
ST作为soc公司,为内核搭配片上外设;
(2)STM32
STM32即ST公司基于Arm公司提供的Cortex-M3内核,搭配片上外设后生产的32位系列单片机。
STM32芯片内部可抽象为系统架构,如下图:
(3)系统架构
DCode、System、DMA1和DMA2组成了驱动单元:
内核与外设通过各种总线连接,ICode为指令总线,内核通过ICode读取存放在Flash中的指令;
DCode为数据总线,通常常量存放在Flash中,变量存放在SRAM中;
System为系统总线,通常负责读取寄存器中的数据;
DMA提供高速数据传输,不需要CPU参与;
FLASH、SRAM、FSMC和AHB到APB桥组成了被动单元:
FLASH常用来存放程序;
SRAM为程序运行提供环境,堆栈等开销都基于内部的SRAM;
FSMC用于扩展外部存储器;
AHB总线延伸出APB1、APB2总线,各种特色外设(I2C、UART、GPIO...)挂载在这些总线上,其中AHB、APB2为高速总线,APB1为低速总线;
2、STM32命名规则
STM32指一系列单片机,其命名规则指明了每一种单片机的特点,规则如下图:
以STM32F103C8T6为例:F103-型号与子型号,C-48个引脚,8-FLASH 64Kb,T-LQFP封装,6-工作温度范围-40℃~85℃