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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(微机控制系统与应用学年设计学年设计任务书.doc)为本站会员(为人民服务)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

微机控制系统与应用学年设计学年设计任务书.doc

1、微机控制系统与应用学年设计学年设计任务书学 院 计算机与信息工程学院 专 业 网络工程课程名称 微机控制系统应用方向 题 目 基于单片机的电子音乐门铃完成期限 自 2014 年 6 月 30 日至 2014 年 7 月 31 日共 4 周内容及任务一、项目的目的1.利用学过的单片机及 C 语言等知识,实现基于单片机的电子音乐门铃系统2.巩固所学习的 AT89C51、LCD 等知识,训练应用开发能力3.培养查找资料和阅读文献的能力,完成学年设计报告撰写二、项目任务的主要内容和要求1.用 I/O 口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲(至少三首乐曲,每首不少于 30 秒)2

2、.客人可通过门铃按键器播放音乐,并显示等待时间。3.如果主人在家,可暂停并取消音乐播放。三、项目设计(研究)思路首先,查找资料,了解大概从哪里入手,包括开发环境及仿真工具。其次,在 Keil uVision4 中编写代码,实现功能再次,在 Proteus 中画出电路图,包括 AT89C51,蜂鸣器,时钟振荡电路等最后,在 Proteus 中导入编译代码时生成的.hex 文件,完成仿真四、具体成果形式和要求1完成基于单片机的电子音乐门铃系统设计,并通过 C 语言编写程序代码,在 protues 中仿真实现。2完成学年设计文档。起止日期 工作内容6.30-7.8 查阅资料,找出需要实现功能的各个部

3、件进度安排7.9-7.27 编写代码及画出仿真电路图,实现仿真,得出结果7.28-7.31 撰写设计文档主要参考资料1.彭伟.单片机 C 语言程序设计实训 100 例M,电子工业出版社,2009.6.2.谭浩强.C 语言程序设计(第二版)M,北京:清华大学出版社,1991.3.李建忠.单片机原理及应用M,西安电子科技大学出版社,2008.2.4.51 单片机学习笔记:使用 DS1302 芯片制作电子钟EB/OL.http:/ 软件概述及功能EB/OL.http:/ 年 月 日系(教研室)主任意见(签字): 年 月 日微机控制系统与应用学年说明书学院名称: 计算机与信息工程学院 班级名称: 网络

4、工程 学生姓名: XXXX 学 号: XXXXXXXXXXX 题 目: 基于单片机的电子音乐门铃设计 指导教师姓 名: XXXXXXX 起止日期: XXXX.X.XXXXXX.X.XX 目录第一部分:正文部分 .1一、绪论 .1二、相关知识 .12.1 硬件知识 12.1.1 AT89C51.12.1.2 液晶显示模块 .22.1.3 实时时钟 .32.2 开发环境 32.2.1 软件开发环境 .32.2.2 硬件开发环境 .4三、总体设计 .53.1 系统设计框图 53.2 系统功能框图 .6四、硬件设计 .74.1 单片机最小系统 74.2 液晶显示屏和实时时钟设计 74.3 完整设计 8

5、五、软件设计 .95.1 音阶设定 95.2 节拍设计 105.3 代码实现 105.3.1 初始化 .105.3.2 选取音乐 105.3.4 播放音乐 .115.3.5 暂停音乐 .125.3.6 LCD 液晶显示屏显示 12六、测试与运行 .136.1 测试结果 136.2 研究总结 14第二部分:参考文献 .15第三部分:指导教师评语 .15第四部分:成绩评定 .160第一部分:正文部分一、绪论现代社会中,几乎家家户户都使用了门铃。也使门铃成为了人们日常生活中不可或缺的一分子。由于过快的生活节奏,普通的、仅能发出一种单调音乐的门铃已经无法满足人民群众的需求。这时单片机的研究出现则很迅速

6、、高效的解决了这个问题。本次学年设计的主要目的是实现基于单片机的能够播放不同电子音乐的门铃系统。在 Keil uVision4 中用 C 语言编写代码实现对系统的控制,再利用 Proteus 绘出电路进行仿真。系统主要要求实现的功能包括如下几个方面:第一,用输入输出端口产生一定频率的方波,从而驱动蜂鸣器,发出各种音调,演奏出不同的歌曲;第二,拜访的客人可以通过按门铃通知主人,并能够看到门口的时间,知晓等待时间的长短;第三,若是主人在家,主人则按取消或暂停按钮,停止门铃的持续响起。二、相关知识2.1 硬件知识2.1.1 AT89C51AT89C51 是一个 8 位的微处理器,并包含有 4KB 的

