import machine
import time
# Khởi tạo các chân GPIO để kết nối với các phím bấm
p0 = machine.Pin(19, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 0
p1 = machine.Pin(21, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 1
p2 = machine.Pin(22, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 2
p3 = machine.Pin(23, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 3
p4 = machine.Pin(18, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 4
p5 = machine.Pin(5, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 5
p6 = machine.Pin(4, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 6
p7 = machine.Pin(2, machine.Pin.IN, machine.Pin.PULL_UP) # Chân GPIO 7
# Thiết lập chế độ bật/tắt GPIO
OFF = 0
ON = 1
# Định nghĩa các âm thanh
NOTE_C4 = 262
NOTE_D4 = 294
NOTE_E4 = 330
NOTE_F4 = 349
NOTE_G4 = 392
NOTE_A4 = 440
NOTE_B4 = 494
NOTE_C5 = 523
# Hàm phát ra âm thanh
def play_sound(frequency):
pwm = machine.PWM(machine.Pin(25), freq=frequency)
pwm.duty(512)
time.sleep_ms(500)
pwm.deinit()
# Vòng lặp chính
while True:
# Kiểm tra các phím bấm
if p0.value() == OFF:
play_sound(NOTE_C4)
if p1.value() == OFF:
play_sound(NOTE_D4)
if p2.value() == OFF:
play_sound(NOTE_E4)
if p3.value() == OFF:
play_sound(NOTE_F4)
if p4.value() == OFF:
play_sound(NOTE_G4)
if p5.value() == OFF:
play_sound(NOTE_A4)
if p6.value() == OFF:
play_sound(NOTE_B4)
if p7.value() == OFF:
play_sound(NOTE_C5)