文章目录
前置知识
LED和蜂鸣器介绍
-
LED
发光二极管,正向通电点亮,反向通电不亮
-
蜂鸣器
- 有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定
- 无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音
硬件电路
LED硬件电路
使用STM32的GPIO口驱动LED电路
-
低电平驱动电路(低电平点亮高电平熄灭)
【分析】
LED正极接3.3V,负极通过一个限流电阻接到PA0上
- 当PA0输出低电平时,LED两端就会出现电压差,形成正向导通的电流,LED灯点亮
- 当PA0输出高电平时,LED两端无电压差,不会形成电流,LED灯熄灭
-
高电平驱动电路(高电平点亮低电平熄灭)
【分析】
LED正极通过一个限流电阻接到PA0上,负极接GND(0V)
- 当PA0输出高电平时,LED两端就会出现电压差,形成正向导通的电流,LED灯点亮
- 当PA0输出低电平时,LED两端无电压差,不会形成电流,LED灯熄灭
一般选择使用第一种连接方法,因为很多单片机和芯片都使用了高电平弱驱动,低电平强驱动的规则
蜂鸣器硬件电路
-
PNP三极管驱动电路
【分析】
PA0 输出低电平,PNP三极管的基极为低电平,三极管导通,可以给蜂鸣器提供驱动电流
PA0 输出高电平,基极为高电平,三极管截止,蜂鸣器没有电流
-
NPN三极管驱动电路
【分析】
PA0 输出高电平,NPN的三极管的基极为高电平,三极管导通,可以给蜂鸣器提供驱动电流
PA0 输出低电平,基极为低电平,三极管截止,蜂鸣器没有电流
面包板介绍
面包板也叫做免焊万用电路板,与印刷电路板不同,面包板无需焊接或损坏电路轨道,因此可以反复使用
面包板的正反面及内部结构
LED灯闪烁
接线图
源代码 main.c
Delay函数模块的文件链接
链接: https://pan.baidu.com/s/1BK9oP64S5r5jBkzMox8dww?pwd=6hex
提取码: 6hex
对RCC不熟悉的请参考:STM32系统时钟RCC
对GPIO不熟悉的请参考:GPIO通用输入输出口
LED流水灯
接线图
源代码 main.c
蜂鸣器
接线图
源代码 main.c
STM32 专栏文章均参考 《STM32入门教程-2023版 细致讲解 中文字幕》教程视频