机电一体化单片机在定时闹铃中的应用论文Word下载.docx

上传人:b****2 文档编号:5001714 上传时间:2023-05-04 格式:DOCX 页数:45 大小:274.63KB
下载 相关 举报
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第1页
第1页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第2页
第2页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第3页
第3页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第4页
第4页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第5页
第5页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第6页
第6页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第7页
第7页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第8页
第8页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第9页
第9页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第10页
第10页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第11页
第11页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第12页
第12页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第13页
第13页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第14页
第14页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第15页
第15页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第16页
第16页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第17页
第17页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第18页
第18页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第19页
第19页 / 共45页
机电一体化单片机在定时闹铃中的应用论文Word下载.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

机电一体化单片机在定时闹铃中的应用论文Word下载.docx

《机电一体化单片机在定时闹铃中的应用论文Word下载.docx》由会员分享,可在线阅读,更多相关《机电一体化单片机在定时闹铃中的应用论文Word下载.docx(45页珍藏版)》请在冰点文库上搜索。

机电一体化单片机在定时闹铃中的应用论文Word下载.docx

3软件设计4

3.1概述4

3.2主模块的设计4

3.3基本显示模块设计5

3.4时间设定模块设计5

3.5闹铃功能的实现6

4Proteus程序调试9

5设计总结11

参考文献12

致  谢13

附1:

源程序代码14

附2:

系统原理图27

1绪论

1.1概述

  定时闹钟设计可采用数字电路实现,也可以采用单片机来完成。

定时闹钟是用数字集成电路构成的,用数码管显示“时”,“分”,“秒”的现代计时装置。

单片机具有集成度高、功能强、通用性好、特别是它能耗低、价格便宜、可靠性高、抗干扰能力强和使用方便等独特的优点,所以单片机现在广泛的应用到家用电器、机电产品、儿童玩具、机器人、办公自动化产品等领域。

所以在该设计中采用单片机利用AT89C51,它是低功耗、高性能的CMOS型8位单片机。

  设计内容包括了秒信号发生器、时间显示电路、按键电路、供电电源以及闹铃指示电路等几部分的设计。

  课设准备中根据具体的要求,查找资料,然后按要求根据已学过的时钟程序编写定时闹钟的程序,依据程序利用proteus软件进行了仿真试验,对出现的问题进行分析和反复修改源程序,最终得到正确并符合要求的结果。

2系统总体方案及硬件设计

2.1总体设计

电子闹钟应包括秒信号发生器、时间显示电路、按键电路、供电电源以及闹铃指示电路等几部分。

按键功能说明:

K1,设置时间和闹钟的小时;

K2,设置小时以及设置闹钟的开关;

K3,设置分钟和闹钟的分钟;

K4;

设置完成退出。

电子闹钟的系统框图如下所示:

图1

电子闹钟的主电路指的是图1中虚线框内部分,主要涉及到CPU电路和按键按钮电路。

主机的设计具体地说有:

1)系统时钟电路设计;

2)系统复位电路设计;

3)按键与按钮电路设计;

4)闹铃声指示电路设计。

2.2系统时钟电路设计

对于时间要求不是很高的系统,只要按图进行设计就能使系统可靠起振并稳定运行。

但由于原理图中的C1、C2电容起着系统时钟频率微调和稳定的作用,因此,在本闹钟系统的实际应用中一定要注意正确选择参数(30±

10PF),并保证对称性(尽可能匹配),选用正牌厂家生产的瓷片或云母电容,如果可能的话,温度系数要尽可能低。

实验表明,这2个电容元件对闹钟的走时误差有较大关系。

2.3系统复位电路的设计

智能系统一般应有手动或上电复位电路。

复位电路的实现通常有两种方式:

1)RC复位电路;

2)专用µ

P监控电路。

前者实现简单,成本低,但复位可靠性相对较低;

后者成本较高,但复位可靠性高,尤其是高可靠重复复位。

对于复位要求高、并对电源电压进行监视的场合,大多采用这种方式。

本次课程设计采用了上电按钮电平复位电路。

2.4闹钟指示电路设计

闹铃指示可以有声或光两种形式。

本系统采用声音指示。

关键元件是蜂鸣器。

蜂鸣器有无源和有源两种,前者需要输入声音频率信号才能正常发声,后者则只需外加适当直流电源电压即可,元件内部已封装了音频振荡电路,在得电状态下即起振发声。

市场上的有源蜂鸣器分为3V、5V、6V等系列,以适应不同的应用需要。

