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

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

3天内不再提示

电子琴设计中要注意哪些要点

电子森林 来源:电子森林 作者:电子森林 2022-07-01 16:43 次阅读

前面文章中提到的专为“2022年暑期在家一起练”的高颜值硬禾电子琴:

“暑期一起练”即将开玩的“高颜值”电子琴!

引起了很多同学的兴趣,活动正式发布出来,就有不少同学纷纷下单。在这里顺便给同学们梳理一下要做出这个电子琴需要用到哪些书本知识?设计中要注意哪些要点?

首先看一下这个套件包含了哪些:

1x Piano Kit扩展板,包含了带电路的底板和一块琴键盖板

1x 小脚丫FPGA核心板(Lattice MXO2-C),能够通过Web IDE编程或Lattice官方提供的Diamond软件进行编程

1x Micro USB数据线,前期的活动中,不少同学使用的USB线只能供电,没有数据传输功能,建议在调试的过程中使用我们提供的USB数据线这个电子琴的构成框图:

390732dc-f919-11ec-ba43-dac502259ad0.png

电子琴的功能框图

多数的电子琴都是通过PWM信号驱动蜂鸣器来发声,实现起来比较轻松,但发出来的声音比较单调。如果能够用模拟的信号来驱动扬声器,通过DDS的方式理论上可以生成任意频率、任意幅度、任意波形的信号,还可以在数字域进行合成、数字信号处理,然后再通过DAC输出成模拟信号推动扬声器来发出声音。

所以通过这个活动,同学们可以在学习了数字电路课程的基础上,通过FPGA的使用,进一步深刻理解数字逻辑和现实世界之间的关系,通过数字信号驱动数字外设、通过模拟信号来驱动模拟外设,并可以通过信号的质量以及仪器观测波形进行对比。

模拟数字转换(ADC)和数字模拟转换(DAC)是连接数字信号和模拟信号之间的桥梁,实现ADC和DAC的方式有多种,在这个电子琴的活动中,我们体会一下如何通过PWM的方式来实现DAC的功能,也就是PWM + 低通滤波器可以将数字信号转换为模拟信号。

这里面还有一个频谱的问题,在固定时钟频率的情况下,通过PWM来做DAC,就需要在产生的信号的频率与分辨率之间进行折中,12MHz的主时钟(在不加锁相环的情况下)要得到相当于10位分辨率的DAC,意味着生成模拟信号的“转换率”最高也就到12MHz/1024~12KHz(落在了人可以听见的声音的范围),这样就决定了外部低通滤波器的截止频率的设定, 要能够有效滤除掉12KHz的转换频率,要模拟电子琴的音调,一般需要用到基频的高次谐波分量,既要能够保证到高频率信号的复现,同时又不能有干扰音的出现,如何取舍?

人的耳朵对于细微的声音差别都能够感知到,10位的DAC是否满足要求?能否用8位就可以?是否需要到12位、甚至16位?

在已经设定好的阶数很低的低通滤波器的前提下,又该如何取舍?有没有其它的办法?

这些都是同学们在一个月的时间里,在这个平台上制作一个“好听”的“电子琴”所需要考虑的。

相信有的同学不会简单止步于做出一个能听到声音的“电子琴”,还会进一步探索更多的声音信号处理的功能,能够模拟出更多不同乐器的声音。

这正是我们这个平台的目的 - 将所学到的理论知识,运用到一个实际的系统中,能够解决在实现的过程中遭遇到的各种挑战,并将其做到尽善尽美。

制作这个电子琴的所有数字逻辑基础模块都可以在电子森林的网站上找寻到,你需要读懂它,消化它,将它们有机组合在一起。

涉及到的数字电路/逻辑的技能及参考设计资源:

按键输入响应、按键消抖:

矩阵键盘键入系统设计

消抖

PWM信号生成:

PWM的应用及相应的Verilog代码

简易电子琴设计

STEP FPGA驱动无源蜂鸣器模块

PWM和1位DAC

音乐盒

DDS信号生成 - 频率的调节、幅度的调节:

DDS生成任意波形的方法及Verilog代码实例

基于DDS的任意波形、信号发生器设计

列出来的这些参考资源都可以在电子森林网站上找到,有详细的说明和源代码。由于微信的限制无法将上述文中的链接进行跳转,大家可以访问这个活动的项目页面,在基本信息中心有这些参考设计资源的URL链接。

原文标题:用FPGA制作一个电子琴中的设计要点

文章出处:【微信公众号:电子森林】欢迎添加关注!文章转载请注明出处。

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

    关注

    69

    文章

    5007

    浏览量

    87992
  • 数据线
    +关注

    关注

    8

    文章

    285

    浏览量

    37862
  • 蜂鸣器
    +关注

    关注

    12

    文章

    893

    浏览量

    46068
  • 电子琴
    +关注

    关注

    4

    文章

    153

    浏览量

    30617

原文标题:用FPGA制作一个电子琴中的设计要点

文章出处:【微信号:xiaojiaoyafpga,微信公众号:电子森林】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    简易电子琴仿真

    我用555定时器做了一个简单的电子琴 有八个音节 但是声音出不来 有哪位高人有简易电子琴的proteus仿真啊
    发表于 05-25 11:35

    电子琴节拍

    有那位高手知道用51做的电子琴的节拍怎么确定啊,急求。。。
    发表于 06-28 22:57

    电子琴

    分享一个电子琴压缩包
    发表于 04-16 01:56

    基于FPGA的电子琴设计

    基于FPGA的电子琴设计
    发表于 12-11 09:46

    如何利用51单片机设计电子琴

    蜂鸣器,输出不同脉冲就会发出不同的声音,从而达到电子琴的目的。使用八个按键来输出不同的声音,用一个数码管来显示音阶,需要注意的是,数码管接的是单片机的P0口,其驱动能力弱,需要接上拉电阻提高...
    发表于 11-18 08:55

    电子琴设计

    电子琴设计
    发表于 08-19 12:01 251次下载

    电子琴实验

    电子琴实验 一. 实验目的利用实验仪上提供的按键K1~K7 作为电子琴按键,控制蜂鸣器发声,使用户了解计算机发声原理,熟悉定
    发表于 09-22 10:48 3814次阅读
    <b class='flag-5'>电子琴</b>实验

    带存储功能的电子琴

    关于电子琴
    发表于 05-07 10:31 37次下载

    电子琴程序详尽版下载

    电子琴程序下载
    发表于 01-12 16:36 0次下载

    基于555的简易电子琴设计

    偶尔玩两下电子琴也是不错的
    的头像 发表于 08-15 17:43 1.9w次阅读

    基于FPGA的简易电子琴的实现

    本系统是采用EDA技术设计的一个简易的八音符电子琴,该系统基于计算机时钟分频器的原理,采用自顶向下的设计方法来实现,它可以通过按键输入来控制音响。多功能电子琴的设计是在原有普通电子琴
    发表于 04-28 11:16 45次下载

    电子琴的设计与实现

    电子琴
    发表于 05-31 16:48 26次下载

    电子琴设计程序代码

    电子琴代码
    发表于 05-26 16:38 7次下载

    基于FPGA的电子琴设计

    电子发烧友网站提供《基于FPGA的电子琴设计.pdf》资料免费下载
    发表于 10-10 09:40 11次下载
    基于FPGA的<b class='flag-5'>电子琴</b>设计

    电子琴设计资料

    电子发烧友网站提供《电子琴设计资料.pdf》资料免费下载
    发表于 10-11 10:21 2次下载
    <b class='flag-5'>电子琴</b>设计资料