关于蜂鸣器响起的编程原理是和点亮LED差不多的,我们首先分析原理图。

stm32蜂鸣器怎么安装(STM32学习笔记蜂鸣器)(1)

此处的S8050是一个三极管,我们作用在BEEP上是高电平就可以使得蜂鸣器导通发出声响,如果是低电平就不响。

首先先是打开时钟,在APB2总线上的GPIOB端口,使能GPIO时钟;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);//使能 GPIOB 端口时钟

然后接着定义结构体配置PB8引脚和输出模式、速度。然后给与初始化低电平,确保其不响。

GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_ResetBits(GPIOB,GPIO_Pin_8); //BEEP-->GPIOB.8 端口配置

关于头文件中的编写我们只需位带操作,如下就可以简单方便的控制PB8引脚。

#define BEEP PBout(8)

因此主函数中包含了头文件后只需要一句BEEP==1,就可以让蜂鸣器响起了。

,