7、 Flash 存储器,即单片微机。在很多的嵌入式控制系统中,许多具有高度灵活性及低成本的解决方案都由 AT89C51 为其提供。AT89C51 中中有一个用于构成内部振荡器的反相放大器,引脚 XTAL1 为放大器的输入端,XTAL2 为放大器的输出端。AT89C51 的 P3 口第二功能,如下表 2-1 所示:表 2-1 P3 口第二功能端口引脚 第二功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外中断 0)P3.3 INT1(外中断 1)P3.4 T0(定时/计数器 0 外部输入)P3.5 T1(定时/计数器 1 外部输入)P3.6 WR(外部数据存储器

8、写选通)1P3.7 RD(外部数据存储器写选通)AT89C51 的引脚排列如图 2-2 所示:图 2-2 AT89C512.1.2 液晶显示模块本次系统采用的液晶显示屏是 LM016L。引脚功能说明 :1602LCD 采用标准的 14 脚(无背光)或 16 脚(带背光)接口,各引脚接口说明如表 2-3 所示: 表 2-3 LM016L 引脚说明编号 符号 引脚说明 编号 符号 引脚说明 1 VSS 电源地 9 D2 数据 2 VDD 电源正极 10 D3 数据 3 VL 液晶显示偏压 11 D4 数据 4 RS 数据/命令选择 12 D5 数据 5 R/W 读/写选择 13 D6 数据 6 E

9、 使能信号 14 D7 数据 7 D0 数据 15 BLA 背光源正极 8 D1 数据 16 BLK 背光源负极LM016L 的引脚图如图 2-4 所示2图 2-4 LM016L 液晶显示屏2.1.3 实时时钟DS1302:实时时钟芯片,具有低消耗高功能等优势。包括 31kb 的静态RAM。可以从系统中获取当前时间,时分秒、年月日和星期。DS1302 的引脚排列,其中 Vcc2 为主电源,VCC1 为后备电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302 由 Vcc1 或 Vcc2 两者中的较大者供电。当 Vcc2 大于 Vcc1+0.2V 时,Vcc2 给 DS1302 供电。

10、当 Vcc2 小于 Vcc1 时,DS1302 由 Vcc1 供电。X1 和 X2 是振荡源,外接 32.768kHz 晶振。RST 是复位/片选线,通过把 RST 输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能:首先,RST 接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST 提供终止单字节或多字节数据传送的方法。当 RST 为高电平时,所有的数据传送被初始化,允许对 DS1302 进行操作。如果在传送过程中 RST 置为低电平,则会终止此次数据传送,I/O 引脚变为高阻态。上电运行时,在 Vcc2.0V 之前,RST 必须保持低电平。只有在 SCLK 为低电平时,才

11、能将 RST 置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK 为时钟输入端。 4其引脚图如下图 2-5 所示:图 2-5 DS13022.2 开发环境2.2.1 软件开发环境Keil uVision4:是常用的嵌入式编程所运用的编译平台,能够编写 C 语言代码,对其编译,生成.HEX 文件,其界面显示如下图 2-7 所示:3图 2-7 Keil uVision42.2.2 硬件开发环境本次系统设计运用的是 Proteus 电路仿真软件。Proteus 软件是英国Labcenter electronics 公司出版的 EDA 工具软件(该软件中国总代理为广州风标电子技术

12、有限公司)。它不仅具有其它 EDA 工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus 是世界上著名的 EDA 工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086

13、 和 MSP430 等,2010 年即将增加 Cortex 和 DSP 系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持 IAR、Keil 和 MPLAB 等多种编译器。 5用来将 Keil uVision4 内编译生成的.HEX 文件导入到电路中的 AT89C51 单片机中,进行仿真,完成设计。其界面显示如下图 2-8 所示:4图 2-8 Proteus 界面三、总体设计3.1 系统设计框图系统设计框架描述:基于单片机的电子音乐门铃中,包括的硬件设备有AT89C51,DS1302,LM016L。在 AT89C51 中,包括振荡电路、复位按键、门铃按键、蜂鸣器、LED 灯。除此之

