- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《单片机的电子琴制作》.doc
《单片机原理及应用》
课程设计报告
姓 名 学院(系) 信息学院 专业班级 学 号 课程号 设计内容 基于单片机的电子琴制作 指导老师 时 间 2010年6月
成绩: 教师签名: 目录
-、课程设计名称……………………………………………1
二、设计指标…………………………………………………1
三、仪器、设备和材料清单…………………………………1
四、设计过程主要步骤………………………………………1
五、实验总结…………………………………………………19
一、课程设计名称:基于单片机的电子琴制作
二、设计指标:
(1) 一个(4*4)的键盘,并将16个键设计成16个音;
(2)可弹奏想要表达的音乐;
(3)音乐盒功能:该电子琴包含11首示例音乐:《兰花草》、《哈巴狗》、《生日快乐》、《不倒翁》等等。接通电源按相应键即可播放示例音乐。
三、仪器、设备和材料清单:pc机,proteus 7 仿真软件
四、设计过程主要步骤:
(1)理解电子琴设计原理
(2)电路结构设计
(3)软件设计
(4)调试
电子琴发音原理:声音是由物体的振动而产生的,音调的高低是由振动的频率决定,也就是说乐音实际上是有固定周期的信号。我们可以用单片机p 89C52 的一个定时器 如T 1 控制, 在P3. 4 脚上输出方波周期信号, 产生乐音。根据不同的按键, 调节T 1 的溢出时间, 可输出不同频率的乐音, 这样就做出了一台微型电子琴。每个乐音的音高 频率 是固定的, 下表列出了一个8 度以及其上下共16 个音的音名、频率及定时器T 1 初值对照 设晶体频率为12MHz , 供参考: 高中低音符与单片机定时/计数器的计数值关系表
音符 频率/Hz 简谱码 T值 低1 DO 262 63628 低2 RE 294 63835 低3 MI 330 64021 低4 FA 349 64103 低5 SO 392 64260 低6 LA 440 64400 低7 SI 494 64524 中1 DO 523 64580 中2 RE 587 64684 中3 MI 659 64777 中4 FA 698 64820 中5 SO 784 64898 中6 LA 880 64968 中7 SI 988 65030 高1 DO 1046 65058 高2 RE 1175 65110 高3 MI 1318 65157 高4 FA 1397 65178 高5 SO 1568 65217 高6 LA 1760 65252 高7 SI 1967 65283 软件设计:
软件主程序由初始化程序、播放程序、键盘扫描程序、定时器1中断服务程序(按键处理程序)和延时程序组成(分别如下图)。
各个子程序的流程图如下:
㈢ 基本硬件电路设计如下:(proteus截图)
整体模型描述:运用单片机的最小系统:P1口作16按键接口, P3.4作信号输出口。51芯片12引脚所连按键为“放歌”键,13引脚所连按键为“弹奏”键。4*4键盘从左到右从上到下分别为0到F。
放歌功能实现:按“放歌”键再按1到C键选歌曲播放。
弹奏功能实现:按“弹奏”键再按C键,弹完后再按“弹奏”键播放刚才弹奏的歌,并将此歌自动存入“C”。
㈣ 汇编程序: ;R5音调延时值;R6从内存中读到的数据
;9H--TABLE1~11数据;20H--TL1初值;21H--TH1初值;22H--修正后的按键值;30H--TABLE1~11地址计数器
;0AH--弹奏音调延时值;0BH--内存地址;0CH--读写到内存的数据;0DH--按键值;0EH--内存器件地址
PORT1 EQU P1
PORT2 EQU P2
SCK BIT P3.0
SDA BIT P3.1
ORG 0H
SJMP MAIN
ORG 0BH
LJMP TIME0
ORG 1BH
LJMP TIME1
ORG 30H
;
MAIN: CLR TR0
CLR TR1
MOV SP,#4FH
MOV R0,#100
CLR P3.4
LCALL DELAY5
MOV 9H,#0
MOV 0AH,#0
MOV 0BH,#0
MOV 0CH,#0
MOV TMOD,#11H
MOV IE,#8AH
MOV 0DH,#88H
;
XIAN: JB P3.2,QT1 ;没按下放歌建跳qt1
SETB P3.4 ;按下放歌建LED发光
LCALL DELAY1
LCALL DELAY1
JNB P3.2,$ ;放歌建没释放原地等待
LCALL DELAY1
LCALL DE
文档评论(0)