一:
1.蜂鳴器的種類
蜂鳴器是一種常用的電子發聲元器件,采用直流電壓供電。廣泛應用于計算機,打ED機,報警器,電子玩具,汽車電子設備燈等產品中常見的蜂鳴器可分為有源蜂鳴器和無源蜂鳴器。
2.蜂鳴器的控制方式
有源蜂鳴器:內部有震蕩源,只要通電即可自動發出固定頻率的聲音。(頻率固定無法控制音色)
無源蜂鳴器:內部無震蕩源,需要外部脈沖信號驅動發聲,聲音頻率可變。(可改變頻率來改變音色)
3.區分蜂鳴器
從外觀上來看兩種蜂鳴器形狀相似,有源蜂嗚器底部有黑膠密封。無源峰鳴器底部可以看到電路板,兩種蜂鳴器都標注有正負極。
4:軟件設計流程
·初始化系統
。 初始化GPIO外設時鐘GPIOA
。 初始化蜂鳴器的引腳 A3
。輸出電平控制蜂鳴題
5:寫工程
a:建立bear(蜂鳴器)的.c文件
#include"Bear.h"
#include"stm32f10x.h"void Bear_Init(void)//蜂鳴器的初始化函數
{//有兩個步驟,1:初始化蜂鳴器引腳A3 2:初始化時鐘,GPIO_InitTypeDef Bear_Initstrurt;//初始化蜂鳴器結構體,這一句是定義一個結構體變量RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE );//初始化APB2下的GPIO時鐘//下面是配置結構體的參數Bear_Initstrurt.GPIO_Pin=GPIO_Pin_3;//配置引腳為GPIO_PIN_3,也就是GPIOA3引腳Bear_Initstrurt.GPIO_Speed=GPIO_Speed_10MHz;//配置A3引腳傳輸速度為10MHZBear_Initstrurt.GPIO_Mode=GPIO_Mode_Out_PP;//配置A3引腳輸出模式為推挽輸出GPIO_Init(GPIOA,&Bear_Initstrurt);//初始化GPIOA3的結構體}
b:寫Bear.h(頭文件)
void Bear_Init(void);//聲明函數
c:寫main主函數
#include "stm32f10x.h"
#include "main.h"
#include "led.h"
#include "Bear.h"void delay(uint16_t time)//延時1ms 軟件延時粗延時
{uint16_t i=0;while(time --){i=12000;while(i --);}}int main()
{LED_Init();Bear_Init();//初始化蜂鳴器的引腳GPIO A3while(1){GPIO_ResetBits(GPIOA, GPIO_Pin_3);//讓GPIO A3輸出低電平,蜂鳴器就響了}}