1.什么是STM32
从字面意义来看:
ST:意法半导体,是一个公司的名字。
M:Microelectronics的缩写,表示微控制器,要
注意微控制器和微处理器的区别
32:32bit的意思,表示这是一个32bit的微控制器
2.STM32与ARM的关系
ARM是英国的芯片设计公司,其最成功的莫过于32位嵌入式CPU核----ARM系列,最常用的是ARM7和ARM9,ARM公司主要提供IP(Intellectual Property core知识产权的核心)核,就是CPU的内核结构,只包括最核心的部分,并不是完整的处理器。ARM把这个核卖给各大半导体公司,如 Philips 三星,ATMEL,甚至Intel等许多公司,ARM为了对付 8位机市场,推出了一系列 Cortex-M核,STM32就是将Cortex-M作为内核,通过一些外设等组合封装在一起就成了如今火爆的32位嵌入式处理器。
Cortex-M3采用ARMv7-M架构
ARMv7架构定义了三大分工明确的系列:
“A”系列:面向尖端的基于虚拟内存的操作系统和用户应用
“R”系列:针对实时系统;
“M”系列:对微控制器。
Cortex-M4采用ARMv7-ME架构,Cortex-M0采用ARMv6-M架构,
Cortex-A5/A8采用ARMv7-A架构, 传统的ARM7系列采用的是
ARMv4T架构。
STM32是如何分类的:
STM32的命名规则
STM32芯片架构
我们这里讲的 STM32F1系统架构主要针对的 STM32F103 系列芯片。在内核和外设之间是通过总线矩阵来进行交互的,总线矩阵和内核之间有三条线。
I表示指令线
S表示系统总线
D代表数据总线
STM32芯片系统结构
里面有4个驱动单元,一个是内核,还有数据总线,系统总线,还有通用的DMA1,DMA2.还有被驱动单元比如flash,SRAM,FSMC,还有和AHB连的所有外设。