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

相关推荐
2CM_Embed5 小时前
Altium Designer 原理图与 PCB 快速相互定位:Cross Probe 交叉探针
嵌入式硬件·pcb·altium designer·c2000
恒锐丰-罗生6 小时前
宽压大电流同步降压优选|CN3906 DC-DC 电源芯片,车载 / 工控 / IoT 全能供电方案
嵌入式硬件·硬件工程
PC2005-cloud8 小时前
DeepSeek Harness 创建 skill 指南:结构、安装、使用
笔记·学习
happygrilclh9 小时前
STM32,串口单字节中断接受,每次上电后,会收到一个0x00的解决办法。
单片机·嵌入式硬件
智闲电子设计10 小时前
STM32 独立看门狗 IWDG 实战:系统跑飞,它来兜底复位
stm32·单片机·嵌入式硬件
库玛西10 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
zcmodeltech11 小时前
智能制造教学实训沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的工业机器人-智慧工厂-数字孪生全场景联动方案
数据库·stm32·嵌入式硬件·机器人·制造·多分类
程序员与背包客_CoderZ12 小时前
Linux D-Bus通信协议详解:从入门到C/C++编码实战
linux·服务器·c语言·c++·嵌入式硬件·嵌入式软件·dbus
嵌入式阿蔡13 小时前
HAL库 vs LL库 vs 寄存器:到底用哪个?
c语言·stm32·单片机·嵌入式硬件·嵌入式实时数据库
后季暖14 小时前
langgraph笔记(2)&& fastapi笔记
笔记