基于单片机技术的时钟显示器
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
汇编
苏州工业园区职业技术学院 2010届毕业项目
第一章 绪论
数字钟是采用数字电路实现对时,分,秒数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。
- 1 -
苏州工业园区职业技术学院 2010届毕业项目 第二章 基于单片机技术的时钟显示器设
计
第一节 总体设计
所谓多功能数字电子钟,和简单电子钟一样也是指电子电路构成的计数器。多功能数字钟除能达到显示小时、分、秒,准确计时,且对该钟进行调整。
系统需要8位LED数码管,显示电路由于位数较多,若采用静态显示需要64个I/O口,但采用动态显示仅需要16个I/O口。所以本任务应采用动态显示接口电路,其接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM是各自独立地受I/O线控制,一位一位地轮流点亮各位显示器,对每一位显示器而言,每隔一段时间点了一次。显示器的亮度跟导通的电流有关,也和点亮的时间和间隔的比例有关。因此,在数码管位数较多的场合,采用动态显示可使硬件成本降低,功耗减少,适合长时间显示,因而得到广泛的应用。
- 2 -
苏州工业园区职业技术学院 2010届毕业项目
第二节:硬件设计 实现数字电子钟的硬件电路中包含主要元器件为89C51芯片1
片、LED共阴数码管8个、轻触按键6个、74LS245一个、11.0592MHz
晶振1个、电阻、电容等若干。
第三节:软件设计 8位数码管为共阴数码管。段码abcdefgh分别接在P0口0~7,
位码时位、分位、秒位分别接在P3口0~7。且由6个独立按键控制,
按键分别接在P1口0~5。软件采用定时器T0定时50毫秒来实现秒
信号产生。(系统晶振为12MHZ)。
K1 BIT ACC.0 ;数字钟秒控制位 K2 BIT ACC.1 ;分钟控制位 K3 BIT ACC.2 ;小时控制位 K4 BIT ACC.3 ;数字钟秒控制位 K5 BIT ACC.4 ;分钟控制位 K6 BIT ACC.5 ;小时控制位 ;8255 4*4按键扫描程序,低4位为行扫描写,高4位为列扫描读 D8255A EQU 8EFFH
D8255B EQU 0CEFFH
D8255C EQU 8FFFH
D8255D EQU 0CFFFH
KEYBUF EQU 7FH
SECOND EQU 30H
MINUTE EQU 31H
HOUR EQU 32H
TCNT EQU 34H
ORG 0000H
SJMP START
ORG 000BH
LJMP INT_T0
START: MOV SP,#60H
- 3 -
苏州工业园区职业技术学院 2010届毕业项目
CLR P2.5
CLR P2.5
SETB P2.5
SETB P2.5
CLR P2.5
CLR P2.5 ; 8255复位
MOV TMOD,#01H
MOV TH0,#4CH
MOV TL0,#00H
MOV IE,#82H
SETB TR0
MOV TCNT,#0
MOV HOUR,#12 ;初始化
MOV MINUTE,#10
MOV SECOND,#36
MOV DPTR,#D8255D ; 8255控制字地址
MOV A,#89H ; 置8255状态
MOVX @DPTR,A ; 方式0,PA,PB口输出,PC口输入,10001001
MOV KEYBUF,#0H MAIN: LCALL READKEY ; 读键处理
LCALL DISPLAY
SJMP MAIN
;****************************************************
;判断是否有控制键按下,是哪一个键按下
READKEY:
MOV DPTR,#D8255C
MOVX A,@DPTR
JNB K1,S1
JNB K2,S2
JNB K3,S3
LJMP A1
S1: LCALL DL10MS ;去抖动
MOV DPTR,#D8255C
MOVX A,@DPTR
JB K1,A1
MOV KEYBUF,#1
INC SECOND ;秒值加1
MOV A,SECOND
CJNE A,#60,J0 ;判断是否加到60秒
MOV SECOND,#0
LJMP J0
S2: LCALL DL10MS
- 4 -
苏州工业园区职业技术学院 2010届毕业项目
MOV DPTR,#D8255C
MOVX A,@DPTR
JB K2,A1
MOV KEYBUF,#2
INC MINUTE ;分钟值加1
MOV A,MINUTE
CJNE A,#60,J1 ;判断是否加到60分
MOV MINUTE,#0
LJMP J1
S3: LCALL DL10MS
MOV DPTR,#D8255C
MOVX A,@DPTR
JB K3,A1
MOV KEYBUF,#3
INC HOUR ;小时值加1
MOV A,HOUR
CJNE A,#24,J2 ;判断是否加到24小时
MOV HOUR,#0
SJMP J2
A1: LCALL DISPKEY
RET
;****************************************************
;等待按键抬起
J0: MOV DPTR,#D8255C
MOVX A,@DPTR
JB K1,A1
LCALL DISPLAY
SJMP J0
J1: MOV DPTR,#D8255C
MOVX A,@DPTR
JB K2,A1
LCALL DISPLAY
SJMP J1
J2: MOV DPTR,#D8255C
MOVX A,@DPTR
JB K3,A1
LCALL DISPLAY
SJMP J2
DISPKEY: ; 键显示处理程序
MOV A,KEYBUF ;得到键值
MOV DPTR,#TABLE
MOVC A,@A+DPTR ;查行键值送ACC
MOV P1,A;
- 5 -
苏州工业园区职业技术学院 2010届毕业项目
RET
;***********************************************
;定时器中断服务程序,对秒,分钟和小时的计数 INT_T0: PUSH ACC
PUSH PSW
CLR TR0
MOV TH0,#4CH ;定时50 毫秒
MOV TL0,#00H
SETB TR0
INC TCNT
MOV A,TCNT
CJNE A,#20,RETUNE ;计时1秒
MOV TCNT,#0
INC SECOND
MOV A,SECOND
CJNE A,#60,RETUNE
INC MINUTE
MOV SECOND,#0
MOV A,MINUTE
CJNE A,#60,RETUNE
INC HOUR
MOV MINUTE,#0
MOV A,HOUR
CJNE A,#24,RETUNE
MOV HOUR,#0
RETUNE: POP PSW
POP ACC
RETI
;******************************************
;显示控制子程序
DISPLAY:
MOV A,SECOND ;显示秒
MOV B,#10
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0BFH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
- 6 -
苏州工业园区职业技术学院 2010届毕业项目
MOVX @DPTR,A
MOV A,B
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#7FH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,#40H ;显示分隔符
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0DFH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,MINUTE ;显示分钟
MOV B,#10
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0F7H
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,B
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0EFH
MOVX @DPTR,A
- 7 -
苏州工业园区职业技术学院 2010届毕业项目
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,#40H ;显示分隔符
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0FBH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,HOUR ;显示小时
MOV B,#10
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0FEH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
MOV A,B
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#D8255A ; 8255A 口地址
MOVX @DPTR,A
MOV DPTR,#D8255B ; 8255B 口地址
MOV A,#0FDH
MOVX @DPTR,A
LCALL DELAY
MOV A,#0FFH
MOVX @DPTR,A
RET
;*************************************
;* *
- 8 -
苏州工业园区职业技术学院 2010届毕业项目 ;* 延时10ms * ;* *
;*************************************
;
;10毫秒延时程序
DL10MS: MOV R3,#14H DELAY1: MOV R2,#8EH
DJNZ R2,$
DJNZ R3,DELAY1
RET
DELAY: MOV R6,#5
D1: MOV R7,#200
DJNZ R7,$
DJNZ R6,D1
RET;
TABLE: ; 七段显示器数据定义
DB 3FH, 06H, 5BH, 4FH ; 0、1、2、3
DB 66H, 6DH, 7DH, 07H ; 4、5、6、7
DB 7FH, 67H, 77H, 7CH ; 8、9、A、B
DB 39H, 5EH, 79H, 71H ; C、D、E、F
DB 00H
END ;程序结束
- 9 -
苏州工业园区职业技术学院 2010届毕业项目
第三章 系统仿真
数字电子钟上电后,观察电路板上数码管的时间显示情况及按键的功能。正常的运行结果是:上电后,电子钟开始工作,8位共阴极数码管将从“00-00-00”开始显示时间,时制为24小时制,时间显示格式为时(十位、个位)、分(十位、个位)、秒(十位、个位),即HH-MM-SS。在电子钟的工作过程中,按下SECOND+、MINUTE+、HOUR+、SECOND-、MINUTE-、HOUR-键可调整显示值,其中SECOND+、MINUTE+、HOUR+分别用于递增调整秒、分、时的值,SECOND-、MINUTE-、HOUR-分别用于递减调整秒、分、时的值。
图1-1 数字钟虚拟仿真硬件图
- 10 -
苏州工业园区职业技术学院 2010届毕业项目
第四章 结束语
本文正是基于多功能电子时钟这种设计方向,以单片机为控制核心,设计制作一个符合指标要求的多功能数字时钟。在很多实际应用中,只要对数字时钟的程序和硬件电路加以一定的修改,便可以得到实时控制的实用系统,从而应用到实际工作与生产中去。本设计的液晶显示电子钟充分利用了单片机的软、硬件资源,本着简单实用的设计原则,不仅努力做到结构简单使之易于成本控制,而且在人机交互方面也力求界面更加友好。
单片机课程设计其实是一个软硬件结合的设计。但设计的思想是能用软件实现的功能尽量用软件实现,因为便于修改。
- 11 -
苏州工业园区职业技术学院 2010届毕业项目
参 考 文 献
1. 武庆生、仇梅编《单片机及接口实用
教程
人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程
》 电子科技大学出版社 1995 2. 苏平等编《单片机原理与接口技术》 电子工业出版社 2004 3. 张志良主编《单片机原理与控制技术》 机械工业出版社 2002
- 12 -
苏州工业园区职业技术学院 2010届毕业项目
致 谢
感谢同学对我的帮助和指点。没有他们的帮助,对于我来说顺利成毕业论文几乎是不可能的事情。
通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。
在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意~
- 13 -