www.pudn.com > sound-source-location.rar > bz.c, change:2014-07-27,size:1198b


#include "bz.h" 
 
/** 
  * @brief  LED IO初始化 
  * @param  None 
  * @retval None 
	* @note   LED链接到GPIOB.12,低电平亮,高电平灭 
  */ 
void BZ_Init(void) 
{ 
	GPIO_InitTypeDef GPIO_InitStructure;	 
        
  /* 使能GPIOB时钟 */ 
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 
 
  /* 配置GPIOB.12为推挽输出模式 */ 
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; 
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 
  GPIO_Init(GPIOA, &GPIO_InitStructure); 
	 
	GPIO_ResetBits(GPIOA, GPIO_Pin_0);//设置GPIOA.0为低电平,关闭BZ 
} 
 
/** 
  * @brief  开启蜂鸣器 
  * @param  None 
  * @retval None 
	* @note   蜂鸣器链接到GPIOA.0,低电平关,高电平开 
  */ 
void BZ_On(void) 
{ 
	BZ = 1; 
} 
 
/** 
  * @brief  关闭蜂鸣器 
  * @param  None 
  * @retval None 
	* @note   蜂鸣器链接到GPIOA.0,低电平关,高电平开 
  */ 
void BZ_Off(void) 
{ 
	BZ = 0; 
} 
 
/** 
  * @brief  蜂鸣器鸣响1MS 
  * @param  None 
  * @retval None 
	* @note    蜂鸣器链接到GPIOA.0,低电平关,高电平开 
  */ 
void BZ_1MS(uint8_t n) 
{ 
	uint8_t loopsta; 
	for(loopsta=0;loopsta<50;loopsta++) 
	{ 
		for(;n>0;n--) 
		{ 
			BZ = !BZ; 
			delay_us(20); 
		} 
	} 
}