单片机课程设计定时闹钟报告书.docx

上传人:b****3 文档编号:6238376 上传时间:2023-05-09 格式:DOCX 页数:23 大小:151.30KB
下载 相关 举报
单片机课程设计定时闹钟报告书.docx_第1页
第1页 / 共23页
单片机课程设计定时闹钟报告书.docx_第2页
第2页 / 共23页
单片机课程设计定时闹钟报告书.docx_第3页
第3页 / 共23页
单片机课程设计定时闹钟报告书.docx_第4页
第4页 / 共23页
单片机课程设计定时闹钟报告书.docx_第5页
第5页 / 共23页
单片机课程设计定时闹钟报告书.docx_第6页
第6页 / 共23页
单片机课程设计定时闹钟报告书.docx_第7页
第7页 / 共23页
单片机课程设计定时闹钟报告书.docx_第8页
第8页 / 共23页
单片机课程设计定时闹钟报告书.docx_第9页
第9页 / 共23页
单片机课程设计定时闹钟报告书.docx_第10页
第10页 / 共23页
单片机课程设计定时闹钟报告书.docx_第11页
第11页 / 共23页
单片机课程设计定时闹钟报告书.docx_第12页
第12页 / 共23页
单片机课程设计定时闹钟报告书.docx_第13页
第13页 / 共23页
单片机课程设计定时闹钟报告书.docx_第14页
第14页 / 共23页
单片机课程设计定时闹钟报告书.docx_第15页
第15页 / 共23页
单片机课程设计定时闹钟报告书.docx_第16页
第16页 / 共23页
单片机课程设计定时闹钟报告书.docx_第17页
第17页 / 共23页
单片机课程设计定时闹钟报告书.docx_第18页
第18页 / 共23页
单片机课程设计定时闹钟报告书.docx_第19页
第19页 / 共23页
单片机课程设计定时闹钟报告书.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机课程设计定时闹钟报告书.docx

《单片机课程设计定时闹钟报告书.docx》由会员分享,可在线阅读,更多相关《单片机课程设计定时闹钟报告书.docx(23页珍藏版)》请在冰点文库上搜索。

单片机课程设计定时闹钟报告书.docx

单片机课程设计定时闹钟报告书

大学

2011级微机原理与接口技术

课程设计报告

 

课题名称

微机原理与接口技术

姓名

学号

院、系、部

专业

指导教师

 

2014年月日

一、设计任务及要求:

设计任务:

1、基于单片机的定时闹钟具有时间显示,闹钟响应

编程实现时、分、秒的显示

显示格式为:

时分秒:

09-12-35

2、能按键调整时间的数值;

3、可设定响铃时间,并且在规定时间响铃

4、要求至少调试出任务的前两项。

要求:

首先进行预设计,根据设计的任务要求,先确定设计的硬件电路方案,然后进行硬件电路的初步设计,在计算机上画出硬件电路图,在老师的指导下进行修正硬件电路图,并对所涉及的参数进行计算。

在确定硬件的基础上,要进行软件的总体设计,包括软件主流程的设计以及各子程序的设计,同时,要写出详细的操作说明,如时间的调整方法,显示窗口的时间切换等,以配合软件的设计。

然后进入硬件的调试及编程工作,设计组内的同学可根据任务分工,有调试硬件各功能模块的,如键盘子程序、显示子程序等,有进行整体程序的编制的,各模块的编制过程中要注意资源的衔接。

最后进入联机调试,联机调试的原则也要采用分步走的原则,各个功能模块要逐步套入,通过一个再增加一项功能,从而达到设计的总体要求,不要上来编制个最大的程序,最后无法查找错误。

最后写出设计报告。

 

指导教师签名:

2014年月日

三、成绩

 

指导教师签名:

年月日

目录

一、绪言………………………………………………………………………………………1

二、系统设计……………………………………………………………………………………1

2.1系统整体流程图…………………………………………………………………………1

2.2定时闹钟的控制方案论证……………………………………………………………1

2.3单片机的选择方案论证…………………………………………………………………1

2.4键盘选择方案论证………………………………………………………………………2

2.5显示模块的选择方案论证………………………………………………………………2

2.6模块的选择方案论证……………………………………………………………………2

三、硬件电路设计………………………………………………………………………………3

3.1定时闹钟的控制电路图…………………………………………………………………3

3.2行列式键盘的设计……………………………………………………………………3

3.3数码管电路的设计…………………………………………………………………4

3.4蜂鸣器电路的设计…………………………………………………………………4

