buzzer.c内各驱动函数:
蜂鸣器的接口初始化
void BUZZER_Init(void){
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = BUZZER;
//选择端口号
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
//选择IO接口工作方式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
//设置IO接口速度(2/10/50MHz)
GPIO_Init(BUZZERPORT, &GPIO_InitStructure);
GPIO_WriteBit(BUZZERPORT,BUZZER,(BitAction)(1));
//蜂鸣器接口输出高电平1(保护作用)
}
蜂鸣器响一声(可修改音调和鸣响时间)
void BUZZER_BEEP1(void){
u16 i;
for(i=0;i<200;i++){
GPIO_WriteBit(BUZZERPORT,BUZZER,(BitAction)(0));
//蜂鸣器接口输出0
delay_us(500);
//延时
GPIO_WriteBit(BUZZERPORT,BUZZER,(BitAction)(1));
//蜂鸣器接口输出高电平1
delay_us(500);
//延时
}
}
void BUZZER_BEEP2(void){
u16 i;
for(i=0;i<500;i++){
GPIO_WriteBit(BUZZERPORT,BUZZER,(BitAction)(0));
//蜂鸣器接口输出0
delay_us(250);
//延时
GPIO_WriteBit(BUZZERPORT,BUZZER,(BitAction)(1));
//蜂鸣器接口输出高电平1
delay_us(250);
//延时
}
}
函数调用较为简单,不再赘述。