单片机数字电子钟课程设计实训报告.docx

上传人:b****6 文档编号:5365958 上传时间:2022-12-15 格式:DOCX 页数:13 大小:140.10KB
下载 相关 举报
单片机数字电子钟课程设计实训报告.docx_第1页
第1页 / 共13页
单片机数字电子钟课程设计实训报告.docx_第2页
第2页 / 共13页
单片机数字电子钟课程设计实训报告.docx_第3页
第3页 / 共13页
单片机数字电子钟课程设计实训报告.docx_第4页
第4页 / 共13页
单片机数字电子钟课程设计实训报告.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

单片机数字电子钟课程设计实训报告.docx

《单片机数字电子钟课程设计实训报告.docx》由会员分享,可在线阅读,更多相关《单片机数字电子钟课程设计实训报告.docx(13页珍藏版)》请在冰豆网上搜索。

单片机数字电子钟课程设计实训报告.docx

单片机数字电子钟课程设计实训报告

 

第一章设计概要

设计要求:

1、用单片机及6位LED数码管显示时、分、秒

00时00分00秒——23时59分59秒循环运行

2、整点提醒0,1…23时短蜂鸣

3、用按键实现时、分、秒调整

*4、省电功能(关闭显示)

*5、定时设定提醒如设定08时15分00秒长蜂鸣

*6、秒表功能显示××分××秒.××

健复位从00分00秒00开始计时

启动从00分00秒00开始计时

停止显示实际计时××分××秒××

第二章硬件设计方案

2.1设计框架图

2.2总体设计方案说明

设计框架图如图2.1所示总共分为5小部分:

时间显示部分,键盘控制部分,单片机部分,闹钟部分,电源部分。

本设计各部分由统一电源集中供电,外加被用电源确保主电源断电时备用电源及时供电避免时间的丢失.采用12MHZ晶振为单片机提供时钟。

显示部分采用容易购买的LED八段数码显示管,利用单片机输出高低电平实现数码管的刷新显示。

LED具有显示明亮,容易识别,价格便宜等优点,特别适合时间的显示。

按键部分采用普通的按建开关,使用查询方式从而节约元件。

2.3数码显示管设计部分

.

图3.1-1

数码显示部分采用八块共阳极八段数码显示管分别对时,分,秒进行显示。

将第三块和第六块显示横杠,可以使时间显示更美观.显示部分采用刷新显示方案.具体如下:

当p2口输出第一块的三极管导通,u1数码管被选中,然后p0口输出数字的数码管编码。

如p0口输出时u1数码管就输出数字0。

当循环右移一位是u2被选通显示。

依次类推u1-u8数码管显示完成,再循环显示。

由于单片机的刷新速度很快所以8个数码管看起来就像同时显示的一样。

2.4键盘控制电路

键盘部分采用普通的按键进行设计,使用软件延时消除开关抖动.

2.5闹铃电路

闹铃电路通过p1.7口输出1HZ脉冲使蜂鸣器发出间隔为一秒的蜂鸣声.

2.6电源电路

2.7总体电路图设计

图3.4-1

第三章软件设计方案

3.1程序流程图

3.2总体程序设计

//主程序

ORG0000H

AJMPMAIN

ORG000BH

AJMPTZP

ORG0030H

MAIN:

MOVSP,#60H

MOVR4,#00H

MOVTMOD,#02h

MOVTH0,#06H

MOVTL0,#06H

SETBEA

SETBET0

SETBTR0

//初始化

MOVR2,#3

MOVR1,#30H

LOOP:

MOV@R1,#00H

INCR1

DJNZR2,LOOP

LCALLRINGPI

//

LOOP2:

MOVR2,#6

MOVR1,#30H

LCALLDPZP

//开启节能功能

JBP1.0,XWJN

JBP1.0,$

//

//闹钟设置入口

ZWJN:

JBP1.1,XPP1

LCALLRINGP

LCALLRELAY

//

//调时入口

XPP1:

JBP1.3,XPP2

LCALLZPP1

XPP2:

JBP1.2,ZPP

LCALLZPP2

ZPP:

AJMPLOOP2//

//定时器0中断

TZP:

PUSH00H

PUSH03H

INCR4//软件-硬件延时1秒

CJNER4,#40,ENDI

MOVR4,#0

INCR5

CJNER5,#100,ENDI//结束

MOVR5,#0

ZP:

MOVR0,#30H

MOVR3,#3

MOVDPTR,#TCOUNT

LCALLTTZP

LCALLRING

ENDI:

POP03H

POP00H

RETI

//定时器0中断返回

//软中断1

ZPP1:

MOVA,31H

ADDA,#1

DAA

MOV31H,A

CJNEA,#60H,END1

MOV31H,#00H

END1:

LCALLRELAY

RET

//

//软中断2

ZPP2:

MOVA,32H

ADDA,#1

DAA

MOV32H,A

CJNEA,#24H,END2

MOV32H,#00H

END2:

