电子时钟LCD显示课程设计任务书文档格式.docx

上传人:b****5 文档编号:19373014 上传时间:2023-01-05 格式:DOCX 页数:14 大小:109.06KB
下载 相关 举报
电子时钟LCD显示课程设计任务书文档格式.docx_第1页
第1页 / 共14页
电子时钟LCD显示课程设计任务书文档格式.docx_第2页
第2页 / 共14页
电子时钟LCD显示课程设计任务书文档格式.docx_第3页
第3页 / 共14页
电子时钟LCD显示课程设计任务书文档格式.docx_第4页
第4页 / 共14页
电子时钟LCD显示课程设计任务书文档格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

电子时钟LCD显示课程设计任务书文档格式.docx

《电子时钟LCD显示课程设计任务书文档格式.docx》由会员分享,可在线阅读,更多相关《电子时钟LCD显示课程设计任务书文档格式.docx(14页珍藏版)》请在冰豆网上搜索。

电子时钟LCD显示课程设计任务书文档格式.docx

二、本设计原理

本设计以AT89C51单片机为核心,通过时钟程序的编写,并在LCD显示器上显示出来。

该编程的核心在于定时器中断及循环往复判断是否有按键操作,并对每个按键的操作在LCD显示器上作出相应的反应。

由于LCD显示器每八位对应一个字符,故把秒、分、时的个位和十位分开表示。

该课题中有三个控制开关KM1、KM2、KM3分别控制时、分、秒的调整,时间按递增的方式调整,每点一次按钮则相应的时间个位加以,且时间调整不干扰其他为调整时间的显示。

三、硬件设计原理(电路)

 

四、软件设计(流程图)

五、仿真结果与结论

5.仿真结果与结论

初始运行显示效果如下:

用按键调节时分秒从而设置时间:

结论:

采用12MHZ晶振采用方式1定时,选取50ms采用20次中断达到一秒,采用查表方式控制LCD显示。

根据仿真结果可知该编程及硬件电路符合要求。

附录

程序设计如下:

KM1BITP1.0

KM2BITP1.1

KM3BITP1.2

RSEQUP2.0

RWEQUP2.1

EEQUP2.2

IN_0EQUP0

SECLEQU40H;

秒低位

SECHEQU41H;

秒高位

MH1EQU42H;

冒号

MINLEQU43H;

分低位

MINHEQU44H;

分高位

MH2EQU45H;

HOURLEQU46H;

时低位

HOURHEQU47H;

时高位

ORG0000H

AJMPMAIN

ORG000BH

AJMPINTT_0

MAIN:

MOVR2,#20

ACALLINIT_LCD;

初始化液晶

MOVR5,#00H

MOVIN_0,#84H;

写入显示起始地址(第一行第五个位置)

ACALLENABLE

MOVTH0,#3CH;

50MS

MOVTL0,#0B0H

MOVTMOD,#01H

ACALLSJCZ

SETBEA

SETBET0

SETBTR0

LCALLA1

START1:

LCALLWDATA1

LCALLWDATA2

AJMPSTART1

;

*******控制键*******

A1:

LCALLWDATA2

JNBKM1,S1

JNBKM2,S2

JNBKM3,S3

AJMPA1

*****调整小时*****

S1:

LCALLDELAYL

JBKM1,A1

MOVA,HOURH

CJNEA,#02H,ST1

MOVA,HOURL

CJNEA,#03H,ST2

MOVHOURH,#00H

MOVHOURL,#00H

AJMPJ1

ST1:

MOVA,HOURL

CJNEA,#09H,ST2

INCHOURH

MOVHOURL,#00H

ST2:

INCHOURL

AJMPJ1

J1:

JBKM1,S1

LCALLWDATA1

*****调整分钟*****

S2:

JBKM2,A1

MOVA,MINH

CJNEA,#05H,ST3

MOVA,MINL

CJNEA,#09H,ST4

MOVMINH,#00H

MOVMINL,#00H

AJMPJ2

ST3:

MOVA,MINL

CJNEA,#09H,ST4

INCMINH

MOVMINL,#00H

ST4:

INCMINL

AJMPJ2

J2:

JBKM2,S2

*****调整秒*****

S3:

JBKM3,A1

MOVA,SECH

CJNEA,#05H,ST5

MOVA,SECL

CJNEA,#09H,ST6

MOVSECH,#00H

MOVSECL,#00H

AJMPJ3

ST5:

MOVA,SECL

CJNEA,#09H,ST6

INCSECH

MOVSECL,#00H

ST6:

INCSECL

AJMPJ3

J3:

JBKM3,S3

AJMPJ3

****设定显示初值***

SJCZ:

MOV40H,#0;

显示初值是23:

59:

00

MOV41H,#0

MOV42H,#10

MOV43H,#9

MOV44H,#5

MOV45H,#10

MOV46H,#3

MOV47H,#2

RET

INTT_0:

PUSHPSW

PUSHACC;

T0定时器中断

MOVTL0,#0B0H;

送定时初值

MOVTH0,#3CH

DJNZR2,TT

INCSECL;

秒记数,到60S就清0

MOVA,SECL

CJNEA,#0AH,TT

INCSECH

MOVSECL,#00H

CJNEA,#06H,TT

MOVSECH,#00H

INCMINL;

分记数,到60分请0

MOVA,MINL

MOVMINL,#00H

INCMINH

MOVMINH,#00H

INCHOURL;

时记数,到24时清0

CJNEA,#04H,TT2

CJNEA,#02H,TT1

MOVHOURL,#00H

MOVHOURH,#00H

AJMPTT

TT2:

MOVHOURL,#00H

INCHOURH

TT1:

CJNEA,#02H,TT

TT:

POPACC

POPPSW

RETI

****液晶初始化****

INIT_LCD:

ACALLDELAYL;

延时,等待LCD完成电源的启动

MOVIN_0,#01H;

清屏并光标复位

ACALLENABLE

MOVIN_0,#38H;

设置显示模式:

8位2行5x7点阵

MOVIN_0,#0CH;

显示器开、光标关、光标不闪烁

MOVIN_0,#06H;

文字不动,光标自动右移

MOVIN_0,#0C0H;

写入显示起始地址(第二行第一个位置)

****写数据程序****

WDATA1:

MOVR1,#08H

MOVR0,#47H

WDATA_1:

MOVA,@R0

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVIN_0,A;

写入数据

SETBRS

CLRRW

CLRE

ACALLCHECKBUSY

SETBE;

忙检测

DECR0

DJNZR1,WDATA_1

WDATA2:

MOVR1,#10H

MOVR0,#00H

MOVDPTR,#TAB

WDATA_2:

MOVA,R0

MOVDPTR,#TAB

忙检测

INCR0

DJNZR1,WDATA_2

****显示符号表****

TABLE:

DB30H,31H,32H,33H,34H,35H;

012345

DB36H,37H,38H,39H,3AH,80H,2EH;

6789:

空格.

TAB:

DB"

MADEINCHINA"

******写指令****

ENABLE:

CLRRS;

写入控制命令的子程序

CLRRW

SETBE

CHECKBUSY:

MOVIN_0,#0FFH;

判断液晶显示器是否忙的子程序

CLRRS

SETBRW

NOP

JBP0.7,CHECKBUSY;

如果P0.7为高电平表示忙就循环等待

DELAYL:

MOVR7,#100;

延时程序

D1:

MOVR6,#200

DJNZR6,$

DJNZR7,D1

END

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

当前位置:首页 > PPT模板 > 其它模板

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

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