定时打铃Word格式.docx

上传人:b****5 文档编号:21764469 上传时间:2023-02-01 格式:DOCX 页数:40 大小:351.97KB
下载 相关 举报
定时打铃Word格式.docx_第1页
第1页 / 共40页
定时打铃Word格式.docx_第2页
第2页 / 共40页
定时打铃Word格式.docx_第3页
第3页 / 共40页
定时打铃Word格式.docx_第4页
第4页 / 共40页
定时打铃Word格式.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

定时打铃Word格式.docx

《定时打铃Word格式.docx》由会员分享,可在线阅读,更多相关《定时打铃Word格式.docx(40页珍藏版)》请在冰豆网上搜索。

定时打铃Word格式.docx

(1)显示时钟格式:

**时**分**秒。

(2)可任意设定时间达到定时控制,定时点可有2个。

(3)定时时间到,打铃1分钟,然后自动关闭打铃。

第二章系统组成及工作原理

2.1系统组成

图2-1定时打铃器系统框图

2.2工作原理

定时打铃器的设计可以分为两个阶段:

时钟显示设计和响铃设计。

时钟显示部分的设计主要由8255完成,8255片内定时中断,设定初值(如10ms),再取一单元进行计数,当中断一定次数(如100次),秒加1,计数器清零……一直循环,当秒加到60,分加1,秒清零……当分加到60则时加1,分清零,实现时钟计数,程序调用Display函数最终显示到数码管上。

响铃部分相对较简单,由at89s52单片机完成。

将P1.0与蜂鸣器相连,设定好响铃时间。

单片机接收到8255发送来的定时响铃信号的瞬间,向蜂鸣器发出低电平,蜂鸣器开始响铃,1分钟时间到时,8255向单片机发出关闭响铃的信号。

第三章硬件电路方案设计

图3-1方案一电路设计图

3.1方案一

如图3-1,方案一所设计的定时打铃器,大致由单片机、蜂鸣器、数码管显示部分及按键检测部分组成,利用AT89C51,通过数码管扫描、响铃、按键处理、比较等模块,实现当前时钟的显示及响铃。

蜂鸣器在响铃模块的控制下,用于模拟现实中的打铃;

显示器为6位数码管,通过数码管扫描,用于显示当前时间的“时”、“分”、“秒”,通过按键处理模块,对两个按键扫描,实现对时和分的校正。

比较模块为当前时间与时间表内时间比较,若相等就响铃。

3.2方案二

利用实验室里的实验箱,8255与AT89s52单片机、6个共阳数码管内部相连,从单片机P1.0引出一根线到蜂鸣器即可。

3.3方案比较

方案一与方案二相比,原理基本上一样。

但是考虑到实验室的客观原因,方案一更容易实现,因此设计的时候采用了方案一,直接使用试验箱设计。

3.4单元电路设计

3.4.1时钟显示设计

如图3-2,所示,用8255控制,用数码管的显示功能来设计。

显示部分硬件用六只八段数码管显示,这些LED发光二极管的阳极是互相连接在一起的,所以称为共阳极数码管。

八段接收到的不同电平,显示出不同的数字。

该模块主要是将运算模块和校时模块运算出来并存放在内存单元里的十六进制表示的时位、分位和秒位数值转化为十进制,并通过数码管显示出来。

只要做到每送一次段选码时也送一次位扫描码,并且每送一次位扫描码后,位码中的0右移一位作为下一次的位扫描码,即可实现由左向右使6只LED依次出现数字显示。

图3-28255时钟显示部分

3.4.2响铃设计

图3-3蜂鸣器响铃单元

单片机P1.0引出一根线,连接到蜂鸣器单元,如图3-3。

图中反相器的作用是驱动喇叭的,此方案的优点是:

硬件电路简单,稳定,现起来方便,很适合于实现中。

第四章软件设计

4.1程序设计思想

本次设计最主要的思想体现在使用了模块化的编程思想。

在确定了方案后,就仔细思考并统筹了整个程序框架,然后将其分为主程序、中断子程序、键盘扫描子程序、显示子程序、打铃子程序等几个部分来分别设计,这样不仅思路清楚,而且便于程序的编写和调试。

