本文参考:原子和野火STM32教学视频
1、STM32是“意法半导体”生产的基于“ARM公司Cortex-M3内核”的32位高性能MCU。
ST----意法半导体,即SOC厂商(芯片制造商)。ARM----IP厂商,负责芯片内核设计的公司
M-----Microelectronics的缩写,指微控制器。微处理器通常指计算机CPU。
32------指它是一个32位的微控制器。
注意:51单片机是5V工作电压而STM32是3.3V工作电压
2、STM32和ARM7的关系
ARM7和STM32的内核都是由ARM公司设计的。ARM7内核采用的是冯诺依曼结构(也就是计算机CPU采用的结构)而STM32采用的是哈佛结构。STM32是ARM公司设计出来取代ARM7的,所以它的性能优于ARM7。
Cortex-M3系列属于ARMv7架构,ARMv7架构的不同内核有不同的应用场合:1、"M系列"对微控制器。2、“R系列”针对嵌入式实时操作系统他。3、“A系列”面向尖端的基于虚拟内存的操作系统和用户应用。传统的ARM7采用ARMv4T架构。
以前很多人的嵌入式学习路线:51单片机~ARM7~ARM9~ARM11
现在很多人的嵌入式学习路线:51单片机~Cortex-M系列~Cortex-R系列~Cortex-A系列
3、STM32是否可以跑Linux
首先介绍虚拟内存管理单元,即MMU。操作系统分为两种:Windows、MacOS、Linux、Android这些操作系统带MMU才能跑;而FreeRTOS、ucOS、等不需要MMU。
ARM公司的Cortex-M3系列不带MMU故不能运行Linux。而Cortex-A系列如ARM9、ARM11带MMU,可以跑Linux。
4、STM32应用场景
智能手环、微型四轴、扫地机器人、工业自动化控制等