多功能时钟课程设计报告.docx

上传人:b****1 文档编号:12468478 上传时间:2023-04-19 格式:DOCX 页数:50 大小:154.23KB
下载 相关 举报
多功能时钟课程设计报告.docx_第1页
第1页 / 共50页
多功能时钟课程设计报告.docx_第2页
第2页 / 共50页
多功能时钟课程设计报告.docx_第3页
第3页 / 共50页
多功能时钟课程设计报告.docx_第4页
第4页 / 共50页
多功能时钟课程设计报告.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

多功能时钟课程设计报告.docx

《多功能时钟课程设计报告.docx》由会员分享,可在线阅读,更多相关《多功能时钟课程设计报告.docx(50页珍藏版)》请在冰豆网上搜索。

多功能时钟课程设计报告.docx

多功能时钟课程设计报告

多功能时钟课程设计报告

 

沈阳工程学院

 

课程设计

 

设计题目:

多功能时钟程序设计

 

系别:

自控系班级:

测控本101

学生姓名:

鞠智恒学号:

2010312140

指导老师:

吕勇军职称:

教授

起止日期:

2013年1月6日至2013年1月18日

沈阳工程学院

 

课程设计任务书

课程设计题目:

多功能时钟程序设计

 

系别自控系班级测控本101

学生姓名鞠智恒学号2010312140

指导教师吕勇军职称教授

课程设计进行地点:

实训F422

任务下达时间:

13年1月6日

起止日期:

13年1月6日起——至13年1月18日止

教研室主任年月日批准

 

多功能时钟程序设计成绩评定表

指导教师评审意见

评价内容

具体要求

权重

评分

加权分

论证

独立查阅文献,制定课程设计方案和日程安排。

0.1

5

4

3

2

工作能力态度

工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作。

0.2

5

4

3

2

工作量

按期圆满完成规定的设计任务,工作量饱满,

0.2

5

4

3

2

说明书的质量

说明书立论正确,论述充分,文字通顺,技术用语准确,符号统一,书写工整规范。

0.5

5

4

3

2

指导教师评审成绩

(加权分合计乘以12)

加权分合计

指导教师签名:

年月日

评阅教师评审意见

评价内容

具体要求

权重

评分

加权分

查文献

查阅文献有广泛性,有综合归纳资料的能力

0.2

5

4

3

2

工作量

工作量饱满,难度适中

0.5

5

4

3

2

说明书的质量

说明书立论正确,论述充分,文字通顺,技术用语准确,符号统一,书写工整规范。

0.3

5

4

3

2

评阅教师评审成绩

(加权分合计乘以8)

加权分合计

评阅教师签名:

年月日

课程设计总评成绩

系部:

自控系班级:

测控本101学生姓名:

鞠智恒

中文摘要

 

时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。

怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?

这就要求人们不断设计出新型时钟。

电子时钟主要是采用先进的当代电子技术,使用微型时钟芯片的时钟,与传统的机械钟相比,它的时钟精度,显示直观,无机械传动装置,广泛应用于人们的生活环境之中。

此外,人们在生活和工业、农业生产中对时钟的功能的也提出了许多更高的要求如:

闹钟,日历,所以需要具有多种功能的新型电子时钟。

根据人们的不同需求,我们就需要设计一种具有可以正常显示时钟/日历并具有定时报时功能的多功能电子钟。

通过采集各种电子钟发展的相关资料,对比分析后决定利用单片机技术,实现多功能电子钟的各项设计。

该数字钟采用液晶显示屏显示其时间与定时时间,即采用P6口输入,P7口输出,由R0输入需显示的时间,再通过延时程序将时间稳定的显示在液晶屏上。

校准时间由外部中断4及开关按键控制;定时时间由外部中断3及开关按键控制,KEY3、KEY4键每按一次其时分秒的数字增加一。

 

关键字:

单片机,数字钟,校时,定时器,日历

 

1课程设计要求

1.1设计主要内容及要求

1)编写多功能时钟程序

2)能够显示时、分、秒的时钟程序。

3)具有闹钟功能。

4)能够进行时间调整。

1.2对设计论文撰写内容、格式及字数的要求

1)课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。

2)学生应撰写时应做到文理通顺,内容正确完整,书写工整,装订整齐。

3)论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求

4)课程设计论文装订顺序为:

封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。

1.3时间进度安排

顺序

阶段日期

计划完成内容

地址

1

1月2日

教师讲解题目,学生查阅相关资料

实训F422

2

1月3日

查阅相关资料、进行方案论证

实训F422

3

1月4日