4.2主程序设计

主程序是整个系统软件的运行主体,各个子系统软件都必须经过它的调度,才能运行得当。

根据设计的功能要求,主程序中主要完成内存单元及定时器的初始化,显示和键盘的扫描。

部分按键说明:

A键

设定定时点1

MON键

确定键

B键

设定定时点2

F1/LS键

时加‘+1’键

C键

设定定时点3

STEP键

时加‘-1’键

D键

设定定时点4

RG/FS键

分加‘+1’键

F2/NX键

校时键

SCAL键

分加‘-1’键

表4-1

4.2.1主程序流程图

根据设计所规定要求,定时打铃器设计的流程图如图4.1所示。

(图4.1)主程序流程图

4.3子程序设计

根据这次模块化的设计思想,总共分成了按键处理子程序、中断服务程序、显示子程序三个部分。

4.3.1按键处理子程序

按键处理子程序主要包括读键值处理、数字键处理、校时键处理、定时键处理、确认键处理等,其流程图如图4.2所示:

4.3.2定时中断服务程序设计

本次中断服务程序设计中用了T0定时中断,其流程图如图4.3所示:

1、定时器初值分析

T0定时最长时间约为130ms,可用T0产生100ms的定时,再通过计时10次就可达到1s。

设定时初值为X(2^16-X)*2μs=100ms,得X=3CB0H.即TH0=3CH,TL0=B0H。

图4.3定时中断服务程序流程图

4.3.3显示子程序设计

这次显示电路DIR处理很简单,主要是通过一个子程序将30H、31H、32H单元中的内容“分割”到显缓区40H到45H中,从而调用DIR显示,其流程图如图4.4所示:

图4.4显示程序流程图

第五章程序流程图

7.1主程序流程图

a.主程序流程图:

图7-1主程序流程图

7.2中断程序流程图

图7-2中断程序流程

第六章调试结果及分析

使用实验箱上的元器件,对8255及单片机编程,采用定时器T0和T1进行中断设计。

在计算机上运行单片机软件开发系统,输入程序代码,进行调试。

编译无误产生目标文件,连接到实验箱的硬件电路上。

开始运行,6个数码管开始闪烁,1秒过去却不开始计数。

检查代码的时候发现显示函数中的Delay_ms

(2)由于粗心输入了Delay_ms(22),改正后重新运行,数码管静止显示时间10:

00:

00。

为什么不开始计数呢?

原因可能有两个:

10ms计数点xx设置错误或者是秒进位sec++设置错误。

经过与同组人仔细的排查分析,从设计流程的角度出发,发现是10ms计数点xx的位置设置不当。

进行了几次修改,最后得到正确的运行结果(程序见附录二)。

数码管能正常显示计时后,将设计好的响铃部分程序加到主函数内,先用LED灯代替蜂鸣器进行测试,P1.0引出一根线到L1灯,到了定时时间能实现亮灯,1分钟后灯自动灭。

至此时,整个设计基本上完成了,连接蜂鸣器,设计要求全部都能实现,而且能设置多个定时时间,能随意设置响铃时间。

第七章总结

通过为期4周的课程设计,本人对过去学过的知识有了进一步巩固,也学到了很多课堂上学不到的知识。

特别是对各种元器件的性能和设计方法有了更深刻的了解。

但是,由于对单片机课程的了解不深,在软件设计编程当中还是能力不够,对比较复杂的编程不能够很快及时的完成,让自己进一步明白了自己在这方面知识的短浅,激励了自己在日后的学习中应更加的努力。

由于学校实施企业式的管理模式,要求我们象职工一样上下班,对我体会了作为一位上班族的感觉,使我明白日后应该成为一位合格的爱岗、敬岗的员工。

还从中学会了遵守纪律、做事细心、勇于创新的人生观。

本次课程设计是用8255单片机CPU及接口电路设计一个数字时钟,经过一个多星期的调试,结果满足设计要求,验证无误。

