KEY(按键)&BUZZ(蜂鸣器)

key概述:

按键是物理或虚拟界面中用于触发特定功能的交互元件,通常通过按压操作实现输入或控制。根据使用场景可分为:

  • 物理按键:机械键盘、遥控器、游戏手柄等硬件设备的实体按键。
  • 虚拟按键:触摸屏或软件界面中的模拟按键,如手机屏幕键盘。

BUZZ概述:

蜂鸣器是一种电子发声装置,通过电流驱动产生声音信号,广泛应用于警报、提示音、电子设备反馈等场景。根据工作原理可分为以下两类:

  • 有源蜂鸣器:内置振荡电路,通电即发声,频率固定(如2kHz),驱动简单(直流电压即可)。
  • 无源蜂鸣器:无内置振荡器,需外部提供脉冲信号(PWM)控制音调和频率,灵活性高。

核心工作原理

  • 电磁式蜂鸣器:利用电磁铁与振动膜片的吸合/释放产生声波,成本低但功耗较高。
  • 压电式蜂鸣器:基于压电陶瓷的逆压电效应,电压变形驱动金属片振动,高效耐用,常见于小型设备。

典型应用场景

  • 电子设备提示音:如微波炉完成提示、打印机状态报警。
  • 工业控制:设备故障或异常状态的声光报警系统。
  • 嵌入式开发:通过GPIO或PWM信号控制,实现自定义音效。

KEY(按键)&BUZZ(蜂鸣器)例程:

1:在仿真平台找到按键和蜂鸣器引脚,然后再stm32cubemx中配置相关引脚;

2:这里需要注意按键和蜂鸣器对应引脚的工作状态以及电平状态

:按键 输入状态(input)

:蜂鸣器 输出状态(output)低电平工作

前面已经教学按键模块;这里我们直接使用;

今日实验:

实验目的:

  1. 在STM32CubeMX软件中完成按键、LED灯、蜂鸣器的初始化配置(默认上电后LED灯全部关闭,蜂鸣器关闭);
  2. 创建按键扫描函数进行按键消抖(状态机思想消抖);
  3. 创建按键功能函数,按键1控制LED1的打开,按键2控制LED1关闭,按键3控制蜂鸣器打开,按键4控制蜂鸣器关闭;

1:在STM32CubeMX软件中完成按键、LED灯、蜂鸣器的初始化配置(默认上电后LED灯全部关闭,蜂鸣器关闭)

我们教学使用的STM32F401RB芯片

引脚配置详情:

其他基础操作前面有介绍,不详细教学;

2:按键函数已经实现消抖功能;我们可以直接使用。

3:在keil书写今日的实验要求代码:

我们引入宏定义变量定义蜂鸣器(PB3)和第一个LED灯(PC8)

cs 复制代码
if(Key_Flag==1)
		{
			Key_Flag=0;
			
			if(Key_Value==1)
			{
				LED1_ON;
				
			}
			else if(Key_Value==2)
			{
			 LED1_OFF;
				
			}
			else if(Key_Value==3)
			{
			 BUZZ_ON;
				
			}
		
			else if(Key_Value==4)
			{
			 BUZZ_OFF;
				
			}	

加上上节教学的按键函数即可实现功能:按键1控制LED1的打开,按键2控制LED1关闭,按键3控制蜂鸣器打开,按键4控制蜂鸣器关闭;

课后练习🐸:试着打开其他灯;改变按键按下蜂鸣器的时间

相关推荐
极客 - L U12 小时前
卡尔曼滤波从零到精通
c语言·数据结构·单片机·嵌入式硬件·mcu
AMASENSYS艾马斯13 小时前
变频器滤波器选型与EMC合规建议
驱动开发·单片机·其他·硬件工程·精益工程
码小文14 小时前
CAM350使用笔记(6)---Gerber文件铺铜间距检查
嵌入式硬件·cam350软件·cam350使用笔记
Yiran_G15 小时前
双频 Wi-Fi 6 + 蓝牙 5.4:无声讯通 WS8712 模组的开发与集成要点
网络·嵌入式硬件·物联网·智能家居
光子物联单片机16 小时前
ESP32传感器模块编程实践(一)DIY智能WIFI视频控制小车
嵌入式硬件·esp32·智能硬件·硬件
2501_9226395816 小时前
率能半导体 SS6628E直流双向马达驱动芯片:20V/7A,覆盖电子锁、玩具、无线充电、机器人四大应用场景
单片机·嵌入式硬件·硬件工程
硅基造物主17 小时前
STM32 从 0 到 1 做智能家居(五):工程结构与代码骨架
stm32·单片机·嵌入式硬件·智能家居
深圳老胡17 小时前
STM32F103 硬件 SPI 与软件 IO 模拟 SPI 最高速度差异详解
笔记·stm32·单片机·代码规范·1024程序员节
smartpi_ai17 小时前
机芯智能离线语音模块实战问答:SU-03T、CI-03T、SU-63T 与 JX-A7T 高频问题排查
人工智能·单片机·嵌入式硬件·ci/cd·语音识别
2501_9226395817 小时前
率能半导体 SS6635E直流双向马达驱动芯片:30V/4.5A,覆盖电子锁、玩具、无线充电、机器人四大应用场景
单片机·嵌入式硬件·硬件工程