LCALLRELAY

RET

//

//延时显示程序

RELAY:

MOVR6,#255

REP:

MOVR7,#4

REEE:

MOVR2,#6

MOVR1,#30H

LCALLDPZP

DJNZR7,REEE

DJNZR6,REP

RET

//延时显示程序结束

//显示子程序

DPZP:

MOVP0,#0FFH//显示横杠

MOVP2,#0DBH

MOVP0,#0BFH//END

DPZP1:

MOVP0,#0FFH

MOVDPTR,#CHART//P3part

MOVA,R2

MOVCA,@A+DPTR

MOVP2,A//

MOVDPTR,#LED

MOVA,@R1

JNBF0,DPZPS

INCR1

SWAPA

DPZPS:

ANLA,#0FH

MOVCA,@A+DPTR

MOVP0,A

CPLF0

DJNZR2,DPZP1

RET

//显示子程序结束

//不规则循环加一子程序

TTZP:

MOVA,@R0

ADDA,#1

DAA

MOV@R0,A

MOVA,R3

MOVCA,@A+DPTR

CLRC

SUBBA,@R0

JNCRTTZP

MOV@R0,#0

INCR0

DJNZR3,TTZP

RTTZP:

RET

//响铃程序

RING:

MOVR0,#34H

MOV24H,#6

RRING:

MOVA,31H

SUBBA,@R0

JNZERING

INCR0

MOVA,32H

SUBBA,@R0

DECR0

JNZERING

CPLP1.7

RET

ERING:

MOVA,R0

ADDA,#3

MOVR0,A

DJNZ24H,RRING

SETBP2.1

RET

//

//闹钟调整程序

RINGP:

MOV20H,#33H

MOV21H,#6

MOVR3,#20

MOV22H,#5

LPRP:

LCALLRELAY1

JBP1.1,LPRP1

MOVR3,#20

MOVA,20H

ADDA,#3

MOV20H,A

DJNZ22H,LPRP

RET

LPRP1:

JBP1.3,LPRP2

MOVR3,#20H

MOVA,20H

ADDA,#1

MOVR0,A

MOVA,@R0

ADDA,#1

MOV@R0,A

DAA

CJNEA,#60H,LPRP21

MOV@R0,#00H

LPRP21:

LCALLRELAY1

LPRP2:

JBP1.2,LPRP3

MOVR3,#20H

MOVA,20H

ADDA,#2

MOVR0,A

MOVA,@R0

ADDA,#1

DAA

MOV@R0,A

CJNEA,#24H,LPRP31

MOV@R0,#00H

LPRP31:

LCALLRELAY1

LPRP3:

DJNZR3,LPRP

LPRPEND:

RET

//

//闹钟组初始化程序(共5组)

RINGPI:

MOVR2,#5

MOVR1,#41H

LPRPI:

MOV@R1,#00H

DECR1

MOV@R1,#00H

DECR1

MOVA,#00H

ORLA,#0A0H

ADDA,R2

MOV@R1,A

DECR1

DJNZR2,LPRPI

RET

//

//延时显示程序1

RELAY1:

MOVR6,#255

REP1:

MOVR7,#4

REEE1:

MOVR2,21H

MOVR1,20H

LCALLDPZP

DJNZR7,REEE1

DJNZR6,REP1

RET

//延时显示程序结束

//数据表

LED:

DB0c0H,0f9H,0a4H,0b0H,099H,092H,82H,0f8H,80H,90H,8EH,0A8H//0,1,2,3,4,5,6,7,8,9,F,n

CHART:

DB0FEH,0FEH,0FDH,0F7H,0EFH,0BFH,7FH

TCOUNT:

DB0,23H,59H,59H

END

第四章心得体会

4.1心得体会

在整个课程设计完后,总的感觉是:

有收获。

以前上课都是上一些最基本的东西,而现在却可以将以前学的东西作出有实际价值的东西。

在这个过程中,我的确学得到很多在书本上学不到的东西,如:

如何利用现有的元件组装得到设计要求,如何找到错误的原因,如何利用计算机来画图等等。

但也遇到了不少的挫折,有时遇到了一个错误怎么找也找不到原因所在,找了老半天结果却是芯片的管脚接错了,有时更是忘接电源了。

在学习中的小问题在课堂上不可能犯,在动手的过程中却很有可能犯。

特别是在接电路时,一不小心就会犯错,而且很不容易检查出来。

但现在回过头来看,还是挺有成就感的。

参考文献

[1]

[2]

[3]

[4]

[5]

 

辞谢

在本次数字电路课程设计完成之际,谨向我的指导老师**老师致予衷心的谢意。

此次课程设计得到了**老师细心指导,给我很大的支持。

这设计过程中遇到了很多困难,诸如怎样不熟悉的集成块的使用,数字电路的编码等问题。

在解决这些问题的过程中多得到了**老师的大力支持,在此再次衷心的感谢**老师。

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

当前位置:首页 > 高等教育 > 其它

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

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