这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 【Let'sdo第3期-拾色播放器DIY】--05--喇叭和接近传感器使用

共1条 1/1 1 跳转至

【Let'sdo第3期-拾色播放器DIY】--05--喇叭和接近传感器使用

专家
2025-12-08 16:28:15     打赏

图片.png

活动中使用的接近传感器可以串联到pwm的输出上,当有磁铁接近,传感器导通。

 如上连接,模组可以驱动喇叭发出声音

import time
import board
import neopixel
import pwmio

pixel = neopixel.NeoPixel(board.NEOPIXEL, 1)

pixel.brightness = 0.1
 
"""

    red: (255, 0, 0)
    green: (0, 255, 0)
    blue: (0, 0, 255)
    cyan: (0, 255, 255)
    purple: (255, 0, 255)
    yellow: (255, 255, 0)
    white: (255, 255, 255)
    black (off): (0, 0, 0)

"""

yifu_f = [ 261,293,329,349,392,440,493,523]
buzzer = pwmio.PWMOut(board.D13, duty_cycle=0, frequency=440, variable_frequency=True)

def play_tone(frequency, duration):  
    """播放指定频率和持续时间的音调"""  
    if frequency == 0:  
        # 静音  
        buzzer.duty_cycle = 0  
    else:  
        # 设置频率并启动声音  
        buzzer.frequency = frequency  
        buzzer.duty_cycle = 32768  # 50%占空比  
    time.sleep(duration) # 注意:这里会暂停程序运行  
    # 停止声音  
    buzzer.duty_cycle = 0  
    # 音符间短暂停顿  
    time.sleep(0.05)
    
while True:
    for i in range(255):
        pixel.fill((i,255-i,i))
    for f in yifu_f:  
        play_tone(f, 0.1)

图片.png




关键词: 拾色播放器     pwm     喇叭    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]