确定闹钟设置时间调整方法

实训F422

4

1月5、6、9日

编写程序

实训F422

5

1月10、11日

调试程序

实训F422

6

1月12日

撰写论文

实训F422

7

1月13日

论文答辩

实训F422

 

2课程设计思路

本文主要介绍用单片机编程来实现多功能时钟的方法,本设计由单片机C8051F芯片、开关K1~K8、LED灯及液晶显示屏为核心,编辑一个程序使他们构成了一个单片机数字时钟。

与传统时钟相比,它具有走时精确,显示直观等特点。

它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时、日期、星期、闹钟等功能等特点。

2.1计时

当T0进入中断后,先给T0计时1s,再计时60s;当秒计数满60s后开始分的计数,同时将秒清零,否则返回程序继续执行;同理当分计数到60min,开始时的计时并共计数24次,与此同时分、秒清零。

当完成24小时的计时后,开始日期计数与时分计数原理相同结束计时后返回主程序。

2.2校时

校时就是对时间进行调整,当时钟时刻不准时可以进行校时。

通过开关K1~K4来选择调整时分秒,并用KEY3进行加一调整。

2.3闹铃

定时程序实则就是让系统设定一个闹铃时间,并使LED灯在到达时间时亮灯。

先判断星期是否相等,不等跳出闹铃程序,相等则继续判断时是否相等,不等跳出,相等继续向下判断分和秒。

当系统设定的秒、分、时、星期与显示的时间都相等时跳到程序TSR使LED亮。

定时的时刻由K1、K2、K3、K4来选择时分秒和星期的调整并用KEY4来进行加一调整。

 

3设计流程图

判断是否为24h

时加一

判断是否相等

4各模块设计

4.1时钟部分

主程序主要是使各端口使能,保证各端口正常使用(主程序请参考附录)。

T0工作于定时方式1,进行16位计数。

其中秒的地址为30H,分的地址为31H,小时的地址为32H,星期地址为33H,日的地址为34H,月的地址为35H,年的地址为36H。

当T0进入中断后,先给T0赋初值3CB0,定时50ms,循环7次计时1s,再跳入加一子程序JIA1中实现秒加一,循环60次计时60s;当秒计数满60s后开始分的计数,同时将秒清零重新计时,否则返回程序继续执行;同理当分计数到60min,程序开始时的计时并共计数24次,同理计时日期。

即时结束后返回主程序等待。

在时钟程序里还加了一个判定K8口的开关来控制计时暂停和继续。

$INCLUDE(C8051F020.INC)

ORG0000H

AJMPMAIN

ORG000BH

AJMPTINT0

ORG0093H

LJMPKEY3

ORG009BH

LJMPKEY4

ORG0100H

MAIN:

MOVWDTCN,#0DEH;关看门狗

MOVWDTCN,#0ADH

MOVOSCICN,#05H;内部振荡4MHz

MOVP1MDOUT,#0FFH;设置P1的输出方式

MOVP74OUT,#0F0H;端口6、端口7输出方式为推挽输出

MOVCKCON,#00H;T0定时器12分频

MOVTMOD,#01H;T0处于工作方式一,16位

MOVTCON,#10H;TR0=1,允许T0计数

MOVXBR2,#40H;交叉开关总使能

MOVEIE2,#30H;中断6、中断7使能

MOVP3IF,#0CH;中断7上升沿触发

MOVTH0,#00H;赋初值

MOVTL0,#00H

MOV30H,#00H;秒存储地址

MOV31H,#00H;分存储地址

MOV32H,#00H;时存储地址

MOV33H,#01H;星期存储地址

MOV34H,#01H;日存储地址

MOV35H,#01H;月存储地址

MOV36H,#00H;年存储地址

MOV40H,#00H;定时秒存储地址

MOV41H,#00H;定时分存储地址

MOV42H,#00H;定时时存储地址

MOV43H,#01H;定时星期存储地址

MOVR1,#07H;1s循环次数

MOVIE,#82H;中断使能

AJMP$

TINT0:

MOVTL0,#00H;定时50ms

MOVTH0,#00H

DJNZR1,X;计时1s

MOVR1,#07H

MOV20H,P5;开关

JNB07H,LOP_1;计时开关

LCALLJIA1;跳转到计时程序

LOP_1:

JNB06H,LOP_2;定时开关

LCALLDING;跳转到定时程序

LOP_2:

LCALLTIME;跳转到显示程序

X:

RETI

JIA1:

MOVA,30H;计时程序

ADDA,#01H;秒加1

DAA;做十进制调整

MOV30H,A

