【STM32】LED闪烁 & LED流水灯 & 蜂鸣器

文章目录

前置知识

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版 细致讲解 中文字幕》教程视频

相关推荐
dalong1032 分钟前
A6:编写计算器界面程序
笔记·aardio
沃尔特。3 小时前
直流无刷电机FOC控制算法
c语言·stm32·嵌入式硬件·算法
CW32生态社区3 小时前
CW32L012的PID温度控制——算法基础
单片机·嵌入式硬件·算法·pid·cw32
Sarvartha3 小时前
LangChain 入门核心知识学习笔记
笔记·学习·langchain
QZ_orz_freedom3 小时前
后端学习笔记-苍穹外卖
笔记·学习
麒qiqi3 小时前
嵌入式 I2C 通信全解析:从硬件原理到驱动实现
stm32·单片机·嵌入式硬件
蓬荜生灰5 小时前
STM32(6)-- GPIO外设
单片机·嵌入式硬件
我爱我家diyer6 小时前
使用STM32的HAL库开发GD32F303CGT6
stm32·单片机·嵌入式硬件
Lips6116 小时前
2026.1.25力扣刷题笔记
笔记·算法·leetcode
WK100%6 小时前
二叉树经典OJ题
c语言·数据结构·经验分享·笔记·链表