173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

蜂鸣器与stm32单片机连接

keros@mark 2023-03-17 资讯中心

这是stm32开发板的一部分原理图,请问其中的LED和蜂鸣器都接在PD4,我要怎么操作蜂鸣器呢?

不用管LED,你直接当你这个直接有蜂鸣器就行了,

你就给PD4发蜂鸣器的型号就可以了;

你的那个JP48是个跳线帽还是个什么你要把它接上;

STM32蜂鸣器实验(位操作)

1.beep.h文件中写入

//蜂鸣器端口定义

void BEEP_Init(void); //初始化

2.beep.c文件中写入

//初始化 PB8 为输出口.并使能这个口的时钟

//LED IO 初始化

void BEEP_Init(void)

{

GPIO_InitTypeDef GPIO_InitStructure; //结构体指针

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

//使能 GPIOB 端口时钟

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //BEEP--GPIOB.8 端口配置

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度为 50MHz

GPIO_Init(GPIOB, GPIO_InitStructure); //根据参数初始化 GPIOB.8

GPIO_ResetBits(GPIOB,GPIO_Pin_8); //输出 0,关闭蜂鸣器输出

}

main主函数里面写入

//ALIENTEK 精英 STM32 开发板实验 2

//蜂鸣器实验

int main(void)

{

delay_init(); //延时函数初始化

LED_Init(); //初始化与 LED 连接的硬件接口ALIENTEK 精英 STM32F103 V1 开发板教程

BEEP_Init(); //初始化蜂鸣器端口

while(1)

{

LED0=0; //位操作,LED0为低电平

BEEP=0; //位操作,BEEP为低电平

delay_ms(300); //延时300毫秒

LED0=1;

BEEP=1;

delay_ms(300);

}

}

stm32开发板的电路原理图,4个按键分别连接到mcu的哪几个io口,蜂鸣器连接到m

按键检测的话可以连接到任意的GPIO上面,只要初始化配置为输入,程序中采集该GPIO的电平状态来判断按键的状态即可。另外也可以使用GPIO的外部中断功能来判断按键状态。蜂鸣器把GPIO配置为输出就能控制了。

本文标签:蜂鸣器与stm32单片机连接

产品列表
产品封装
友情链接