云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于单片机的简易电子琴设计_毕业设计

基于单片机的简易电子琴设计_毕业设计

  • 62 次阅读
  • 3 次下载
  • 2025/6/16 20:40:10

2 系统总体方案及硬件设计

本系统采用单片机AT89C52为电子琴的控制核心,系统主要包括播放模块、安键控制模块。下面对各模块的设计逐一进行论证比较。总电路图见附页二。

2. 1系统总体方案

2.1.1定时/计数器的设计和状态字定义:

若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系式是:N=fi÷2÷fr,式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。其计数初值T的求法如下:T=65536-N=65536-fi÷2÷fr 例如:设K=65536,fi=1MHz,求中音DO(261Hz)。T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr,中音DO的T=65536-500000/523=64580。

单片机12MHZ晶振,中音符与计数T0相关的计数值如表所示:

音符

频率(HZ) 简谱码(T值)

音符

频率(HZ) 简谱码(T值)

低1 DO 262 63628 # 4 FA# 740 64860

#1 DO# 277 63731 中 5 SO 784 64898

低2 RE 294 63835 # 5 SO# 831 64934

#2 RE# 311 63928 中 6 LA 880 64968

低 3 M 330 64021 # 6 932 64994

低 4 FA 349 64103 中 7 SI 988 65030

# 4 FA# 370 64185 高 1 DO 1046 65058

低 5 SO 392 64260 # 1 DO# 1109 65085

# 5 SO# 415 64331 高 2 RE 1175 65110

低 6 LA 440 64400 # 2 RE# 1245 65134

# 6 466 64463 高 3 M 1318 65157

低 7 SI 494 64524 高 4 FA 1397 65178

中 1 DO 523 64580 # 4 FA# 1480 65198

# 1 DO# 554 64633 高 5 SO 1568 65217

中 2 RE 587 64684 # 5 SO# 1661 65235

# 2 RE# 622 64732 高 6 LA 1760 65252

中 3 M 659 64777 # 6 1865 65268

中 4 FA 698 64820 高 7 SI 1967 65283

采用查表程序进行查表时,可以为这个音符建立一个表格,有助于单片机通过查表的方式来获得相应的数据:低音0-19之间,中音在20-39之间,高音在40-59之间

用单片机播放音乐,或者弹奏电子琴,实际上是按照特定的频率,输出一连串的方波。为了输出合适的方波,首先应该知道音符与频率的关系。

2. 1. 2音调数据表

单片机发出不同频率的方波,人听起来,就是不同的音调。

上表中的频率数值,有些过多,去掉不常用的黑键频率,只是把白键对应的数据存放在单片机中,即可满足绝大部分的应用需求。 定义音调数据表的程序如下:

DW 63628,63835,64021,64103,64260,64400,64524 ;64580,低音区:1 2 3 4 5 6 7 DW 64580,64671,64777,64820,64898,64968,65030 65058中音区:1 2 3 4 5 6 7 DW 65058,65110,65157,65178,65217,65252,65283 65312高音区:1 2 3 4 5 6 7 把这个数据表,放在程序中,需要播音的时候,就从表中取出一个数据送到定时器,当定时器溢出中断的时候,再对输出引脚取反,那么,在扬声器中,即可听到上表中频率的声音。

音乐的音拍,一个节拍为单位(C调) 曲调值 调4/4 调3/4 调2/4

2. 2总体硬件组成框图

DELAY 125ms 187ms 250ms

曲调值 调4/4 调3/4 调2/4

DELAY 62ms 94ms 125ms

播放模块 喇叭 中心控制模块 AT89C52 按键控制模块 按 键 状 态 图2-1 总体硬件组成框图

实验中每按下一个琴键,单片机能够检测到键盘的按键,并根据按键的位置,通过程序来控制,使喇叭发出不同频率(音调)的声音,声音延迟一段时间,等到按键放开之后,声音停止。然后再继续扫描,看是否有键按下。如此循环,即可实现基本的琴键功能。 2. 2. 1 子系统模块一

LED显示模块如图2-2所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个七段数码管的a-h的笔段上,数码管的公共端接电源。

矩阵扫描显示当前按键模块如下:

2. 2. 2 子系统模块二

播放模块是喇叭构成。它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

2 系统总体方案及硬件设计 本系统采用单片机AT89C52为电子琴的控制核心,系统主要包括播放模块、安键控制模块。下面对各模块的设计逐一进行论证比较。总电路图见附页二。 2. 1系统总体方案 2.1.1定时/计数器的设计和状态字定义: 若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com