3.5主要元器件选择…………………………………………………………………………4

四、程序流程图…………………………………………………………………………………5

五、c语言程序设计……………………………………………………………………………5

六、定时闹钟仿真……………………………………………………………………15

6.1Keil调试………………………………………………………………………………15

6.2Proteus调试……………………………………………………………………………16

7、结束语……………………………………………………………………………………16

8、参考文献……………………………………………………………………………………16

1、绪言

本设计是定时闹钟的设计,由单片机AT89C51芯片和LED数码管为核心,辅以必要的电路,构成的一个单片机电子定时闹钟。

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

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

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

2、系统设计

2.1设计任务

1、基于单片机的定时闹钟具有时间显示,闹钟响应

编程实现时、分、秒的显示

显示格式为:

时分秒:

09-12-35

2、能按键调整时间的数值;

3、可设定响铃时间

4、要求至少调试出任务的前两项。

2.2方案比较与论证

2.2.1系统整体流程图

 

2.2.2定时闹钟控制方案论证

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

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

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

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

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

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

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

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

2.2.3单片机的选择方案论证

方案一:

采用可编程逻辑期间CPLD作为控制器。

CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。

采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。

但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高,且从使用及经济的角度考虑我们放弃了此方案

方案二:

采用Atmel公司的AT89S52单片机作为控制器。

AT89S52是一个低功耗,高性能的51内核的CMOS8位单片机,片内含8k空间的可反复擦些1000次的Flash只读存储器,具有256bytes的随机存取数据存储器(RAM),32个IO口,2个16位可编程定时计数器。

方案三:

采用Atmel公司的AT89C51单片机,它是低功耗、高性能的CMOS型8位单片机。

片内带有4KB的Flash存储器,且允许在系统内改写或用编程器编程。

另外,AT89C51的指令系统和引脚与8051完全兼容,片内有128B的RAM、32条I/O口线、2个16位定时计数器、5个中断源、一个全双工串行口等

综合考虑,选择方案三,采用Atmel公司的AT89c51单片机作为控制器

2.2.4键盘选择方案论证

方案一:

采用独立式键盘。

由于各键相互独立,每个按键各接一根输入线,通过检测输入线的电平状态可以很容易的判断哪个按键被按下。

此种键盘适用于按键较少或操作速度较高的场合。

方案二:

采用行列式键盘。

它由行线和列线组成,按键位于行列的交叉点上,行线信号和列线信号分别通过两个接口和CPU相连,通过行列扫描法判定按键的位置,此方案适用于按键较多的场合。

根据自己需要,采用独立式式键盘。

2.2.5显示模块的选择方案论证

方案一:

采用带字库LCD模块显示。

能显示复杂的信息,具有质量轻,体积小,功耗低,指令功能强,接口简单,可靠性强等优点,显示内容丰富,图形美观,易于人机交流。

但是价格昂贵。

方案二:

采用LED数码管显示。

数码管能显示数字和符号,但是占用IO口资源较多,对于简单的电路可以选用此方案。

定时闹钟,电路并不很复杂,选用方案二,显示所需信息。

3硬件电路设计

3.1定时闹钟电路图

图2电子密码锁控制线路图

3.2独立式式键盘的设计

键盘电路如图3所示。

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

图3键盘电路

3.3数码管显示电路的设计

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

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

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

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

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

其电路如图3所示。

图4数码管显示电路

3.4蜂鸣器驱动电路的设计

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

图5蜂鸣器电路图

3.5主要元器件选择

主要元器件选用型号和数量如表1所示:

表1主要元器件清单

序号

材料名称

规格型号

数量

元件代号

1

单片机

AT89C51

1

U1

2

晶振

12MHz

1

X1

3

电容

45PF100

3

C1C2C3

4

键盘

4*1

4

5

数码管

MPX6

1

6

蜂鸣器

1

Ls1

7

电阻

10k

1

R1

8

排阻

10k

1

RP1

4程序流程图

5C语言程序设计

程序清单:

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;BINHOUR

MOV25H,#00H;定义一个标志位

MOV30H,#00H;时间BCDSECOND

MOV31H,#00H;

MOV32H,#00H;BCDMINUTE

MOV33H,#00H;

MOV34H,#00H;BCDHOUR

MOV35H,#00H;

MOV36H,#01H;闹铃BCDMINUTE

MOV37H,#00H;

MOV38H,#01H;BCDHOUR

MOV39H,#00H;

MOVTMOD,#01H;16位计数器T0,方式1

MOVTH0,#03CH;赋初值

