STM32微控制器简介
STM32是意法半导体(STMicroelectronics)推出的基于ARM Cortex-M内核的32位微控制器系列,广泛应用于嵌入式系统和物联网设备。
主要特点
1. 内核架构
-
Cortex-M0/M0+:入门级,低功耗,成本敏感应用
-
Cortex-M3:主流应用,性能与功耗平衡
-
Cortex-M4:带DSP和FPU,数字信号处理应用
-
Cortex-M7:高性能,复杂计算任务
-
Cortex-M33:安全特性,物联网安全应用
2. 产品系列
系列 | 特点 | 应用场景 |
---|---|---|
STM32F0 | 低成本,Cortex-M0 | 消费电子,简单控制 |
STM32F1 | 经典系列,Cortex-M3 | 工业控制,电机驱动 |
STM32F4 | 高性能,Cortex-M4 | 音频处理,复杂算法 |
STM32L0/L4 | 超低功耗 | 电池供电设备,穿戴设备 |
STM32H7 | 最高性能,Cortex-M7 | 图形处理,AI边缘计算 |
STM32G0 | 性价比优化 | 通用替换,成本敏感 |
STM32WB | 集成无线 | 蓝牙应用,物联网 |
STM32微控制器简介
概述
STM32是意法半导体(STMicroelectronics)推出的基于ARM Cortex-M内核的32位微控制器系列,广泛应用于嵌入式系统和物联网设备。
主要特点
1. 内核架构
-
Cortex-M0/M0+:入门级,低功耗,成本敏感应用
-
Cortex-M3:主流应用,性能与功耗平衡
-
Cortex-M4:带DSP和FPU,数字信号处理应用
-
Cortex-M7:高性能,复杂计算任务
-
Cortex-M33:安全特性,物联网安全应用
2. 产品系列
系列 | 特点 | 应用场景 |
---|---|---|
STM32F0 | 低成本,Cortex-M0 | 消费电子,简单控制 |
STM32F1 | 经典系列,Cortex-M3 | 工业控制,电机驱动 |
STM32F4 | 高性能,Cortex-M4 | 音频处理,复杂算法 |
STM32L0/L4 | 超低功耗 | 电池供电设备,穿戴设备 |
STM32H7 | 最高性能,Cortex-M7 | 图形处理,AI边缘计算 |
STM32G0 | 性价比优化 | 通用替换,成本敏感 |
STM32WB | 集成无线 | 蓝牙应用,物联网 |
3. 丰富的外设资源
-
通信接口:UART、I2C、SPI、CAN、USB、以太网
-
模拟外设:ADC、DAC、比较器
-
定时器:基本定时器、高级定时器(PWM生成)
-
存储器:Flash、SRAM,部分型号支持外扩
-
安全特性:加密引擎、安全启动、真随机数发生器
下面开始让我们进行STM32的学习,我观看的视频教程如下 [基于STM32 HAL库]:
[STM32 HAL库]课程介绍,最佳教程,没有之一~_哔哩哔哩_bilibili
基于最小系统板STM32F103C8T6进行学习,首先是点亮板载的IED灯的操作流程:
打开STM32CubeMX后,新建一个工程:

填写芯片的型号(STM32F103C8T6为例子):


再点击Start Project:

再配置一下调试接口,使用单线调试:

再点击右边图中的PC13引脚,将其设置为输出模式:

再点击左边的GPIO,依次点击中间的PC13,设置初始电压配置为低电压,输出模式配置为open-drain(开漏模式),最大输出速度选择low:

然后再点击project manager选项卡,给这个工程取个名子叫hjx_test,再选择我们使用的工具调为mdk arm,最后生成code(点击GENERATE CODE):

点击open project:

这样我们的Keil5也就打开了:

接下来就是连接单片机来编译烧录代码,首先发现编译没有问题:

随后准备好ST-LINK和最小系统板,完成接线与电脑连接:

最后点击下载Download按钮,进行代码下载:

代码下载没有问题后,将单片机上的复位按钮按下后,我们可以观察到板载IED灯被点亮了:

over~~~ 也就说明我们的开发环境安装无误,成功!