用Raspberry Pi Pico 控制蜂鳴器產生曲調


from machine import Pin, PWM
from time import sleep

def buzzer(buzzerPinObject,frequency,sound_duration,silence_duration):

    buzzerPinObject.duty_u16(int(65536*0.2))
    buzzerPinObject.freq(frequency)
    sleep(sound_duration)
    buzzerPinObject.duty_u16(int(65536*0))
    sleep(silence_duration)

def play( n, sound=0.5, silence=0.1 ):
    if n == 'C':
        buzzer(BuzzerObj,523,sound,silence)
    elif n == 'D':
        buzzer(BuzzerObj,587,sound,silence)
    elif n == 'E':
        buzzer(BuzzerObj,659,sound,silence)
    elif n == 'F':
        buzzer(BuzzerObj,698,sound,silence)
    elif n == 'G':
        buzzer(BuzzerObj,784,sound,silence)
    elif n == 'A':
        buzzer(BuzzerObj,880,sound,silence)
    elif n == 'B':
        buzzer(BuzzerObj,987,sound,silence)
    elif n == 'HC':
        buzzer(BuzzerObj,523*2,sound,silence)
    elif n == 'HD':
        buzzer(BuzzerObj,587*2,sound,silence)
    elif n == 'HE':
        buzzer(BuzzerObj,659*2,sound,silence)
    elif n == 'HF':
        buzzer(BuzzerObj,698*2,sound,silence)
    elif n == 'HG':
        buzzer(BuzzerObj,784*2,sound,silence)
    elif n == 'HH':
        buzzer(BuzzerObj,880*2,sound,silence)
    elif n == 'HI':
        buzzer(BuzzerObj,987*2,sound,silence)
BuzzerObj = PWM(Pin(0))

tap = 0.5
play('A', sound=tap*2)
play('G', sound=tap)
play('E', sound=tap, silence=0.1)
play('E', sound=tap, silence=0.1)
play('E', sound=tap, silence=0.1)
play('D', sound=tap*5,silence=0.1)
play('D', sound=tap,silence=0.1)
play('D', sound=tap,silence=0.1)
play('D', sound=tap,silence=0.1)
play('A', sound=tap,silence=0.1)
play('A', sound=tap,silence=0.1)
play('G', sound=tap,silence=0.1)
play('E', sound=tap*5,silence=0.1)
play('A', sound=tap*2)
play('G', sound=tap)
play('E', sound=tap, silence=0.1)
play('E', sound=tap, silence=0.1)
play('E', sound=tap, silence=0.1)
play('D', sound=tap*5,silence=0.1)
play('D', sound=tap,silence=0.1)
play('D', sound=tap,silence=0.1)
play('D', sound=tap,silence=0.1)
play('A', sound=tap,silence=0.1)
play('A', sound=tap,silence=0.1)
play('B', sound=tap,silence=0.1)
play('HC', sound=tap*5,silence=0.1)

留言

這個網誌中的熱門文章

鯨的研究報告