CJNEA,#60H,Y;是否等于60s?

若不是,则跳至Y

MOV30H,#00H;若是,则30H清零

MOVA,31H

ADDA,#01H;分加1

DAA;做十进制调整

MOV31H,A

CJNEA,#60H,Y;是否等于60s?

若不是,则跳至Y

MOV31H,#00H;若是,则31H清零

MOVA,32H

ADDA,#01H;时加1

DAA;做十进制调整

MOV32H,A

CJNEA,#24H,Y;是否等于60s?

若不是,则跳至Y

MOV32H,#00H;若是,则32H清零

MOVA,34H

ADDA,#1

DAA

MOV34H,A

CJNEA,#32H,YB

MOV34H,#01H

MOVA,#35H

ADDA,#1

DAA

MOV35H,A

CJNEA,#13H,YB

MOV35H,#01H

MOVA,36H

INCA

DAA

MOV36H,A

YB:

MOVA,33H

ADDA,#1

DAA

MOV33H,A

CJNEA,#08H,Y

MOV33H,#01H

Y:

RET

4.2定时部分

定时程序实则就是人为设定一个闹铃时间,并使LED灯在到达时间时亮。

将时钟的星期、时、分、秒先后赋值给A,判断是否与设定的闹铃时间一致,不等则跳出子程序返回主程序继续执行下一步,相等则跳转到TSR子程序。

定时时间由外部中断4控制,每按一下,其值增加一,时、分、秒、星期由开关按键K1,K2,K3,K4控制。

将P5给20H判断位00H、01H、02H、03H是否为0,不为0跳转到时分秒程序中。

在43H、42H、41H、40H中存放星期、时、分、秒。

当系统设定的秒、分、时、星期与显示的时间都相等时LED灯亮,表示闹铃时间到。

期间时间会继续显示,但LED灯依旧亮,闭合K1、K2、K3、K4按下KEY4键可熄灭LED灯。

定时功能还可以通过K7来控制关闭K7则显示器显示DINGSHIOFF提示定时功能关闭。

DING:

MOVA,33H;判断闹钟是否启动

CJNEA,43H,N

MOVA,32H

CJNEA,42H,N

MOVA,31H

CJNEA,41H,N

MOVA,30H

CJNEA,40H,N

LJMPTSR

N:

RET

TSR:

MOVP1,#00H;LED灯循环闪烁

RET

KEY4:

LCALLT2

LCALLTIME;显示

MOVP3IF,#00H

RETI

T2:

MOV20H,P5;定时程序

JNB00H,SHI1

JNB01H,FEN1

JNB02H,MIAO1

JNB03H,XQ1

MOVP1,#0FFH;关闭闹钟

RET

SHI1:

MOVA,42H

ADDA,#1

DAA

MOV42H,A

CJNEA,#24H,MB

MOV42H,#00H

RET

FEN1:

MOVA,41H

ADDA,#1

DAA

MOV41H,A

CJNEA,#60H,MB

MOV41H,#00H

RET

MIAO1:

MOVA,40H

ADDA,#1

DAA

MOV40H,A

CJNEA,#60H,MB

MOV40H,#00H

RET

XQ1:

MOVA,43H

ADDA,#1

DAA

MOV43H,A

CJNEA,#08H,MB

MOV43H,#01H

MB:

RET

4.3校时部分

校时部分就是在系统时间不准确的情况下,给系统赋定值,使系统时间可以从该值开始变化,使用外部中断KEY3,先给30H、31H、32H赋所需时间,然后调用程序将其显示。

其中进入中断后调用子程序T1可以由KEY3键设置所定时间每按一次KEY3键值增加一,是调整时还是分或秒,可由开关量输入键K1、K2、K3分别控制。

其主程序中加入了外不中断的有关指令.但需注意的是,在调解时除打开时、分、秒控制键外还需打开K11键。

KEY3:

;KEY3中断程序

LCALLT1

LCALLTIME;显示

MOVP3IF,#00H

RETI

T1:

MOV20H,P5;时间校准程序

JNB04H,RQ;选择修改时间/日期

JNB00H,SHI

JNB01H,FEN

JNB02H,MIAO

JNB03H,XQ

RET

RQ:

JNB00H,NIAN

JNB01H,YUE

JNB02H,RI1

JNB03H,XINGQI

RET

SHI:

MOVA,32H

ADDA,#1

DAA

MOV32H,A

CJNEA,#24H,M

MOV32H,#0

RET

FEN:

MOVA,31H

ADDA,#1

DAA

MOV31H,A

CJNEA,#60H,M

MOV31H,#0

RET

