单片机设计矩阵键盘电子琴5.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机设计矩阵键盘电子琴5

课程设计任务书 课 程 名 称 单片机原理及应用课程设计 院(系、部、中心) 通 信 工 程 学 院 专 业 通 信 工 程 课程设计应达到的目的本课程是继《单片机原理及应用B》课程之后,训练学生综合运用上述课程知识,进行单片机软件、硬件系统设计与调试,使学生加深对单片机结构、工作原理的理解,提高学生综合应用知识的能力、分析解决问题的能力和单片机最小应用系统的设计技能。通过课程设计,达到理论与实际应用相结合,增强学生对综合电子系统设计的理解,掌握单片机原理就应用的设计方法以及C51编程的能力,并能够在这个基础上进行实际项目的程序设计及软硬件调试,增强学生的工程实践能力。课程设计题目及要求 带存储播放功能的简易电子琴设计要求:利用行列式键盘和数码管,来控制并显示和产生不同频率的声音。其他扩展功能学生可自己添加,功能不限定与此。课程设计任务及工作量的要求〔包括课程设计计算说明书、图纸、实物样品等要求〕了解相关理论知识,掌握基本的原理,理解相关特殊功能寄存器的设置。完成电路板的组装完成硬件电路的测试、以及软件的编程(4) 最终完成具体的课设任务。4.主要参考文献张洪润等.单片机应用设计200例.北京:北京航空航天大学出版社,20062. 胡汉才.单片机原理及其接口技术. 北京: 清华大学出版社,20103.夏继强等.单片机实验与实践教程.北京:北京航空航天大学出版社,20064. 倪晓军等.单片机原理与接口技术教程.北京: 清华大学出版社,20075(1)硬件方面:单片机。4*4行列式键盘,蜂鸣器,独立数码管,独立建。硬件部分采用逐列扫描,16个键位对应16个音,不断检测16键位,当某个键位被按下,先检测哪一列再检测哪个按键被按下,同时设置四个功能键,p1.0,p1.1播放歌曲,p1.2暂停,p1.3复位,可控制歌曲的播放。插入图片(2)音乐频率一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。单片机12MHZ晶振,高中低音符与单片机计数T0相关的计数值如下表所示 : 音 符 频 率 简码值(T值)低3 4 FA349 64103低5 SO392 64260低6 L7 S 1 D 中 2 R中 3 4 F 5 S 6 L 7 S 1 DO106465058高 2 RE117565110高 3 M131865157高 4 FA1397651786 程序设计的流程图如下图,不断检测16个音阶键或功能键哪个被按下,当音阶键被按下时,发出对应的音;当功能键被按下时,执行相应的功能。然后再检测按键释放成不成功,也就是平时所说的松手检测,不成功就不断再检测,成功就停止工作。插入图片7心得体会: 通过这次课程设计,我学到了很多书本上学不到的知识与经验,同时也遇到了很多问题,并在这个过程中逐步尝试去解决他们,提高自己的实践能力,硬件设计上我发现通过不同的I/O口可以节省端口资源的利用,部分端口上的需求可以通过软件解决。从语法错误到程序功能的实现,前前后后也是改了又改,这次课程设计使我意识到很多存在的问题,必须在单片机方面读更多的书,更深入的去探究,去挖掘这些问题的答案。8源程序#includereg51.h#define uchar unsigned char#define uint unsigned intsbit buz=P2^3; //定义蜂鸣器uchar temp,key;sbit s1=P1^0; //定义功能键1 sbit s2=P1^1; //定义功能键2sbit s3=P1^2; //定义功能键3sbit s4=P1^3;uint code table[]={64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,

文档评论(0)

jiayou118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档