设计主要用到了多种芯片,程序也比较长比较麻烦,同时也遇到了不少困难,尤其是关于校时模块的设计实现。

关于显示模块,在以前的实验中做过,所以问题很容易解决。

通过本次设计,我系统的了解了实时时钟的设计流程,尤其是硬、软件的设计方法,掌握了键盘显示电路的基本功能及编程方法,掌握了键盘电路和显示电路的一般原理,也进一步掌握了8255的使用和中断处理器程序的编程方法。

开拓了思路,锻炼了实践动手能力,提高了分工协作能力和分析问题,解决问题的能力,达到了本次课程设计的目的。

参考文献

【1】张先庭.单片机原理、接口与C51应用程序设计.北京:

国防工业出版社,2011.1

【2】刘建清.51单片机C语言非常入门与视频演练.北京:

电子工业出版社,2010.5

【3】张义和.例说51单片机(C语言版).北京:

人民邮电出版社,2010.6

【4】张友德、赵志英、涂时亮.单片微型机原理、应用与实验.上海.复旦大学出版社,2008年5月.

【5】吴开志、陈黎娟、邓谦、任爱山.单片机技术及应用实验指导书.南昌.南昌航空大学出版社,2008年.

【6】吴清绣.微型计算机原理及接口技术.北京.中国科学技术大学出版社,2004年.

【7】吴向军.汇编语言程序设计.北京.高等教育出版社,2001年.

【8】贾金铃.微型计算原理及应用.重庆.重庆大学出版社,2006年.

【9】胡汉才.单片机原理及其接口技术.北京.清华大学出版社.2004年

附录一方案一代码

ORG0000H;

LJMPMAIN

ORG000BH

LJMPINT

MAIN:

MOVSP,#67H

MOVTMOD,#01H;

定时器0选择方式1作为时钟信号

MOVIE,#8AH;

中断控制IE设为8A

MOVTH0,#3CH;

定时器0初始化

MOVTL0,#0B0H

MOV30H,#23H

MOV31H,#59H

MOV32H,#50H

MOV33H,#00H;

33H清0

MOV34H,#1AH;

定时1的显缓单元

MOV35H,#00H

MOV36H,#00H

MOV37H,#2AH;

定时2的显缓单元

MOV38H,#00H

MOV39H,#00H

MOV3AH,#3AH;

定时3的显缓单元

MOV3BH,#00H

MOV3CH,#00H

MOV3DH,#4AH;

定时4的显缓单元

MOV3EH,#00H

MOV3FH,#00H

MOV40H,#0BAH;

时显缓单元

MOV41H,#00H

MOV42H,#00H

MOV43H,#00H

MOV79H,#00H

MOV7AH,#00H

MOV7BH,#00H

MOV44H,#00H

MOVR0,#79H;

将显缓单元79H给R0

MOVR3,#06H

XQ:

MOV@R0,#00H

INCR0

DJNZR3,XQ

MOVR0,#79H

CLR08H

CLR09H

CLR00H

CLR0AH

CLR0BH;

关闭定时器标志

CLR0CH

CLR0DH

CLR0EH

MAN:

LCALLBJ

MOVA,44H

CPLA

MOVP1,A

LCALLKEYS

MOVA,B

CJNEA,#0FFH,D1

JB09H,D8

LCALLTM

JMPMAN

D1:

SETB09H

DECA

MOVR7,A

RLA

ADDA,R7

MOVDPTR,#PMTAB

JMP@A+DPTR

D8:

LCALLDISP

LJMPMAN

PMTAB:

LJMPPM0

LJMPPM1

LJMPPM2

LJMPPM3

LJMPPM4

LJMPPM5

LJMPPM6

LJMPPM7

LJMPPM8

LJMPPM9

LJMPPM10

PM0:

CLR0FH

SETB0AH

MOV43H,#01H

MOVR1,#36H

LCALLTM0

LJMPD8

PM1:

CLR0FH

MOV43H,#02H

MOVR1,#39H

PM2:

MOV43H,#03H

MOVR1,#3CH

PM3:

MOV43H,#04H

MOVR1,#3FH

