]> vault307.fbx.one Git - random.git/blob - playSong.py
different projects to learn new things
[random.git] / playSong.py
1 from machine import Pin, PWM
2 from utime import sleep
3 buzzer = PWM(Pin(16))
4
5 tones = {
6 "B0": 31,
7 "C1": 33,
8 "CS1": 35,
9 "D1": 37,
10 "DS1": 39,
11 "E1": 41,
12 "F1": 44,
13 "FS1": 46,
14 "G1": 49,
15 "GS1": 52,
16 "A1": 55,
17 "AS1": 58,
18 "B1": 62,
19 "C2": 65,
20 "CS2": 69,
21 "D2": 73,
22 "DS2": 78,
23 "E2": 82,
24 "F2": 87,
25 "FS2": 93,
26 "G2": 98,
27 "GS2": 104,
28 "A2": 110,
29 "AS2": 117,
30 "B2": 123,
31 "C3": 131,
32 "CS3": 139,
33 "D3": 147,
34 "DS3": 156,
35 "E3": 165,
36 "F3": 175,
37 "FS3": 185,
38 "G3": 196,
39 "GS3": 208,
40 "A3": 220,
41 "AS3": 233,
42 "B3": 247,
43 "C4": 262,
44 "CS4": 277,
45 "D4": 294,
46 "DS4": 311,
47 "E4": 330,
48 "F4": 349,
49 "FS4": 370,
50 "G4": 392,
51 "GS4": 415,
52 "A4": 440,
53 "AS4": 466,
54 "B4": 494,
55 "C5": 523,
56 "CS5": 554,
57 "D5": 587,
58 "DS5": 622,
59 "E5": 659,
60 "F5": 698,
61 "FS5": 740,
62 "G5": 784,
63 "GS5": 831,
64 "A5": 880,
65 "AS5": 932,
66 "B5": 988,
67 "C6": 1047,
68 "CS6": 1109,
69 "D6": 1175,
70 "DS6": 1245,
71 "E6": 1319,
72 "F6": 1397,
73 "FS6": 1480,
74 "G6": 1568,
75 "GS6": 1661,
76 "A6": 1760,
77 "AS6": 1865,
78 "B6": 1976,
79 "C7": 2093,
80 "CS7": 2217,
81 "D7": 2349,
82 "DS7": 2489,
83 "E7": 2637,
84 "F7": 2794,
85 "FS7": 2960,
86 "G7": 3136,
87 "GS7": 3322,
88 "A7": 3520,
89 "AS7": 3729,
90 "B7": 3951,
91 "C8": 4186,
92 "CS8": 4435,
93 "D8": 4699,
94 "DS8": 4978
95 }
96
97 song = ["E5","G5","A5","P","E5","G5","B5","A5","P","E5","G5","A5","P","G5","E5"]
98
99 def playtone(frequency):
100 buzzer.duty_u16(2000)
101 buzzer.freq(frequency)
102
103 def bequiet():
104 buzzer.duty_u16(0)
105
106 def playsong(mysong):
107 for i in range(len(mysong)):
108 if (mysong[i] == "P"):
109 bequiet()
110 else:
111 playtone(tones[mysong[i]])
112 sleep(0.3)
113 bequiet()
114 playsong(song)