MOVTL0,#0B0H

MOVIE,#10000111B;开中断T0,EA=1

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:

CLR25H.0

LCALLSETATIME;调用设置闹钟的程序

LJMPLOOP

M2:

JBK4,M3

A3:

LCALLXIAOZHEN3

MOVC,25H.0

JCA4

A4:

CLR25H.0

M3:

LJMPLOOP

SETTIME:

L0:

LCALLDISPLAY1

JBK2,L1

LCALLXIAOZHEN4

MOVC,25H.0

JCA5

A5:

CLR25H.0

INC22H

MOVA,22H

CJNEA,#18H,GO12

MOV22H,#00H

MOV34H,#00H

MOV35H,#00H

LJMPL0

L1:

JBK3,L2

LCALLXIAOZHEN5

MOVC,25H.0

JCA6

A6:

CLR25H.0

INC21H

MOVA,21H

CJNEA,#3CH,GO11

MOV21H,#00H

MOV32H,#00H

MOV33H,#00H

LJMPL0

GO11:

MOVB,#0AH

DIVAB

MOV32H,B

MOV33H,A

LJMPL0

GO12:

MOVB,#0AH

DIVAB

MOV34H,B

MOV35H,A

LJMPL0

L2:

JBK4,L0

LCALLXIAOZHEN3

MOVC,25H.0

JCAX

AX:

CLR25H.0

RET

SETATIME:

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

N0:

LCALLDISPLAY2

JBK3,N1

LCALLXIAOZHEN6

MOVC,25H.0

JCA7

A7:

CLR25H.0

INC24H

MOVA,24H

CJNEA,#24,GO22

MOV24H,#00H

MOV38H,#00H

MOV39H,#00H

LJMPN0

N1:

JBK1,N2

LCALLXIAOZHEN7

MOVC,25H.0

JCA8

A8:

CLR25H.0

INC23H

MOVA,23H

CJNEA,#60,GO21

MOV23H,#00H

MOV36H,#00H

MOV37H,#00H

LJMPN0

GO21:

MOVB,#0AH

DIVAB

MOV36H,B

MOV37H,A

LJMPN0

GO22:

MOVB,#0AH

DIVAB

MOV38H,B

MOV39H,A

LJMPN0

N2:

JBK4,N0

LCALLXIAOZHEN3

MOVC,25H.0

JCA9

A9:

CLR25H.0

RET

TIMEPRO:

MOVA,21H

MOVB,23H

CJNEA,B,BK

MOVA,22H

MOVB,24H

CJNEA,B,BK

SETB25H.0

MOVC,25H.0

JCXX

XX:

LCALLTIMEOUT

BK:

RET

TIMEOUT:

X1:

LCALLBZ

LCALLDISPLAY2

CLR25H.0

JBK4,X1

RET

BZ:

CLRP3.7

MOVR7,#250

T2:

MOVR6,#124

T3:

DJNZR6,T3

DJNZR7,T2

SETBP3.7

JBK4,XY

LCALLXIAOZHEN3

MOVC,25H.0

JCXY1

XY:

RET

XY1:

LJMPLOOP

XIAOZHEN1:

LCALLDISPLAY1

JBK1,XIAOZHEN1

MOVC,K1

JCXIAOZHEN1

LCALLDELAY

MOVC,K1

JCXIAOZHEN1

STOP1:

MOVC,K1

JNCSTOP1

LCALLDELAY

MOVC,K1

JNCSTOP1

SETB25H.0

RET

XIAOZHEN2:

LCALLDISPLAY2

JBK2,XIAOZHEN2

MOVC,K2

JCXIAOZHEN2

LCALLDELAY

MOVC,K2

JCXIAOZHEN2

STOP2:

MOVC,K2

JNCSTOP2

LCALLDELAY

MOVC,K2

JNCSTOP2

SETB25H.0

RET

XIAOZHEN3:

LCALLDISPLAY1

JBK4,XIAOZHEN3

MOVC,K4

JCXIAOZHEN3

LCALLDELAY

MOVC,K4

JCXIAOZHEN3

STOP3:

MOVC,K4

JNCSTOP3

LCALLDELAY

MOVC,K4

JNCSTOP3

SETB25H.0

RET

XIAOZHEN4:

LCALLDISPLAY1

JBK2,XIAOZHEN4

MOVC,K2

JCXIAOZHEN4

LCALLDELAY

MOVC,K2

JCXIAOZHEN4

STOP4:

MOVC,K2

JNCSTOP4

LCALLDELAY

MOVC,K2