14、外,还包括一些电阻、电容、电感等电子元件和按键等系统设计框架图如下图 3-2 所示:电子音乐门铃AT89C51 液晶显示屏蜂鸣器跑马灯DS1302门铃按键复位按键显示时间图 3-2 系统设计框图53.2 系统功能框图系统所实现的功能大致为,LCD 显示屏中显示通过实时时钟从系统中获取的当前时间,点击门铃按键时,音乐响起,跑马灯也随之变亮,当再次点击门铃按键时,音乐也会随之改变,以此类推,也因液晶显示屏的显示时间得出等待时间。当主人在家时,听到门铃的响声,按下暂停、取消按键,音乐也随之停止。门铃主要功能描述流程图如下图 3-3 所示:是否图 3-3 门铃主要功能流程图系统功能描述框架图如下图 3

15、-4 所示:开始按下门铃按键音乐响起下一首歌曲是否重复按键按下取消暂停按键音乐停止结束6AT89C1单片机门铃按键复位按键音乐响起音乐暂停取消液晶显示屏器跑马灯亮显示时间显示等待时间图 3-2 系统功能框图四、硬件设计4.1 单片机最小系统单片机的最小系统包括单片机、晶振电路,复位电路和电源,因此在设计电子音乐门铃的最初,应当包括以上四种元件。系统设计的单片机最小系统电路图如下图 4-1 所示图 4-1 单片机最小系统4.2 液晶显示屏和实时时钟设计为将时间显示出来,在单片机的最小系统上选用了晶显示屏 LM016L 和实时7时钟 DS1302,其中,DS1302 用来获取系统的当前时间,LM0

16、16L 用来将 DS1302获取的时间显示出来。具体的电路图如下图 4-2 所示图 4-2 液晶显示屏和实时时钟设计4.3 完整设计完成单片机的最小系统和时间显示的设计,接下来是完成门铃播放音乐的设计。包括蜂鸣器、门铃按键、暂停/取消按键、LED 灯。其中,蜂鸣器用来发出音乐声音,门铃按键用来按下门铃使音乐播放或切换,暂停/取消按键用于停止音乐的播放。电路设计在上述已有的电路基础上添加蜂鸣器、门铃按键、暂停/取消按键、LED 灯。完整的系统电路设计如下图 4-3 所示8图 4-3 完整的系统电路设计五、软件设计5.1 音阶设定do、re、mi、fa、so、la、si 在音乐中一般用 C D E

17、 F G A B 表示,即音调。表 4-1 C 调 F 与 T 的对照表高音 频率 参数 T 低音 频率 参数 T 中音 频率 参数 TDo 1046 57 57 Do 262 229 1908 Do 523 115 956Re 1175 51 51 Re 294 204 1701 Re 587 102 852Mi 1318 45 45 Mi 330 182 1515 Mi 659 91 759Fa 1397 43 43 Fa 349 172 1433 Fa 698 86 716So 1568 38 38 So 392 153 1276 So 784 77 638La 1760 34 34 L

18、a 440 136 1136 La 880 68 568Si 1976 30 30 Si 494 121 1012 Si 988 61 50695.2 节拍设计在音乐中,除了音调之外还应该有节拍,这样才能构成完整、悦耳的音乐。每首歌曲都有不同的音调和节拍即音符,这样也就让每首歌曲都有了不同的旋律和节奏。因为每个音符的实现都要有不同的频率,在单片机中用来产生方波频率信号的是定时/计数器。表 4-2 部分节拍与节拍码对照节拍码 节拍数1 1/4 拍2 2/4 拍3 3/4 拍4 1 拍5 1 又 1/4 拍6 1 又 1/2 拍8 2 拍F 3 又 3/4 拍C 3 拍A 2 又 1/2 拍5.3

19、 代码实现5.3.1 初始化k1 表示门铃按键,k2 表示暂停或取消按键,fmq 表示蜂鸣器,具体代码如下:sbit k1=P33;/按 k1 可切换歌曲,门铃按键 sbit k2=P32;/按 k2 用来暂停并取消按键sbit fmq=P37;/蜂鸣器连续的 IO 口sbit IO = P10;/I/O 输入输出口sbit SCLK = P11;/SCLK 为输入端sbit RST = P12;/复位/片选线sbit RS = P20;/选择寄存器sbit RW = P21;/读写选择sbit EN = P22;/使能信号引脚5.3.2 选取音乐选取音乐部分函数 void song():当门

