0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于FPGA的音乐蜂鸣器设计

电子工程师 来源:FPGA设计论坛 作者:FPGA设计论坛 2020-11-11 09:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

基于FPGA的音乐蜂鸣器设计

设计背景

蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。在一般设计中,可利用蜂鸣器检测有些按键是否按下,或者有些功能是否正常等,当然如果足够浪漫,也可以让蜂鸣器演奏音乐。


设计原理

本设计使用的是无源蜂鸣器,也可称为声响器,原理电路图如下所示。它没有内部驱动电路,无源蜂鸣器工作的理想信号为方波,如果给直流,蜂鸣器是不响应的,因为磁路恒定,钼片不能震动发音。根据电路图可知,由于 FPGA 的驱动能力不够,这里增加了一个三极管来驱动这个无源蜂鸣器。在驱动时,只需要向蜂鸣器发送一定频率的方波,就可以使蜂鸣器发声。那么应该发送怎样的频率呢?具体则可参考下表(音节频率表)

乐曲能连续演奏所需要的两个基本数据是:组成乐曲的每个音符的频率值(音调)和每个音符持续的时间(音长)。因此只要控制 FPGA输出到蜂鸣器的激励信号频率的高低和持续时间,就可以使蜂鸣器发出连续的乐曲声。在本设计中,由于至芯开发板的晶振为 50MHz,所以我们需要一个一个分频模块(PLL)产生一个较低的基准频率(1MHz)。还需要一个空间储存乐谱,由于乐谱是固定的不需要更改,所以我们选择 ROMIP 核进行存储。基准频率 1MHz 可分频得到所有不同频率的信号。最大的分频比为1_000_000/262/2。既然是音乐,那么就需要节拍,一般采用 4 拍,即音长为 0.25s,所以还需设计一个模块,控制每 0.25s,ROM 地址加 1,。如果需要发送一个低音 1 并维持 1 秒,则只需要在 ROM 的连续四个地址中写入低音 1 的对应信息即可。在设计中为了方便在 ROM 中储存数据,这里数据格式为 8’hAB,其中 A 暂时为三个值 1、2、4,分别表示低音、中音、高音。B 暂时为七个值 1、2、3、4、5、6、7。比如要产生一个低音 1,只需在 ROM中存储 8’h11,如要产生一个高音 7,只需在 ROM中存储 8’h47,以此类推即可。这时,就需要一个解码模块,将 ROM 中的数据还原成音乐发生器所需要的数据。


设计架构图

根据上述的分析,得到如下的架构图

本设计包括 6 个模块,PLL 模块把 50MHz 的时钟信号降到 1MHz,rom 模块存储音乐数据,time_counter 是一个计数模块,产生节拍,每到 0.25s,输出的 time_finsh 变为一个周期的高电平。并发送给addr_gen 模块,产生 addr,让 rom 输出下一个地址的数据。rom 输出的数据 rom_data 输入到 decode 解码模块,将解码后的数据music_data 输入到 music_gen 模块,通过计数器,如果计数器小于music_data 的值,则 beep 保持不变,否则,beep 取反,并且计数器

清 1,从而产生特定的方波频率。


设计代码

time_counter 模块代码如下:

addr_gen 模块代码如下:

decode 解码模块代码如下:

music_gen 模块代码如下:

beep 顶层模块代码如下:

仿真

仿真结果如下:

由仿真图可知:当 rom 输出 rom_data 为 8’h16 时,代表输出低音6,解码后结果 music_data 为 1136,输出的 beep 频率为 440Hz,与实际低音 6 的音节频率表的值一致;当 rom 输出 rom_data 为 8’h22时,代表输出中音 2,解码后结果 music_data 为 851,输出的 beep频率为 563Hz,与实际中音 2 的音节频率表的值相差 24Hz,存在一定的误差,但是不影响乐曲的播放。如果想提高 beep 频率的精度,减小误差,则可以将 1MHz 的基准频率提高。

责任编辑:lq


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1655

    文章

    22283

    浏览量

    630278
  • ROM
    ROM
    +关注

    关注

    4

    文章

    578

    浏览量

    88546
  • 蜂鸣器
    +关注

    关注

    12

    文章

    897

    浏览量

    47605