JNCSTOP4

SETB25H.0

RET

XIAOZHEN5:

LCALLDISPLAY1

JBK3,XIAOZHEN5

MOVC,K3

JCXIAOZHEN5

LCALLDELAY

MOVC,K3

JCXIAOZHEN5

STOP5:

MOVC,K3

JNCSTOP5

LCALLDELAY

MOVC,K3

JNCSTOP5

SETB25H.0

RET

XIAOZHEN6:

LCALLDISPLAY2

JBK3,XIAOZHEN6

MOVC,K3

JCXIAOZHEN6

LCALLDELAY

MOVC,K3

JCXIAOZHEN6

STOP6:

MOVC,K3

JNCSTOP6

LCALLDELAY

MOVC,K3

JNCSTOP6

SETB25H.0

RET

XIAOZHEN7:

LCALLDISPLAY2

JBK1,XIAOZHEN7

MOVC,K1

JCXIAOZHEN7

LCALLDELAY

MOVC,K1

JCXIAOZHEN7

STOP7:

MOVC,K1

JNCSTOP7

LCALLDELAY

MOVC,K1

JNCSTOP7

SETB25H.0

RET

DELAY:

MOVR4,#14H

DL00:

MOVR5,#0FFH

DL11:

DJNZR5,DL11

DJNZR4,DL00

RET

TIME:

PUSHACC

PUSHPSW

MOVTH0,#03CH

MOVTL0,#0B0H

DJNZR2,RET0

MOVR2,#14H

MOVA,20H

CLRC

INCA

CJNEA,#3CH,GO1

MOV20H,#0

MOV30H,#0

MOV31H,#0

MOVA,21H

INCA

CJNEA,#3CH,GO2

MOV21H,#0H

MOV32H,#0

MOV33H,#0

MOVA,22H

INCA

CJNEA,#18H,GO3

MOV22H,#00H

MOV34H,#0

MOV35H,#0

AJMPRET0

GO1:

MOV20H,A

MOVB,#0AH

DIVAB

MOV31H,A

MOV30H,B

AJMPRET0

GO2:

MOV21H,A

MOVB,#0AH

DIVAB

MOV33H,A

MOV32H,B

AJMPRET0

GO3:

MOV22H,A

MOVB,#0AH

DIVAB

MOV35H,A

MOV34H,B

AJMPRET0

RET0:

POPPSW

POPACC

RETI

DISPLAY1:

MOVR0,#30H

MOVR3,#0FEH

MOVA,R3

PLAY1:

MOVP2,A

MOVA,@R0

MOVDPTR,#DSEG1

MOVCA,@A+DPTR

MOVP0,A

LCALLDL1

MOVP2,#0FFH

MOVA,R3

RLA

JNBACC.6,LD1

INCR0

MOVR3,A

LJMPPLAY1

LD1:

RET

DISPLAY2:

PUSHACC

PUSHPSW

MOVR0,#36H

MOVR3,#0FBH

MOVA,R3

PLAY2:

MOVP2,A

MOVA,@R0

MOVDPTR,#DSEG1

MOVCA,@A+DPTR

MOVP0,A

LCALLDL1

MOVP2,#0FFH

MOVA,R3

RLA

JNBACC.6,LD2

INCR0

MOVR3,A

LJMPPLAY2

LD2:

POPPSW

POPACC

RET

DL1:

MOVR7,#05H

DL:

MOVR6,#0FFH

DL6:

DJNZR6,$

DJNZR7,DL

RET

DSEG1:

DB3FH,06H,5BH,4FH,66H

DB6DH,7DH,07H,7FH,6FH

END

 

6定时闹钟仿真

在完成了电子密码锁硬件设计和软件设计以后,便进入系统的调试阶段。

系统的调试步骤和方法基本上是相同的,但具体细节和所采用的开发系统以及用户系统选用的单片机型号有关,如可选用Keil软件进行软件调试,用Proteus软件完成硬件调试。

6.1Keil调试

 

6.2Proteus调试

7结束语

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

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

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

8参考文献

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

中国矿业大学出版社,2003

[2]杨刚,周群.电子系统设计与实践.电子工业出版社.2004:

18-23341-347118-122

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

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

[4]涂时亮,张友德.单片微机控制技术.清华大学出版社.1994:

86-87146-147

[5]《融会贯通Protel99电路设计》弘道工作室北京人民交通出版设,2000.

[6]《单片机原理及接口技术实验》朱定华北京北

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

当前位置:首页 > 小学教育 > 语文

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

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