当前位置: 首页 > news >正文

构建一个网站上海最新发布最新

构建一个网站,上海最新发布最新,顶做抱枕网站,域名网站建设方案《庐山派从入门到...》PWM板载蜂鸣器 配置PWM模块控制板载无源蜂鸣器播放【一闪一闪亮晶晶】播放do re mi 《庐山派从入门到...》PWM控制无源蜂鸣器 PWM(Pulse Width Modulation,脉宽调制)是一种在嵌入式系统中常用的技术,它可以用…

《庐山派从入门到...》PWM板载蜂鸣器

  • 配置PWM模块
  • 控制板载无源蜂鸣器
  • 播放【一闪一闪亮晶晶】
  • 播放do re mi

《庐山派从入门到...》PWM控制无源蜂鸣器


在这里插入图片描述

PWM(Pulse Width Modulation,脉宽调制)是一种在嵌入式系统中常用的技术,它可以用来模拟信号,控制设备的功率输出或者实现对设备的精确控制。PWM信号是一种类似于方波的信号,具有固定的频率,但脉冲宽度(占空比)可以调整。

频率(Frequency):指PWM信号在一秒内循环的次数。频率是周期的倒数,单位是赫兹(Hz)。
周期(Period):指一个完整的PWM信号的时间长度,与频率成反比。单位是秒(s)。
脉宽(Pulse Width):指PWM信号中高电平(通常为1)的时间长度。单位是秒(s)或毫秒(ms)。
占空比(Duty Ratio):表示在一个完整的PWM信号周期内,高电平(通常为1)所占的时间比例。占空比 = (脉宽 / 周期)x 100%。
上升沿(Rising Edge):PWM信号从低电平跳变到高电平的瞬间,通常用来作为触发事件。
下降沿(Falling Edge):PWM信号从高电平跳变到低电平的瞬间,也常被用作触发事件。
正脉冲宽度(Positive Pulse Width):PWM信号中高电平的持续时间,一般情况下的脉宽指的就是这个。
负脉冲宽度(Negative PulseWidth):PWM信号中低电平的持续时间。

在这里插入图片描述
在嵌入式系统中,PWM的应用场景非常广泛,例如:

电机控制:通过调整PWM的占空比,可以精确控制直流电机的转速。占空比越高,电机转速越快;占空比越低,电机转速越慢。
在这里插入图片描述

LED亮度调节:通过调整PWM的占空比,可以实现对LED灯的亮度调节。占空比越高,LED灯越亮;占空比越低,LED灯越暗。

在这里插入图片描述

在这里插入图片描述
这个就是我们的板载无源蜂鸣器了,蜂鸣器可以将电信号转化为声音信号,可以向用户提供声音反馈或者警报信号。
蜂鸣器从构造类型上有电磁式和电压式两种,从驱动方式上来说有无源(由外部方波驱动)和有源(由内部驱动,外部给电就行)两种,这里选择的是无源电磁式贴片蜂鸣器,工作电压2.5-4.5v,频率4000Hz,这里的频率是指他在这个频率下的声音最响。
可以用这个蜂鸣器来做人机交互的提示,也可以用不同的PWM来驱动这个蜂鸣器来播放简单的纯音调音乐。
在这里插入图片描述

配置PWM模块

⚠️注意!

K230 内部包含两个 PWM 硬件模块,每个模块具有三个输出通道。每个模块的输出频率可调,但三个通道共享同一时钟,而占空比则可独立调整。因此,通道 0、1 和 2 输出频率相同,通道 3、4 和 5 输出频率也相同。这里优先考虑的是板载功能的互斥,所以驱动蜂鸣器用的是PWM1,背光驱动用的是PWM5,这两个PWM通道之间没有耦合,可以随意调整。如果大家同时用到蜂鸣器和背光驱动的时候就要注意了,如果此时使用排针的PWM信号,那么他的频率也就是周期其实你已经不能改了,否则就会互相影响。

在这里插入图片描述
要使用 machine.PWM,首先需要导入该模块:

from machine import PWM

在这里插入图片描述

控制板载无源蜂鸣器

import time
from machine import PWM, FPIOA# 配置蜂鸣器IO口功能
beep_io = FPIOA()
beep_io.set_function(43, FPIOA.PWM1)# 初始化蜂鸣器PWM通道
beep_pwm = PWM(1, 4000, 50, enable=False)  # 默认频率4kHz,占空比50%# 使能PWM通道输出
beep_pwm.enable(1)
# 延时50ms
time.sleep_ms(50)
# 关闭PWM输出 防止蜂鸣器吵闹
beep_pwm.enable(0)
# 叫完了就释放PWM
beep_pwm.deinit()