20、铃按键按下时,count 开始计数,当10count 等于 1 时,即按键一下,歌曲播放为千年之恋,当 count 等于 2 时,歌曲换成寂寞沙洲冷,当 count 等于 3 时,歌曲播放为葫芦娃,count 等于 4 时,歌曲换成同桌的你。其中主要代码实现如下:if(count=1) /选曲temp=qnzli;if(count=2)temp=jmszli;if(count=3)temp=hlwi;if(count=4)temp=tzdni;if(temp=0xff)break;5.3.4 播放音乐(1)音阶的产生当点击门铃按键时发生中断 1,产生不同的音乐,所用函数为 void timer

21、0() interrupt 1,其代码如下:void timer0() interrupt 1 TH0=timeh;TL0=timel;fmq=fmq;其中 timeh,timel 的赋值代码为:if(jp!=0)/jp 代表简谱timeh=chuzhijp*2;/chuzhi 表示简谱音调对应的定时器初值timel=cuzhijp*2+1;elseTR0=0;fmq=1;/关蜂鸣器11(2)播放或切换音乐if(k1=0)TR0=1;TR1=1;i=0; count+;if(count=5)/count 表示按键的次数,若是次数为五,则四首歌循环结束,并从第一首歌曲重新开始count=1;(3

22、)蜂鸣器为让蜂鸣器发出音乐,采用的函数是 void fengmqi(),关键代码如下for(i=0;i50;i+)fmq=fmq;Delay1(1);fmq=1;5.3.5 暂停音乐用于暂停播放音乐使用的函数是 void int0() interrupt 0,其中核心代码为:if(k1=0)count=0;/不让蜂鸣器唱歌TR0=0;num=0;TR1=0;P0=0X3F;P2=0X3F;5.3.6 LCD 液晶显示屏显示向显示屏写入数据函数代码 :12void Write_LCD_Data(uchar dat)LCD_Busy_Wait();RS=1;RW=0;EN=0;P0=dat;EN=

23、1;DelayMS1(1);EN=0; 写入指令函数代码:void Write_LCD_Command(uchar cmd)LCD_Busy_Wait();RS=0;RW=0;EN=0;P0=cmd;EN=1;DelayMS1(1);EN=0; 液晶初始化函数代码:void Init_LCDCHUSHIHUA()Write_LCD_Command(0x38);DelayMS1(1);Write_LCD_Command(0x01);DelayMS1(1);Write_LCD_Command(0x06);DelayMS1(1);Write_LCD_Command(0x0c);DelayMS1(1)

24、;六、测试与运行6.1 测试结果在 Protues 仿真软件中对设计进行仿真,在 AT89C51 中导入生成的.hex 文件,单击开始 按钮,得到的仿真结果(1)当第一次运行时,由于 LCD 显示模块的代码错误,导致时钟芯片获得的时间无法显示到 LCD 屏上,门铃部分音乐切歌均正常,得到的仿真结果图如下图 6-1 所示:13(2)对代码进行修改后,并减少了 LED 灯的数目,得到的正确的仿真结果如下图 6-2 所示:图 6-1 仿真测试结果6.2 研究总结为期十天的学年设计终于结束了,在这期间有苦恼也有开心,最开始选这个电子音乐门铃设计的题目时并没有想太多,也没有想过到底是简单还是难。设计的第

25、一天很幸运,老师提供的以前学长们做的设计,让我们有了很好的解14决思路,但我们不能和他们一样,只能在添加一些没有的功能如 LED 灯和液晶显示屏,可还是遇到困难,无法将时间显示在液晶屏上,在老师和同学的帮助下,最后终于实现的基本的功能,虽然并不是非常完美,但还是很开心。这是一个非常好的经历,让我学到了很多,也明白很多所谓的困难都会有迎刃而解的时候。第二部分:参考文献1.彭伟.单片机 C 语言程序设计实训 100 例M,电子工业出版社,2009.6.2.谭浩强.C 语言程序设计(第二版)M,北京:清华大学出版社,1991.3.李建忠.单片机原理及应用M,西安电子科技大学出版社,2008.2.4.51 单片机学习笔记:使用 DS1302 芯片制作电子钟EB/OL.http:/ 软件概述及功能EB/OL.http:/ 填表日期: 年 月 日第三部分:指导教师评语15第四部分:成绩评定指导教师签名: 填表日期: 年 月 日

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报