Buzzer.h 1.29 KB
Newer Older
崔立宝's avatar
崔立宝 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
/******************************************************************************
文 件 名:Buzzer.c
功能描述:蜂鸣器驱动库头文件
作    者:张暄
版    本:V1.0
日    期:2016.5.18
******************************************************************************/

#ifndef _BUZZER_H_
#define _BUZZER_H_

#include "GPIO.h"
#include "PWM.h"
#include "Sound_Tracks.h"



/******************************************************************************
硬件配置
******************************************************************************/
#define   BUZZER_PWM_CHANNEL                4
#ifndef   BUZZER_CTRL
  #define BUZZER_CTRL                       LINE_BUZZER
#endif





#define   BUZZER_MODE_IDLE                  0
#define   BUZZER_MODE_SINGLE                1
#define   BUZZER_MODE_LOOP                  2


typedef struct
{
  uint8_t   Mode;
  uint8_t   Track;
  uint8_t   Note;
  uint16_t  Timer;
  uint16_t  Fade;
}BuzzerPlayCtrlStruct;









/******************************************************************************
函数声明
******************************************************************************/
void Buzzer_Start_Up(void);
void Buzzer_Shutdown(void);
void Buzzer_Play_Track(uint8_t TrackID);
void Buzzer_Repeat_Play_Track(uint8_t TrackID);
void Buzzer_Stop_Play(void);
void Buzzer_Play_ISR(void);
#endif