836|1

188

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【得捷电子Follow me第1期】任务2:蜂鸣器驱动 [复制链接]

 

首先来一个简单的,变频率的蜂鸣器,声音会越来越尖锐。直接上程序吧,

import machine
from machine import Pin
import time

led = Pin("LED",Pin.OUT)
buzze = machine.Pin(26)
pwm1 = machine.PWM(buzze)

frep1 = 100

pwm1.freq(frep1)
pwm1.duty_u16(32768)

while True:
    led.value(1)
    frep1 += 100
    pwm1.freq(frep1)
    time.sleep(.25)
    led.value(0)
    time.sleep(.25)
    if frep1 > 2400:
        frep1 = 200

实验二,根据不同的频率对应音乐的不同音调,在其他网友的基础上改的一个《生日歌》

蜂鸣器 生日快乐歌

生日快乐歌的简谱见下图,我也不懂音律就不做解析了,按照上面的谱进行设置。

测试代码见下。

from machine import Pin, PWM
from time import sleep

buzzer = PWM(Pin(20))
vol = 1300  #音量大小
def DO(time):
    buzzer.freq(1046) #1
    buzzer.duty_u16(vol)
    sleep(time)
def RE(time):
    buzzer.freq(1175) #2
    buzzer.duty_u16(vol)
    sleep(time)
def MI(time):
    buzzer.freq(1318) #3
    buzzer.duty_u16(vol)
    sleep(time)
def FA(time):
    buzzer.freq(1397) #4
    buzzer.duty_u16(vol)
    sleep(time)
def SO(time):
    buzzer.freq(1568) #5
    buzzer.duty_u16(vol)
    sleep(time)
def LA(time):
    buzzer.freq(1760) #6
    buzzer.duty_u16(vol)
    sleep(time)
def SI(time):
    buzzer.freq(1967) #7
    buzzer.duty_u16(vol)
    sleep(time)
def N(time):
    buzzer.duty_u16(0) #close
    sleep(time)
while True:

    SO(0.17) #5
    N(0.01) #0
    SO(0.17) #5
    
    LA(0.33) #6
    SO(0.33) #5
    DO(0.33) #1
    N(0.01) #0
    
    SI(0.33) #7-
    N(0.01) #0
    SI(0.33) #7-    
    SO(0.33) #5
    
    LA(0.33) #6
    SO(0.33) #5
    RE(0.33) #2    
    N(0.01) #0
    
    DO(0.33) #1
    N(0.01) #0
    DO(0.33) #1
    SO(0.33) #5

    SO(0.33) #5
    MI(0.33) #3
    DO(0.33) #1    
    N(0.01) #0
    DO(0.33) #1

    SI(0.33) #7-
    LA(0.33) #6
    N(0.01) #0
    LA(0.33) #6
    
    N(0.01) #0        
    FA(0.33) #4
    N(0.01) #0
    FA(0.33) #4

    MI(0.33) #3
    RE(0.33) #2
    DO(0.33) #1    
    N(0.01) #0
    
    DO(0.33) #1    
    N(0.67) #0    


 

最新回复

牛     详情 回复 发表于 2023-6-26 21:31
点赞 关注
 
 

回复
举报

83

帖子

0

TA的资源

一粒金砂(中级)

沙发
 

 

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表