原文标题:FPGA入门课程 音乐蜂鸣器设计

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MarketsandMarkets FPGA行业报告,2026~2030 FPGA市场洞察

    2025年10月,全球知名市场研究与商业洞察权威咨询机构 MarketsandMarkets 发布 Field-Programmable Gate Array (FPGA) MarketSize
    的头像 发表于 11-20 13:20 120次阅读
    MarketsandMarkets <b class='flag-5'>FPGA</b>行业报告,2026~2030 <b class='flag-5'>FPGA</b>市场洞察

    RV-STAR开发板蜂鸣器播放音乐

    下载:music_player 本工程由nucleistudio建立,连接蜂鸣器引脚为PA8,具体代码见附件。 #include "beep.h"
    发表于 11-05 06:16

    深入解析TE Connectivity ALCOSWITCH系列LED指示灯与蜂鸣器技术特性与应用

    TE Connectivity/Alcoswitch LED指示灯(ILE)和蜂鸣器(IBE)是同类领先的LED和有声器件。ILE指示灯设有具有均匀明亮照明的双LED,可为各种应用提供宽电压范围
    的头像 发表于 11-03 09:21 314次阅读
    深入解析TE Connectivity ALCOSWITCH系列LED指示灯与<b class='flag-5'>蜂鸣器</b>技术特性与应用

    北京君正X2000:小成本打造流媒体HiFi系统音乐接收器

    在这个数字化与音频技术飞速发展的时代,音乐爱好者们对于音乐播放设备的要求越来越高。不仅追求出色的音质,还渴望便捷的操作和多样化的使用场景。飞傲SR11流媒体音乐接收器,正是这样一款能够满足音乐
    的头像 发表于 08-30 10:13 958次阅读

    Altera Agilex™ 3 FPGA和SoC FPGA

    Altera Agilex™ 3 FPGA和SoC FPGA Altera/Intel Agilex™ 3 FPGA和SoC FPGA使创新者能够将成本优化的设计提升到更高的性能水平。
    的头像 发表于 08-06 11:41 3669次阅读
    Altera Agilex™ 3 <b class='flag-5'>FPGA</b>和SoC <b class='flag-5'>FPGA</b>

    关于有源蜂鸣器及无源蜂鸣器的区别及驱动各类单片机案例

    本文主要介绍了有源无源蜂鸣器的本质区别,引脚判断和对应的驱动程序,对我们选用蜂鸣器元件指引了方向
    的头像 发表于 07-22 09:45 1921次阅读
    关于有源<b class='flag-5'>蜂鸣器</b>及无源<b class='flag-5'>蜂鸣器</b>的区别及驱动各类单片机案例

    无线充电音乐台灯不插电源能听歌吗?

    无线充电音乐台灯在不插电源下,能继续享受音乐,但电量耗尽将无法使用。内置电池可提供灵活性,但低电量模式下可能牺牲音乐播放。用户需预估电量消耗。
    的头像 发表于 06-16 09:03 985次阅读
    无线充电<b class='flag-5'>音乐</b>台灯不插电源能听歌吗?

    智多晶FPGA设计工具HqFpga接入DeepSeek大模型

    在 AI 赋能工程设计的时代浪潮中,智多晶率先迈出关键一步——智多晶正式宣布旗下 FPGA 设计工具 HqFpga 接入 DeepSeek 大模型,并推出 FPGA 设计专属 AI 助手——晶小助!这是
    的头像 发表于 06-06 17:06 1126次阅读

    音乐盒芯片方案——N9305音乐芯片

    音乐盒芯片方案开发音乐盒,作为一种融合艺术与机械智慧的精巧物件,散发着独特魅力。它以灵动的音符为载体,承载着人们的情感、回忆与祝福。从孩童手中开启梦幻世界的木质八音盒,到恋人间传递爱意的精致音乐
    的头像 发表于 06-05 15:29 617次阅读
    <b class='flag-5'>音乐</b>盒芯片方案——N9305<b class='flag-5'>音乐</b>芯片

    恩雅吉他奏响音乐科技新旋律,启明云端荣获优秀合作伙伴称号

    音乐与科技相互交融、共同革新的时代浪潮中,ENYAMUSIC恩雅音乐将乐鑫科技产品方案深度应用于吉他产品,为音乐爱好者带来新体验,成为了一道耀眼的风景线。启明云端作为乐鑫科技代理商,在这过程中见证
    的头像 发表于 04-14 18:12 740次阅读
    恩雅吉他奏响<b class='flag-5'>音乐</b>科技新旋律,启明云端荣获优秀合作伙伴称号

    怎么测量有源蜂鸣器的电感

    用特定仪器或者自己搭电路的方式,怎么测出有源蜂鸣器的电感
    发表于 03-20 10:07

    QJ系列胶壳蜂鸣器产品参考说明书

    胶壳蜂鸣器因其卓越的性能特点,在报警装置中发挥着重要作用。这种蜂鸣器采用环氧树脂灌封胶全面防护,确保在各种恶劣环境下都能稳定工作,如防尘、防水、耐高低温,有效防止电击穿。其粘附力和密封性出色,能够
    发表于 02-27 13:44 0次下载

    网易云音乐携手DeepSeek-R1大模型,升级音乐服务体验

    近日,网易云音乐宣布了一项重要技术进展,其面向创作者精心研发的音乐播客生成工具与对谈播客生成工具,现已成功接入前沿的DeepSeek-R1大模型。这一举措标志着网易云音乐在智能音乐服务
    的头像 发表于 02-19 09:24 1001次阅读

    蜂鸣器与电吉他拾音器区别

    蜂鸣器(Buzzers) 定义与功能 蜂鸣器是一种小型的电子设备,主要用于产生声音信号。它们通常用于报警、通知、定时器和其他需要声音反馈的场合。蜂鸣器的声音通常是单一频率的,可以是连续的或间歇
    的头像 发表于 01-02 15:53 1253次阅读

    大多数FPGA的程序存储器(FLASH)为什么都放在外面呢?FPGA的主要应用

    FPGA的主要应用:  FPGA由于其较高的价格和成本,决定了FPGA不能像单片机那样被广泛的使用,FPGA的针对于高端处理市场(类如:手机处理器,平板,工业控制系统)或许你会有些疑问
    的头像 发表于 12-24 11:04 1843次阅读
    大多数<b class='flag-5'>FPGA</b>的程序存储器(FLASH)为什么都放在外面呢?<b class='flag-5'>FPGA</b>的主要应用