MIAO:

MOVA,30H

ADDA,#1

DAA

MOV30H,A

CJNEA,#60H,M

MOV30H,#0

XQ:

MOVA,33H

ADDA,#1

DAA

MOV33H,A

CJNEA,#08H,M

MOV33H,#01H

M:

RET

NIAN:

MOVA,36H;日期校准

INCA

DAA

MOV36H,A

RET

YUE:

MOVA,35H

ADDA,#1

DAA

MOV35H,A

CJNEA,#13H,ASD

MOV35H,#01H

RET

RI1:

MOVA,34H

ADDA,#1

DAA

MOV34H,A

CJNEA,#32H,ASD

MOV34H,#01H

RET

XINGQI:

MOVA,33H

ADDA,#1

DAA

MOV33H,A

CJNEA,#08H,ASD

MOV33H,#01H

ASD:

RET

 

4.4显示部分

显示程序就是将程序中的时分秒显示在液晶显示屏上使其看起来更直观、方便。

其中第一行显示系统运行时间,第二行显示定时时间。

通过K6来控制第一行显示时间和日期。

该程序主要根据老师所给程序改编,利用子程序LINE设定显示屏的主要参数.让时间显示在上一行且只显示一个时分秒,如“23:

28:

20”,不造成显示多个的后果。

NCD为常函数表,将0-9数字依次存放到以左边标号为起始地址的存储单元中。

TIME中就是将时分秒的十位、各位分别赋予R0,然背后调用查表程序将其显示在液晶屏上。

值得注意的是:

时与分、分与秒之间需将冒号也显示出来。

同理,定时时间的显示在第二行,由TIME1控制。

TIME:

CLRA;液晶显示程序

MOVXBR0,A

LCALLLCD

MOVDPTR,#NCD

MOV20H,P5

JNB05H,LP1;选择显示时间/日期

MOVA,32H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,32H

LCALLLINE1

LCALLDELAY

MOVR0,#10

LCALLLINE1

LCALLDELAY

MOVA,31H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,31H

LCALLLINE1

LCALLDELAY

MOVR0,#10

LCALLLINE1

LCALLDELAY

MOVA,30H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,30H

LCALLLINE1

LCALLDELAY

LJMPLP2

LP1:

MOVR0,#2

LCALLLINE1

LCALLDELAY

MOVR0,#0

LCALLLINE1

LCALLDELAY

MOVA,36H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,36H

LCALLLINE1

LCALLDELAY

MOVR0,#11

LCALLLINE1

LCALLDELAY

MOVA,35H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,35H

LCALLLINE1

LCALLDELAY

MOVR0,#11

LCALLLINE1

LCALLDELAY

MOVA,34H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,34H

LCALLLINE1

LCALLDELAY

LP2:

MOVR0,#11;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#12;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#13;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,33H;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#11;NAOZHONG

LCALLLINE1

LCALLDELAY

JBP1.0,LOP1

MOVR0,#15;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#0;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#14;NAOZHONG

LCALLLINE1

LCALLDELAY

LOP1:

MOV20H,P5

JNB06H,LP3;关闭定时显示

MOVDPTR,#NED

MOVP7,#0C0H

MOVP6,#1H

MOVP6,#0H

MOVR0,#11

LCALLLINE1

LCALLDELAY

MOVA,42H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,42H

LCALLLINE1

LCALLDELAY

MOVR0,#10

LCALLLINE1

LCALLDELAY

MOVA,41H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,41H

LCALLLINE1

LCALLDELAY

MOVR0,#10

LCALLLINE1

LCALLDELAY

MOVA,40H

SWAPA

MOVR0,A

LCALLLINE1

LCALLDELAY

MOVR0,40H

LCALLLINE1

LCALLDELAY

MOVR0,#11;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#12;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,#13;NAOZHONG

LCALLLINE1

LCALLDELAY

MOVR0,43H;NAOZHONG

LCALLLINE1

LCALLDELAY

RET

LP3:

MOVDPTR,#NFD

MOVP7,#0C0H

MOVP6,#1H

MOVP6,#0H

MOVR0,#11

LCALLLINE1

LCALLDELAY

MOVR0,#0

LCALLLINE1

LCALLDELAY

MOVR0,#1

LCALLLINE1

LCALLDELAY

MOVR0,#2

LCALLLINE1

LCALLDELAY

MOVR0,#3

LCALLLINE1

LCALLDELAY

MOVR0,#4

LCALLLINE1

LCALLDELAY

MOVR0,#5

LC

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

当前位置:首页 > 自然科学 > 天文地理

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

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