单片机课程设计报告-按键控制定时器选播多段音乐

上传人:aa****6 文档编号:29986110 上传时间:2018-01-26 格式:DOC 页数:10 大小:64KB
返回 下载 相关 举报
单片机课程设计报告-按键控制定时器选播多段音乐_第1页
第1页 / 共10页
单片机课程设计报告-按键控制定时器选播多段音乐_第2页
第2页 / 共10页
单片机课程设计报告-按键控制定时器选播多段音乐_第3页
第3页 / 共10页
单片机课程设计报告-按键控制定时器选播多段音乐_第4页
第4页 / 共10页
单片机课程设计报告-按键控制定时器选播多段音乐_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《单片机课程设计报告-按键控制定时器选播多段音乐》由会员分享,可在线阅读,更多相关《单片机课程设计报告-按键控制定时器选播多段音乐(10页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计报告按键控制定时器选播多段音乐【摘要】 本课程设计是按键控制定时器选择多段音乐,以 AT89S52 为系统的操作核心,以一个数码管显示播放音乐的序号,通过按键来选择音乐(本课程设计中含 3 首音乐) 。硬件设计方案1. 单片机及晶振模块该设计选用的是 Atmel 公司生产的 AT89S52 型单片机,由石英晶体振荡器产生单片机工作时所需的时钟信号,振荡器采用的是 12M 的晶振,使其机器周期为 1us,方便发音程序的计算和编译。AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非易失性存储器技术制

2、造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52 具有以下标准功能: 8k 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作

3、,允许 RAM、定时器/ 计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S52 的引脚分布: 2.数码管显示模块该部分只用了一个数码管,用来显示播放的音乐序列,数码管的 7 个管脚都接了 1K 的上拉电阻。数码管显示的歌曲序列为 0,1,2。3.按键控制模块此模块只用了两个按键,按键 K1 用来控制歌曲的开始和停止,接 P1.0口,按键 K2 用于选择歌曲,接 P3.2 口。按下 K1,开始播放音乐,随着改变数码管的显示值(0、1、2) ,将出现对应的音乐。4.扬声器模块扬声器上接了一个三极管,用于放大声

4、音。程序如下:#include #include #define uchar unsigned char #define uint unsigned int sbit K1=P10; /播放和停止键sbit SPK=P37; /蜂鸣器uchar Song_Index=0,Tone_Index=0; /当前音乐段索引,音符索引/数码管段码表uchar code DSY_CODE=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /标准音符频率对应的延时表uchar code HI_LIST=0,226,229,232,233,236,238,2

5、40,241,242,244,245,246,247,248; uchar code LO_LIST=0,4,13,10,20,3,8,6,2,23,5,26,1,4,3; /三段音乐的音符uchar code Song50= 1,2,3,1,1,2,3,1,3,4,5,3,4,5,5,6,5,3,5,6,5,3,5,3,2,1,2,1,-1, 3,3,3,4,5,5,5,5,6,5,3,5,3,2,1,5,6,53,3,2,1,1,-1, 3,2,1,3,2,1,1,2,3,1,1,2,3,1,3,4,5,3,4,5,5,6,5,3,5,3,2,1,3,2,1,1,-1 ; /三段音乐的节拍

6、uchar code Len50= 1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,1,1,1,1,2,1,2,-1, 1,1,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,1,1,1,1,2,2,-1, 1,1,2,1,1,2,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,2,1,1,2,2,-1 ; /外部中断0 void EX0_INT() interrupt 0 TR0=0; /播放结束或者播放中途切换歌曲时停止播放 Song_Index=(Song_Index+1)%3; /跳到下一首的开头Ton

7、e_Index=0; P2=DSY_CODESong_Index; /数码管显示当前音乐段号 /定时器0中断函数void T0_INT() interrupt 1 TL0=LO_LISTSongSong_IndexTone_Index; TH0=HI_LISTSongSong_IndexTone_Index; SPK=SPK; /延时void DelayMS(uint ms) uchar t; while(ms-) for(t=0;t120;t+); /主程序void main() P2=0xc0; SPK=0; TMOD=0x00; /T0方式0 IE=0x83; IT0=1; IP=0x0

8、2; while(1) while(K1=1); /未按键等待 while(K1=0); /等待释放 TR0=1; /开始播放 Tone_Index=0; /从第0个音符开始 /播放过程中按下K1可提前停止播放(K1=0 )。 /若切换音乐段会触发外部中断,导致TR0=0,播放也会停止 while(SongSong_IndexTone_Index!=-1&K1=1&TR0=1) DelayMS(300*LenSong_IndexTone_Index); /播放延时(节拍) Tone_Index+; /当前音乐段的下一音符索引 TR0=0; /停止播放 while(K1=0); /若提前停止播放

9、,按键未释放时等待 安装与调试:安装过程:1 检查印刷电路板有无断路、短路,若有,首先处理好。2 焊接顺序:先焊单片机,在焊接各分块电路,先焊平面的,后焊立体的,原则是有利于焊接。要求卧装水平、竖装垂直、相同元件等高。要特别注意元器件的安装方向!3 焊接要点:将元件整形后插入对应位置,电路板平放在台面上,一手握烙铁对焊盘和引脚同时接触预热,另一手持焊锡丝与焊盘处烙铁接触,使锡丝熔化,当锡丝熔化一定量时(多了不好少了不行) ,立即将锡丝离去,烙铁继续保持少许时间,让焊锡围绕焊盘自由流动,形成一个完全覆盖焊盘的钟形(忌讳球形)焊点。切勿将焊锡先溶化在烙铁上再去焊接,这样锡丝里的助焊剂在未焊接前先挥

10、发了,不利于焊接,而且焊点没有光泽。4 剪脚:元件焊好后,将多余引脚剪掉,剪脚后的焊点应露出引脚 0.5-1mm。本课设要求引脚露出 2mm,以利于元件重复使用。5 检查各元件是否出现焊接错误情况以及短路、断路情况。6 将 5V 直流电源接入单片机以及其他各分模块电源端。若发现元器件发热或者有异味,应立即切断电源检查。7.正常电路 LED 灯以及数码管会工作在较为稳定、准确的状态,可据此来进一步检测电路连接是否、存在问题调试过程:接上 5V 电源后,按下 K1 键,会有音乐,随着 K2 的按下,音乐也随之改变。过程较为顺利。心得与体会:在这次课程设计中,我们把学习的单片机理论知识运用到了实践中

11、,加深了我们对单片机理解,同时熟悉了单片机的使用,加强了我们的动手能力。在电路的焊接方面,也学到了一些知识,如怎样使排版好看,不要杂乱无章。焊接时,要注意很多的细节,排线走线都要小心,很容易造成短路。元件清单如下:22pf 的电容两个12MHZ 晶振一个10K 电阻一个10uf 电容一个2 个按键1 个共阳数码管8 个 1K 的电阻1 个蜂鸣器1 个 89S52 单片机参考文献:1 .谢维成、杨加国 单片机原理与应用及 c51 程序设计.北京:清华大学出版社2.阎石.数字电子技术基础.北京:高等教育出版社,20063.谭浩强 C 程序设计(第三版).北京:清华大学出版社4.童诗白 模拟电子技术基础.北京:清华大学出版社5.王一群 怎样用电脑设计电子线路 福建 科学出版社6.王宏研,张鑫 电子综合设计实验教程 山东大学出版社7.陈永甫.多功能集成电路 555 经典应用实例第一集.北京:电子工业出版社8.王新闲.通用集成电路速查手册.山东:山东科学出版社,20059.崔瑞雪、张增良.电子技术动手实践.北京:北京航空航天出版社,2007原理图如下:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号