buzzer.h
1.0 KB
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
#ifndef __BUZZER_H
#define __BUZZER_H
#include <stdint.h>
#define Octave 5 //设定八度
#define quiet_100 100*2 //静音200ms
#define quiet_200 200*2 //静音200ms
#define quiet_400 400*2//静音400ms
#define quiet_600 600*2//静音600ms
typedef struct {
uint32_t octave ; // 八度
uint8_t note; // 音符
uint32_t play_time
} ToneNote;
// 定义一个结构体来存储音调(八度)和音符
typedef enum {
Start = 1,
Connect,
Enter,
Quit
} MusicIndex;
// 定义一个结构体来存储音符数字和频率
typedef struct {
uint8_t note; // 音符,C=0, D=1, E=2, F=3, G=4, A=5, B=6
uint32_t frequency; // 对应的频率,以Hz为单位
} NoteFrequency;
extern const ToneNote MelodyStart[3];
extern const ToneNote MelodyConnect[3];
extern const ToneNote MelodyEnter[2];
extern const ToneNote MelodyQuit[2];
extern volatile float Ud;
extern void playMusic(const ToneNote *Melody,uint32_t size);
extern void playMusic_Ud(const ToneNote *Melody,uint32_t size);
#endif