iT邦幫忙

0

Day 5, 用Raspberry Pi Pico發出久違的Nokia之歌

  • 分享至 

  • xImage
  •  

明明之前是D1 mini,為甚麼突然換了一樣東西?
恩,因為我遇到了一些難題(也許對其他人而言是小問題),所以只好先換一個囉。
有人說失敗了,能學會自省再出發,自從我身邊的人知道我用thonny執行python程式檔時,提醒我這是給初級程式使用者的,如果要學得更好,就要用別的環境,因此,我要開始慢慢熟悉別的平台了。QQ
材料有

  1. Raspberry Pi Pico
  2. 按壓開關
    電路圖日後更新
    使用環境依然是thonny
    直譯器是Circuitpython
    下載方式下一次做更新。
import board
import time
import pwmio
# Nokie linux
#-f 659 -l 125 -n -f 587 -l 125 -n -f 367 -l 250 -n 
#-f 415 -l 250 -n -f 554 -l 125 -n -f 494 -l 125 -n 
#-f 294 -l 250 -n -f 330 -l 250 -n -f 494 -l 125 -n -f 440 -l 125 -n 
#-f 277 -l 250 -n -f 330 -l 250 -n -f 440 -l 500
from digitalio import DigitalInOut, Direction, Pull

button = DigitalInOut(board.GP14)
button.direction = Direction.INPUT
button.pull = Pull.UP

buzzer = pwmio.PWMOut( board.GP13, frequency = 262, duty_cycle = 0, variable_frequency=True)
notes = [[659, 0.125], [587, 0.125], [367, 0.250],[415, 0.250], [554, 0.125], [494, 0.125]
         ,[294, 0.250], [330, 0.250], [494, 0.125], [440, 0.125], [277, 0.250], [330, 0.250],[440, 0.500]]

while True:
    if button.value == False:
        for note in notes:
            if note==0:
                buzzer.duty_cycle = 0
            else:
                buzzer.frequency = note[0]
                buzzer.duty_cycle = 2**15
                time.sleep(note[1])

            
        buzzer.duty_cycle = 0
        time.sleep(0.1)



圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言