STM32控制开发学习笔记【基于STM32 HAL库】

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~~~ 也就说明我们的开发环境安装无误,成功!


相关推荐
qq_401700417 分钟前
3个常用的单片机实现隔离控制大电流负载例子
单片机·嵌入式硬件
weixin_4568083824 分钟前
【沁恒蓝牙开发】BLE常见错误码与解析
c语言·单片机·嵌入式硬件
龙仔72526 分钟前
RustDesk 完整笔记
运维·笔记·rust·远程工具·rustdesk
恣逍信点35 分钟前
《凌微经 · 理悖相涵》导论:“我思”事实——知识理论之根基
人工智能·科技·学习·生活·量子计算·交友·哲学
minglie140 分钟前
Linux 文本处理常用命令
学习
HJX_07241 小时前
嵌入式软件C语言八股文复习笔记5——编译、链接与底层硬核机制
c语言·开发语言·笔记
电化学仪器白超1 小时前
禹衡光栅长度计精度评测:基于国标0级氧化锆量块的校正与数据分析
python·单片机·嵌入式硬件·物联网·自动化
泛泛7辈1 小时前
在这个示例中,学习如何使用LiveBindings的TProtoTypeBindSource控件来实现对象间的主从式的数据绑定... ...
学习
摇滚侠1 小时前
《SpringBoot 3:入门与应用实战》第 15 章 生产级特性 监控指标 Metrics 阅读笔记
java·spring boot·笔记
LCMICRO-133108477461 小时前
国产长芯微LPS7118完全pin-pin替代ADP7118,是一款采用 CMOS 技术设计的低噪声、高 PSRR、快速瞬态响应、低压差线性稳压器
arm开发·单片机·嵌入式硬件·fpga开发·硬件工程·线性稳压器·adp7118