- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机课程设计报告
音
乐
演
奏
器
姓名:
学号:
专业:
基于80C51单片机的音乐演奏器设计
设计原因:
随着科技的进步,各种高科技玩具应运而生,各种智能玩具层出不穷 。如果给玩具添加更多功能,那么,此种玩具就具有更强的竞争力。故此,给玩具添加音乐演奏功能不失为良策。此外,音乐演奏器还可以应用于多种领域,比如可应用于门铃、闹铃等各种系统。总之,音乐演奏器有广泛的用途,且具有很强的生命力。用单片机来实现音乐演奏的功能,既简单轻便,又易于实现,并且成本比古典乐器低廉许多。最重要的是,基于单片机控制的音乐演奏器能发出一般乐器难以实现的音效。在网上搜各种曲谱均可以用单片机来实现其音效。
系统工作过程:
音乐演奏器的主体由单片机构成,通过控制定时器时间的不同可以产生不同频率的方波,用于驱动喇叭发出不同的音符,再利用延时来控制发音时间的长短,即可控制节拍,把乐谱中的音符和相应的节拍变换成时常数和延迟常数,做成数据表格存放在存储器中。由程序查表得到定时常数和延迟常数,分别用以控制定时器产生方波的频率和发出该方波的持续时间。当延迟时间到时,再查下一个音符的定时常数好延迟常数,依次进行下去。
利用定时器T1以方式1工作,产生各音符对应频率的方波,由P1.0输出驱动喇叭发音。节拍控制通过改变调用延时子程序D200(延时200ms)的次数来实现,以每拍800ms为例,一拍需循环调用D200延时子程序4次,同理,半拍就需要调用两次,设晶振频率为6Mhz,乐曲中的音符、频率、定时常数的关系可以参照有关表格。
系统硬件组成:
1、89C51单片机一个
2、晶振6MHz立式 一个。
3、起振电容30pF瓷片电容2个
4、复位电容 22uF 16V电解电容1个
5、电阻 100欧、1K欧、4.7K欧 各一个
6、三极管9012一个
7、蜂鸣器 8欧一个
8、DIP封装插座 40脚集成插座一个
9、万能版150*90一个
流程图如下:
电路原理图:
主程序为:
ORG 0000H
LJMP START
ORG 001BH
MOV TH1,R1
MOV TL1,R0
CPL P1.0
RETI
ORG 0100H
START:MOV TMOD,#10H
MOV IE,88H
MOV DPTR,#TAB
LOOP:CLR A
MOVC A,@A+DPTR
MOV R1,A
INC DPTR
CLR A
MOVC A,@A+DPTR
MOV R0,A
ORL A,R1
JZ NEXT0
MOV A,R0
ANL A,R1
CJNE A,#0FFH,NEXT
SJMP START
NEXT:MOV TH1,R1
MOV TL1,R0
SETB TR1
SJMP NEXT1
NEXT0:CLR TR1
NEXT1:CLR A
INC DPTR
MOVC A,@A+DPTR
MOV R2,A
LOOP1:LCALL D200
DJNZ R2,LOOP1
INC DPTR
AJMP LOOP
D200:MOV R4,#81H
D200B:MOV A,#0FFH
D200A:DEC A
JNZ D200A
DEC R4
CJNE R4,#00H,D200B
RET
TAB:DB 0FEH,25H,02H,0FEH,25H,02H,0FEH,25H,04H
DB 0FDH,80H,04H,0FEH,84H,02H,0FEH,84H,02H
DB 0FEH,84H,04H,0FEH,25H,04H,0FEH,25H,02H
DB 0FEH,84H,02H,0FEH,0C0H,04H,0FEH,0C0H,04H
DB 0FEH,98H,02H,0FEH,84H,02H,0FEH,57H,04H
DB 00H,00H,04H,0FFH,0FFH
END
结果与结论:
设计此程序需要掌握89C51单片机中断和定时器的综合应用;还要学习中断和定时器的编程方法及单片机全系统调试的过程及方法。
是否达到预期目的:总的来说,音乐演奏器的设计基本成功;
各项指标基本良好;
实际运行时,程序调试完全成功,可能电路有些误差,喇叭不能正常发音。
设计及调试中遇到的问题及你的尝试,及没有解决的问题:
起初参看了大量的资料
文档评论(0)