闹钟电路是用比较器来比较计时系统和定时系统的输出状态,如果计时系统和定时系统的输出状态相同,则发出一个脉冲信号,再和一个高频信号混合,送到放大电路驱动扬声器发声,从而实现定时闹响的功能。

其电路设计参见系统原理图。

2.5电子闹钟的显示电路设计

本次课程设计采用了6位数码管显示电路。

在6位LED显示时,为了简化电路,降低成本,采用动态显示的方式,6个LED显示器共用一个8位的IO,6位LED数码管的位选线分别由相应的P2.0~P2.5控制,而将其相应的段选线并联在一起,由一个8位的IO口控制,即P0口。

译码显示电路将“时”、“分”、“秒”计数器的输出状态菁七段显示译码器译码,通过6位LED七段显示器显示出来。

到达定时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现闹铃。

校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整的。

3软件设计

3.1概述

软件设计的重点在于秒脉冲信号的产生、显示的实现、以及按键的处理等方面。

基于软件的秒脉冲信号通常有延时法和定时中断法。

延时法一般采用查询方式,在延时子程序前后必然需要查询和处理的程序,导致误差的产生,因此其秒脉冲的精度不高;

中断法的原理是,利用单片机内部的定时器溢出中断来实现。

例如,设定某定时器每100ms中断1次,则10次的周期为1s。

本系统中所使用的晶振频率为12MHZ。

3.2主模块的设计

主模块是系统软件的主框架。

结构化程序设计一般有“自上而下”和“自下而上”两种方式,“自上而下”法的核心就是主框架的构建。

它的合理与否关系到程序最终的功能的多少和性能的好坏。

本系统的主模块的程序框图如下图2所示:

图2

3.3基本显示模块设计

基本显示模块设计的重点是由显示代码取得相应的段码,显示段码数据的并行发送,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。

程序流程如图3所示。

图3

3.4时间设定模块设计

时间设定模块的设计要点是按键的去抖处理与“一键多态”的处理。

即只涉及4个键完成了6位时间参数的设定。

软件法去抖动的实质是软件延时,即检测到某一键状态变化后延时一段时间,再检测该按键的状态是否还保持着,如是则作为按键处理,否则,视为抖动,不予理睬。

去抖中的延时时间一般参考资料多描述为10ms左右,实际应用中,应大于20ms,否则,会导致按一次作多次处理,影响程序正常执行。

“一键多态”即多功能键的实现思想是,根据按键时刻的系统状态,决定按键采取何种动作,即何种功能。

其流程图如下图4所示:

图4

3.5闹铃功能的实现

闹铃功能的实现涉及到两个方面:

闹铃时间设定和是否闹铃判别与相应处理。

闹铃时间设定模块的设计可参照时间设定模块,这里着重阐述闹铃判别与处理模块的设计问题。

闹铃判别与闹铃处理的关键在于判别何时要进行闹铃。

当时十位、时个位、分十位、分个位中任一位发生改变(进位)时,就必须进行闹铃判别。

译码显示电路将“时”、“分”、“秒”计数器的输出送到七段显示译码驱动器译码驱动,通过六个七段LED显示器显示出来。

闹铃电路根据计时系统的输出状态产生一脉冲信号,然后加上一个高频或低频信号送到放大电路驱动蜂鸣器发声实现报时。

校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整。

其流程图如下所示:

图5.1

图5.2

考虑到实用性,在该电子钟的设计中修改定时或调整时间时采用了闪烁,而且以定时20组闹钟。

在编程上,首先进行了初始化定义了程序的入口地址以及中断的入口地址,在主程序的开始定义了一组固定单元用来存储计数的秒,分,时以及定时时间的序号等。

在显示程序段中主要进行了闪烁的处理,采用定时器中断置标志位,再与位选相互结合的方法来控制调时或定时中的闪烁。

时,分,秒显示则是用了软件译码(查表)的方式,再用了一段固定的程序段进行进制转化。

初始化之后,用中断方式对其计数,计数的同时采用了定时器比较的方法,比较当前计数时间与定时时间是否相等,若相等则将闹铃标志位置数。

由于定义了定时闹钟组,在这里采用中断组次,每中断一次比较一组闹钟,避免了一次比较中断时间过长,影响下次中断时间。

显示之后查询闹铃标志位是否与前面所置数相等,若相等则响铃。

为了避免响铃影响显示,采用了每显示几屏以后在显示程序中出现脉冲,驱动喇叭,不会影响显示。

之后用查询方式对按键进行判断,若有键按下,则进行软件延时消抖,避免了抖动引起的干扰,执行相应的定时,选时或调时程序段。

对当前时间或定时时间修改后又返回到最初的显示程序段,如此循环下去。

