经典单片机多功能音乐闹钟毕业课程设计报告.docx

上传人:b****2 文档编号:17596764 上传时间:2023-07-26 格式:DOCX 页数:10 大小:250.23KB
下载 相关 举报
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第1页
第1页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第2页
第2页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第3页
第3页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第4页
第4页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第5页
第5页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第6页
第6页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第7页
第7页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第8页
第8页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第9页
第9页 / 共10页
经典单片机多功能音乐闹钟毕业课程设计报告.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

经典单片机多功能音乐闹钟毕业课程设计报告.docx

《经典单片机多功能音乐闹钟毕业课程设计报告.docx》由会员分享,可在线阅读,更多相关《经典单片机多功能音乐闹钟毕业课程设计报告.docx(10页珍藏版)》请在冰点文库上搜索。

经典单片机多功能音乐闹钟毕业课程设计报告.docx

经典单片机多功能音乐闹钟毕业课程设计报告

(此文档为word格式,下载后您可任意编辑修改!

单片机课程设计报告

 

 

设计课题:

单片机电子钟课程设计

姓名:

学院:

湖南工业大学电气与信息工程学院

专业:

机电一体化

班级:

学号:

日期

2010年11月

数字钟的简介

单片机系统作为一种典型的嵌入式系统,其系统设计包括硬件电路设计和软件编程设计两个方面,其调试过程一般分为软件调试、硬件测试、系统调试3个过程。

如果采用单片机系统的虚拟仿真软件——Proteus,则不用制作具体的电路板也能够完成以上工作。

数字钟是采用数字电路实现对时,分,秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。

数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便[4]。

不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。

而且是控制的核心部分。

因此,研究数字钟及扩大其应用,有着非常现实的意义。

电子钟在工业控制和日常生活中是很重要的,它不仅可以用于计时、提醒又可用于对机器的控制,在自动化的过程中必然有电子钟的参与,因此电子钟的应用会越来越广泛。

而且向着精确、低功耗、多功能发展。

基于单片机设计的数字钟精确度较高,因为在程序的执行过程中,任何指令都不影响定时器的正常计数,即便程序很长也不会影响中断的时间。

从而,使数字钟的精度仅仅取决于单片机的产生机器周期电路和定时器硬件电路的精确度。

另外,程序较为简洁,具有可靠性和较好的可读性。

如果我们想将它应用于实时控制之中,只要对上述程序和硬件电路稍加修改,便可以得到实时控制的实用系统,从而应用到实际工作与生产中去。

数字电子钟的设计方法有多种,例如,可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟还可以利用单片机来实现电子钟等等。

这些方法都各有特点,其中,利用单片机实现的电子钟具有编程灵活,便于功能扩充,精确度高等特点[5]。

2整体设计思路

这部分主要介绍工作安排和整体设计的思想。

工作过程规划如下:

图2.1整体设计思路

针对要实现的功能,拟采用AT89C51单片机进行设计,AT89C51单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构[7]。

这样,既能做到经济合理又能实现预期的功能。

在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。

程序可分为闹钟的声音程序、显示程序、闹钟显示程序、调时显示、定时程序。

运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。

本电子钟设计主要是依照图2.1中的流程做出来的,时间分配比较均匀。

首先,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。

这是前期准备工作。

第二部分是硬件部分:

依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和数码管电路等。

第三部分是软件部分:

先学习理解汇编语言的编程方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。

第四部分是软件画图部分:

设计好电路后进行画图,包括电路图和仿真图的绘制。

第五部分是软件仿真部分:

软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查软件程序和硬件电路并进行修改直到仿真成功。

第六部分是硬件实现部分:

连接电路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。

最后进行功能扩展,本设计加进了日期显示与调整功能。

1.设计的任务与要求

电子钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。

电子钟从原理上讲是一种典型的数字电路,

因此,我们此次设计电子钟就是为了了解单片机的工作原理,从而学会制作电子钟。

而且通过电子钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法。

通过它可以进一步学习与掌握单片机原理与使用方法。

1.1设计指标

1.时间以12小时为一个周期;

2.显示时、分、秒;

3.具有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间;

4.计时过程具有报警功能,

1.2设计要求

1.画出电路原理图(或仿真电路图);

2.元器件及参数选择;

3.编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。

3.1AT89C51单片机[8]:

该单片机功能强大,不仅能满足设计的需要,也可以在设计要求的基础上进行一些扩展。

单片机的结构如下:

图3.1.1单片机引脚图

在使用时VCC接电源电压,GND接地。

P0,P1,P2,P3可作为输入或输出端口,RST是复位输入,接复位电路。

XTAL1和XTAL2接复位电路。

这些可以在硬件设计部分体现出来。

3.2数码管:

图3.3.1数码管

使用共阴极数码管时将6个数码管按相同功能连接起来,3与8相连,当选通端所接管脚为低电平时该数码管选通。

单片机的P2口作为选通端,连接各数码管的3、8引脚轮流显示,连接时要加7407和上拉电阻。

单片机的P1口作为功能段,通高电平的引脚会使相应段亮起,同样的也要与7407和电阻连接使用。

3.374HC573

74HC573功能表

4.2分块设计

这部分介绍各模块电路的设计方法和成果,主要分为:

输入部分、输出部分、复位和晶振电路。

4.2.1输入部分

在电子钟的输入部分,设置相应的置数功能,通过外部设备的输入,如按键,实现时间的修改[10-11]。

除此之外,调整闹铃、定时、日期时也需要按键进行输入。

在选用输入端口时,将P3引脚与按键相连进行输入[12]。

设计的输入部分如下:

4.2.2输出部分(显示电路)

该部分电路图如下所示:

在实际电路中采用单个数码管相连进行显示,先把数码管的1、2、4、5、6、7、9、10对应相连,然后把各晶体管的3和8引脚各自相连,P1.6~P1.0分别接a~g,P2作为选通端P2.0~P2.5分别从左到右接各数码管的3、8端。

采用动态显示,即一位一位地轮流点亮各位显示器[18],因此P2.0~P2.5轮流置0。

持续时间为1ms,这点在程序部分还会讲到。

4.2.3晶振与复位电路:

5程序设计

5.1程序思路

结合电路,程序的总体思路是[17]:

1、点复位键后,进行时间显示,从0时0分0秒开始。

2、按下按键1时,进行调时,此时按下4调整时,按下5调整分,若2秒钟未按键,则不再等待,恢复走时,持续按键时大约0.3秒步进1,下同。

3、按下2键时进行闹铃调整,用4、5键分别调时和分,此时只有前四位进行显示,即闹铃功能精确到分,2秒钟无按键则返回时间显示,时间到达闹铃所定时间时P0.7输出高电平,蜂鸣器响,按下按键2或3时蜂鸣器停止。

4、按3键时进行定时的设定,同样,分别通过4、5调整分和秒,若两秒未按键则不进行定时,设定之后再次按下3键则进行倒计时,倒计时时间未到时若按下1键则进行时间显示;若倒计时时间到则P0.7为高电平,蜂鸣器响。

定时的最大值为59分59秒。

在程序设计时,尽量改进算法,算法的改进可以使相对误差减小[12],或者可以使占用空间减小[14]。

另外,分块的设计思想要贯穿始终,整个程序较为繁杂,某些程序段会反复用到,因此采取的方法是写出多个程序段,通过跳转指令进行调用。

5.2程序设计步骤

在程序设计过程中,我遇到了很多困难,这部分也是让我学到很多东西的地方。

首先,我学习了定时器的相关知识,计数器的使用是很重要的组成部分[15],在这个设计中选择计数器T0。

T0的工作方式有:

方式1:

16位计数器,常用

方式2:

自动重装初值的8位定时计数器

方式3:

T0相当于两个独立的8位定时计数器

此程序采用方式1,方式1的定时时间t为t=(216-M)*12fosc。

其中M为定时器初值,fosc为12MHz,若M为0则t=65536*122*106=65.536ms。

因此可取50ms为计时单位[16],初值M应为50*10-3*106=216-M。

M=15536=00=3CB0。

即定时器初值为TH0=03CH,TL0=0B0H。

定时器中断20次为一秒,这部分在中

断程序中用到。

其次,我参看了文献中的设计思路,做到胸有成竹后再进行具体的程序书写工作。

认真学习了教科书中关于汇编语言编程的问题,熟悉了汇编语言的编程方法和语法习惯。

第三步就是进行具体的程序编写工作。

5.3程序的主要模块

5.3.1延迟程序

在动态扫描时,必然用到延迟程序,这里使用延迟1ms的程序,此程序需要

5.3.2中断服务子程序:

中断服务程序中,总体思路是:

由于初值是3CB0H,所以装满定时器需要50ms的时间,从而20次中断为一秒,一秒之后,判断是否到60秒,若不到则秒加一,然后返回,若到,则秒赋值为0,分加一,依次类推。

包括日期显示的功能也是如此。

另外,由于要实现倒计时功能,因此在中断程序中还要加入减一的寄存器,需要时将其进行显示。

基于以上考虑,以R3为倒计时中的秒,R4为倒计时的分,当秒加1时R3减一,减到0之后,秒赋值为59,分减一,直到分为0。

再显示走时部分。

流程框图如下:

5.经验体会

通过这次对数字电子钟的设计作,让我了解了电路设计的基本步骤,也让我了解了关于数字钟的原理与设计理念,要设计一个电路先进行软件模拟仿真再进行实际的电路制作。

但是最后的成品却不一定与仿真时完全一样,因为,再实际接线中有着各种各样的条件制约着。

而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。

所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。

通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际

通过电子钟的设计和制作,加深了对单片机的理解,能够更熟练地应用单片机实现预期的功能,对今后的工作有很大的帮助。

电子钟各项功能的实现,为自动控制的实现打下了理论基础,获得了实现方法。

当然,该电子钟还有很多不足之处,比如闹钟不能关闭,且只能定一个闹钟。

在今后的工作中还要对此加以研究,尽量实现更多的功能。

在今后的其他工作中,也可以把这次设计中的收获运用进去,这是我此次毕业设计得到的最大财富。

认真地完成了课程设计,在这个过程中,老师给了我极大的帮助,不仅是知识上的,更有很多心理上的支持,他引导我在各种杂事比较多的情况下能踏踏实实做点属于自己的工作,让我学会了自主学习。

课程设计是大学生活中重要阶段的工作,是真正考验我们能力的一项教学内容,在这个过程中我认真思考,不断尝试,收获了很多在平时的课堂上收获不到的东西。

课程设计即将结束,我会吸取毕业设计中的经验和教训,在今后的工作中少走弯路。

夏天即将来临,我们也即将离校,回首过去的日子,大学的确教给了我们很多东西。

此刻,我十分感谢母校、感谢老师们对我的教诲。

虽然有很多不舍,但我依然会昂首走向新的生活,不辜负老师的培养。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2