PM4:

SETB0FH

MOV43H,#05H

MOV42H,31H

MOV41H,30H

MOVR1,#42H

PM5:

SETBTR0

PM6:

JB0AH,GGG

GGG:

MOVA,43H

MOVDPTR,#PMTAB2

PMTAB2:

LJMPPC0

LJMPPC1

LJMPPC2

LJMPPC3

LJMPPC4

PC0:

MOVA,35H

CJNEA,#23H,TY3

TY3:

JCTY

CLRA

JMPTY1

TY:

ADDA,#01H

DAA

TY1:

MOV35H,A

PC1:

MOVA,38H

CJNEA,#23H,TP3

TP3:

JCTP

JMPTP1

TP:

TP1:

MOV38H,A

PC2:

MOVA,3BH

CJNEA,#23H,TB3

TB3:

JCTB

LJMPB1

TB:

B1:

MOV3BH,A

PC3:

MOVA,3EH

CJNEA,#23H,TW3

TW3:

JCTW

JMPTW1

TW:

TW1:

MOV3EH,A

PC4:

MOVA,41H

CJNEA,#23H,TE3

TE3:

JCTE

JMPTE1

TE:

TE1:

MOV41H,A

CLRTR0

MOV31H,42H

MOV30H,41H

MOV32H,#00H

MOV33H,#00H

PM7:

JB0AH,GGG1

GGG1:

MOVDPTR,#PMTAB1

PMTAB1:

LJMPPN0

LJMPPN1

LJMPPN2

LJMPPN3

LJMPPN4

PN0:

MOVA,35H

CJNEA,#00H,TU

MOVA,#23H

JMPTU1

TU:

MOV79H,A

ADDA,#00H

CJNEA,79H,TU3

TU3:

JCTU1

SUBBA,#0CH

TU1:

PN1:

CJNEA,#00H,TG

JMPTG1

TG:

CJNEA,79H,TG3

TG3:

JCTG1

TG1:

PN2:

CJNEA,#00H,EK

JMPK1

EK:

CJNEA,79H,EK3

EK3:

JCK1

K1:

PN3:

CJNEA,#00H,EB

JMPEB1

EB:

CJNEA,79H,EB3

EB3:

JCEB1

EB1:

PN4:

CJNEA,#00H,EY

JMPEY1

EY:

CJNEA,79H,EY3

EY3:

JCEY1

EY1:

PM8:

JB0AH,GGG2

GGG2:

MOVDPTR,#PMTAB3

PMTAB3:

LJMPPD0

LJMPPD1

LJMPPD2

LJMPPD3

LJMPPD4

PD0:

MOVA,36H

CJNEA,#59H,TTT3

TTT3:

JCTTT

JMPTTT1

TTT:

TTT1:

MOV36H,A

PD1:

MOVA,39H

CJNEA,#59H,AF3

AF3:

JCAF

JMPAF1

AF:

AF1:

MOV39H,A

MOVR1,#39H

PD2:

MOVA,3CH

CJNEA,#59H,YY3

YY3:

JCYY

JMPYY1

YY:

YY1:

MOV3CH,A

MOVR1,#3CH

PD3:

MOVA,3FH

CJNEA,#59H,AS3

AS3:

JCAS

JMPAS1

AS:

AS1:

MOV3FH,A

MOVR1,#3FH

PD4:

MOVA,42H

CJNEA,#59H,HZ3

HZ3:

JCHZ

JMPHZ1

HZ:

HZ1:

MOV42H,A

MOVR1,#42H

PM9:

JB0AH,GGG3

GGG3:

MOVDPTR,#PMTAB5

PMTAB5:

LJMPPQ0

LJMPPQ1

LJMPPQ2

LJMPPQ3

LJMPPQ4

PQ0:

MOVA,36H

CJNEA,#00H,QQ

MOVA,#59H

JMPQQ1

QQ:

CJNEA,79H,QQ3

QQ3:

JCQQ1

SUBBA,#0CH

QQ1:

PQ1:

MOVA,39H

CJNEA,#00H,FF

JMPFF1

FF:

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1