4Proteus程序调试

本次课程设计所采用的程序调试软件为wave6000集成调试软件,所采用的仿真软件为protus6professional软件。

本次试验的效果图如下所示:

性能及误差分析

该电子钟有三个按键:

K1,K2和K3键。

按K1键进行校时,可以分别对时及分进行单独校时,使其校正到标准时间,校时时需要校正哪一位哪一位就闪烁。

按K2键是对闪烁位进行加一或返回的操作。

按K3键调整定时时间和定时组数,需要调整哪一位哪一位就闪烁,该电子钟最多可定时20组闹钟。

经测试该电子钟在一天的累计误差约为0.1秒。

该电子钟的误差主要由晶振自身的误差所造成,晶振的误差约为0.0001~0.000001。

在软件的编程过程中所产生的误差比较小,在重装初值的过程中大概需要约8个机器周期,但在程序开始对定时器赋初值时,多加了8个机器周期,减小了这方面的误差。

另外在中断的过程中,只会在第一次计时时产生时间的偏移,而它所产生累计误差很小,可以忽略。

结构化软件程序的调试一般可以将重点放在分模块调试上,统调是最后一环。

软件调试可以采取离线调试和在线调试两种方式。

前者不需要硬件仿真器,可借助于软件仿真器即可;

后者一般需要仿真系统的支持。

本次课设,采用wave6000集成调试软件来调试程序,通过各个模块程序的单步或跟踪调试,使程序逐渐趋于正确,最后统调程序。

仿真部分采用protus6professional软件,此软件功能强大且操作较为简单,可以很容易的实现各种系统的仿真。

首先打开protus6professional软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;

绘制好后再选择wave6000已经编译好的*.hex文件,选择运行,观察显示结果,根据显示的结果和课设的要求再修改程序,再运行查,直到满足要求。

5设计总结

单片机是一门应用性很强的学科,课程设计是培养我们综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。

虽然在做课程设计以前已经系统的把单片机课本认真的学习了一下,但是在刚拿到设计任务书时还是有点一头雾水,不知道该从哪里下手。

令人欣慰的是经过一周的学习,虽然过程很艰辛,但是总算实现了定时闹钟的功能,所有的努力都很值得。

这一周的大部分时间都在研究程序怎么处理,在这个过程中加深了我对汇编语言命令的应用,而且也更加了解到软硬件配套的重要性。

通过这次课程设计,使我对这们功课有了更深刻的认识和了解。

首先对于硬件电路的工作原理有了进一步系统的学习,同样就有了进一步的认识,使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,才能提高自己的实际动手能力和独立思考的能力。

其次软件在这次设计中也有不足之处,比如音乐的响声不连续,但又不知道从哪个地方入手解决这个问题,这要求在以后的学习中,拓宽自己的知识面,解决设计的不足之处。

总之,通过这次课程设计不仅使我巩固了本课程所学的基本知识,还使我具有了撰写科研报告的初步训练能力,我相信这些能力在我以后的工作或者是再学习中一定会起到不小的作用,一切的辛苦和艰难都是值得的。

参考文献

[1]余发山单片机原理及应用技术,徐州:

中国矿业大学出版社,2003

[3]何立民.单片机高级教程(应用与设计).北京:

北京航空航天大学出版社,2000年.53-98

[6]《单片机原理及接口技术实验》朱定华北京北方交通大学出版社2002.11

致  谢

经过两个月的忙碌和工作,本次的毕业设计已经接近尾声,作为一个专科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及一起工作的同学们的支持,想要完成这个设计是难以想象的。

从论文选题到搜集资料,从写稿到反复修改,期间经历了喜悦、聒噪、痛苦和彷徨,在写作论文的过程中心情是如此复杂。

如今,伴随着这篇毕业论文的最终成稿,复杂的心情烟消云散,自己甚至还有一点成就感.这篇毕业论文就是我的舞台,以下的言语便是有点成就感后在舞台上发表的发自肺腑的诚挚谢意与感想:

首先,我要感谢,非常感谢我的导师杨斌老师。

他为人随和热情,治学严谨细心。

在闲聊中他总是能像知心朋友一样鼓励你,在论文的写作和措辞等方面他也总会以“专业标准”严格要求你,从选题、定题开始,一直到最后论文的反复修改、润色,杨斌老师始终认真负责地给予我深刻而细致地指导,帮助我开拓论文思路,精心点拨、热忱鼓励。

正是杨斌老师的无私帮助与热忱鼓励,我的毕业论文才能够得以顺利完成,谢谢杨斌老师。

