ImageVerifierCode 换一换
格式:DOCX , 页数:34 ,大小:583.24KB ,
资源ID:15074490      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15074490.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计电子琴 汇编语言Word文档下载推荐.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计电子琴 汇编语言Word文档下载推荐.docx

1、 5.1 收获与体会.14 5.2 遇到的问题与解决方法.15 5.3 教程建议.15 6. 参考文献.15 7. 附录.16 1. 引言 1.1 设计的目的 本设计的主要目的是掌握单片机系统的开发应用,掌握prteus和keil C51软件的应用,巩固和加深已学过的知识,提高动手能力及解决实际问题的能力,同时培养团队合作精神。 1.2. 设计内容与要求 (1)本设计以AT89C52单片机为核心控制元件设计一个电子琴,与键盘、扬声 器等模块组成核心主控制模块,在主控模块上设有16个弹奏按键、1个播 放按键和扬声器,并且按下时按键发声,松开延时一段时间停止,中间再 按别的键则发另一音调的声音。1

2、6个按键设置成4x4矩阵键盘,能弹奏出 16个音,添加歌曲程序同时能够播放出歌曲。(2)利用软件 keil C51进行程序的调试。(3)利用proteus软件画电路图,并在单片机加载程序进行仿真。(4)根据电路图运用proteus软件的布局和布线功能绘制PCB图并输出显 示电路的3D图。(5)根据电路图、PCB图和3D图快速地焊接电路。(6)下载程序代码,调试(Easy 51Pro) 。2. 方案总体设计 2.1. 音乐产生设计原理 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便

3、,我们可以利用单片机的定时/计数器T0来产生这 样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系正确即可。若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即反相,P1.0每当计时终止后就将利用定时器计时半周期时间,为半周期的时间。然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。 利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T1/5231912s,因此只要令计数器计时956s/1s956,每计数956次时将I/O反相,就可得到中音DO(523H

4、z)。 计数脉冲值与频率的关系式是: N=fi2fr 式中N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。 其计数初值T的求法如下: T65536N65536fi例如:设K65536,fi1MHz,求低音DO(261Hz)、中音DO(523Hz)、高音DO(1046Hz)的计数值。T65536N65536fifr655361000000fr65536500000/fr 低音DO的T65536500000/26263627 中音DO的T65536500000/52364580 高音DO的T65536500000/104665059 单片机12MHZ

5、晶振,高中低音符与计数T0相关的计数值如表1所示:HZ) 简谱码(T值) HZ) 简谱码(值) 音符频率(1 DO 63628 64860 低262 # 4 FA# 740 DO# #1 63731 277 5 SO 中64898 784 2 低RE 3 M 294 63835 63928 64021 # 5 SO# 6 LA 64934 831 64968 64994 #2 RE# 311 中880 330 # 6 932 T 4 FA 有键按下否 是 延时去抖动 给定时器T0赋值 开始计 取该音符的节拍码 Y STOP A=0 N Y 休止符 返回键盘扫描 A=0FFH 64103 工作停

6、止T0CPL3.0 7 SI 停止65030 工作T1349 988 # 4 FA# 370 64185 退出中断 1 DO 高 65058 1046 低 5 SO 6 LA 64260 392 64331 64400 延时# 1 DO# 2 RE 65085 1109 65110 65134 # 5 SO# 415 高1175 440 # 2 RE# 1245 64463 3 M 65157 466 1318 7 SI 64524 4 FA 65178 494 1397 1 DO 64580 自动播放音乐程序弹奏子程序65198 523 1480 64633 开始开中断并允许中断设定A 0,

7、DPTR 5 SO 歌谱地址65217 # 1 DO# 554 1568 2 RE 中587 64684 T0初始化并开中断允许定时器工作方式# 5 SO# 中断T0 65235 1661 # 2 RE# 3 M 4 FA 622 64732 64777 64820 T1初始化并开中断允许键盘扫描程序根据键值查音律开中断,设定定时器取简谱码高 6 LA 7 SI 中断T1 工作模式T1 65252 1760 65268 65283 取键值659 1865 698 1967 表1 音符频率表 我们要为这个音符建立一个表格,单片机通过查表的方式来获得相应的数据。 低音019之间,中音在2039之间

8、,高音在4059之间。TABLE: DW 0,63628,63835,64021,64103,64260,64400,64524,0,0 DW 0,63731,63928,0,64185,64331,64463,0,0,0 DW 0,64580,64684,64777,64820,64898,64968,65030,0,0 DW 0,64633,64732,0,64860,64934,64994,0,0,0 DW 0,65058,65110,65157,65178,65217,65252,65283,0,0 DW 0,65085,65134,0,65198,65235,65268,0,0,0 DW 0 在这个程序中,弹奏音乐的程序是用定时/计数器T0来完成的,播放音乐程序则是用定时/计数器T1来完成的。2.2. 设计流程 (1)键盘扫描程序: 检测是否有键按下,有键按下则记录按下键的键值,并跳转至功能转移程序;无键按下,则返回键盘扫描程序继续检测。 (2)功能转移程序: 对检测到得按键值

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1