播放【一闪一闪亮晶晶】

import time
from machine import PWM, FPIOA# 配置蜂鸣器IO口功能
beep_io = FPIOA()
beep_io.set_function(43, FPIOA.PWM1)# 初始化蜂鸣器
beep = PWM(1, 1000, 50, enable=False)  # 默认频率1kHz,占空比50%# 定义音符频率(以Hz为单位)
notes = {'C4': 261,'D4': 293,'E4': 329,'F4': 349,'G4': 392,'A4': 440,'B4': 493,'C5': 523
}# 定义《一闪一闪亮晶晶》旋律和节奏 (音符, 时长ms)
melody = [('C4', 500), ('C4', 500), ('G4', 500), ('G4', 500),('A4', 500), ('A4', 500), ('G4', 1000),('F4', 500), ('F4', 500), ('E4', 500), ('E4', 500),('D4', 500), ('D4', 500), ('C4', 1000)
]def play_tone(note, duration):"""播放指定音符"""frequency = notes.get(note, 0)  # 获取音符对应的频率if frequency > 0:beep.freq(frequency)        # 设置频率beep.enable(True)           # 启用蜂鸣器time.sleep_ms(duration)     # 持续播放指定时间beep.enable(False)          # 停止蜂鸣器time.sleep_ms(50)           # 音符之间的短暂停顿# 播放旋律
for note, duration in melody:play_tone(note, duration)# 释放PWM资源
beep.deinit()

播放do re mi

import time
from machine import PWM, FPIOA# 配置蜂鸣器IO口功能
beep_io = FPIOA()
beep_io.set_function(43, FPIOA.PWM1)# 初始化蜂鸣器
beep = PWM(1, 1000, 50, enable=False)  # 默认频率1kHz,占空比50%# 定义音符频率(以Hz为单位)
notes = {'do':523,'re':587,'mi':659,'fa':698,    'so':784,  'la':880,     'si':988,    }# 定义《一闪一闪亮晶晶》旋律和节奏 (音符, 时长ms)
melody = [('do',500),('re', 500), ('mi', 500), ('fa', 500),('so',500),('la', 500), ('si', 1000)
]def play_tone(note, duration):"""播放指定音符"""frequency = notes.get(note, 0)  # 获取音符对应的频率if frequency > 0:beep.freq(frequency)        # 设置频率beep.enable(True)           # 启用蜂鸣器time.sleep_ms(duration)     # 持续播放指定时间beep.enable(False)          # 停止蜂鸣器time.sleep_ms(50)           # 音符之间的短暂停顿# 播放旋律
for note, duration in melody:play_tone(note, duration)# 释放PWM资源
beep.deinit()

在这里插入图片描述

http://www.tj-hxxt.cn/news/80423.html

相关文章:

  • 做司法亲子鉴定网站今日的新闻
  • 申请网站建设近期新闻热点大事件
  • 可以做进销存的网站系统app宣传推广方案
  • 效果图素材网站百度搜索关键词指数
  • 怎么为自己做的网站申请域名百度快照优化seo
  • 律师做网络推广哪个网站好百度指数总结
  • 有哪些营销型网站推荐网络营销咨询服务
  • 日本 设计网站软文推广收费
  • 安徽网站开发费用网络营销案例及分析
  • 学校做网站有些什么好处seo快速软件
  • 公众平台网站开发哪家好百度竞价托管公司
  • 网站怎么做别名现在搜什么关键词能搜到网站
  • 怎样做网站赚流量seo自然排名关键词来源的优缺点
  • 小蚂蚁page页面模板上海牛巨仁seo
  • 做百度网站每年的费用多少合适扫一扫识别图片
  • 海口网站建设谷歌搜索引擎网址
  • 微信公众号营销公司网络优化方案
  • 网站站做地图软件什么样的人适合做营销
  • app建设网站公司哪家好怎样在百度上免费建网站
  • 邯郸做网站xy0310怎么自己制作网页
  • 优秀企业宣传ppt快推达seo
  • 婚庆网站设计说明书百度推广教程视频教程
  • 网站多语言模块seosem是指什么意思
  • 用树莓派做网站服务器好吗提升神马关键词排名报价
  • wordpress首页添加站点统计显示seo推广技巧
  • 网站适合移动端网络公司seo教程
  • 上海网站开发工程师招聘网域名停靠浏览器
  • 网站建设的本质链接买卖是什么意思
  • asp.net 做网站企业策划书
  • 昆明专业网站排名推广培训学校网站