其次,还要感谢我的一个同学,他在本次设计中勤奋工作,克服了许多困难来完成此次毕业设计,并承担了大部分的工作量。

如果没有他的努力工作,此次设计的完成将变得非常困难。

还有那些在这期间曾给予我帮助的同学们.

最后,我要感谢,非常感谢两年多的大学生活,感谢我的家人和那些永远也不能忘记的朋友,他们的支持与情感,是我永远的财富。

谢谢!

源程序代码

K1EQUP1.0;

在程序开始前定义变量

K2EQUP1.1

K3EQUP1.2

K4EQUP1.3

ORG0000H

LJMPMAIN

ORG000BH

LJMPTIME

ORG0100H

MAIN:

MOVSP,#50H

MOV20H,#00H;

时间BINSECOND

MOV21H,#00H;

BINMINUTE

MOV22H,#00H;

BINHOUR

MOV23H,#01H;

闹铃BINMINUTE

MOV24H,#01H;

MOV25H,#00H;

定义一个标志位

MOV30H,#00H;

时间BCDSECOND

MOV31H,#00H;

MOV32H,#00H;

BCDMINUTE

MOV33H,#00H;

MOV34H,#00H;

BCDHOUR

MOV35H,#00H;

MOV36H,#01H;

闹铃BCDMINUTE

MOV37H,#00H;

MOV38H,#01H;

MOV39H,#00H;

MOVTMOD,#01H;

16位计数器T0,方式1

MOVTH0,#03CH;

赋初值

MOVTL0,#0B0H

SETBTR0;

T0启动计数

MOVR2,#14H;

计数器

MOVP2,#0FFH

LOOP:

LCALLTIMEPRO;

调用现在时间与闹铃时间比较程序

LCALLDISPLAY1;

调用现在时间显示子程序

JBK1,M1;

判断按键是否按下

LCALLXIAOZHEN1;

调用消抖程序

MOVC,25H.0

JCA1

A1:

CLR25H.0

LCALLSETTIME;

调用设置现在时间子程序

LJMPLOOP

M1:

JBK2,M2

LCALLXIAOZHEN2

MOVC,25H.0

JCA2

A2:

LCALLSETATIME;

调用设置闹钟的程序

M2:

JBK4,M3

A3:

LCALLXIAOZHEN3

JCA4

A4:

M3:

LJMPLOOP

SETTIME:

L0:

LCALLDISPLAY1

JBK2,L1

LCALLXIAOZHEN4

JCA5

A5:

INC22H

MOVA,22H

CJNEA,#18H,GO12

MOV22H,#00H

MOV34H,#00H

MOV35H,#00H

LJMPL0

L1:

JBK3,L2

LCALLXIAOZHEN5

JCA6

A6:

INC21H

MOVA,21H

CJNEA,#3CH,GO11

MOV21H,#00H

MOV32H,#00H

MOV33H,#00H

GO11:

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

GO12:

MOV34H,B

MOV35H,A

L2:

JBK4,L0

LCALLXIAOZHEN3

JCAX

AX:

RET

SETATIME:

LCALLDISPLAY2;

调用闹钟设置,闹铃响时的显示程序

N0:

LCALLDISPLAY2

JBK3,N1

LCALLXIAOZHEN6

JCA7

A7:

INC24H

MOVA,24H

CJNEA,#24,GO22

MOV24H,#00H

MOV38H,#00H

MOV39H,#00H

LJMPN0

N1:

JBK1,N2

LCALLXIAOZHEN7

JCA8

A8:

INC23H

MOVA,23H

CJNEA,#60,GO21

MOV23H,#00H

MOV36H,#00H

MOV37H,#00H

GO21:

MOV36H,B

MOV37H,A

GO22:

MOV38H,B

MOV39H,A

N2:

JBK4,N0

JCA9

A9:

TIMEPRO:

MOVA,21H

MOVB,23H

CJNEA,B,BK

MOVB,24H

SETB25H.0

JCXX

XX:

LCALLTIMEOUT

BK:

RET

TIMEOUT:

X1:

LCALLBZ

LCALLDISPLAY2

CLR25H.0

JBK4,X1

BZ:

CLRP3.7

MOVR7,#250

T2:

MOVR6,#124

T3:

DJNZR6,T3

DJNZR7,T2

SETBP3.7

JBK4,XY

JCXY1

XY:

XY1:

XIAOZHEN1:

JBK1,XIAOZHEN1

MOVC,K1

JCXIAOZHEN1

LCALLDELAY

STOP1:

MOVC,K1

JNCSTOP1

XIAOZHEN2:

JBK2,XIAOZHEN2

MOVC,K2

JCXIAOZHEN2

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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