计时时钟Word文件下载.doc

上传人:wj 文档编号:3972942 上传时间:2023-05-02 格式:DOC 页数:18 大小:284KB
下载 相关 举报
计时时钟Word文件下载.doc_第1页
第1页 / 共18页
计时时钟Word文件下载.doc_第2页
第2页 / 共18页
计时时钟Word文件下载.doc_第3页
第3页 / 共18页
计时时钟Word文件下载.doc_第4页
第4页 / 共18页
计时时钟Word文件下载.doc_第5页
第5页 / 共18页
计时时钟Word文件下载.doc_第6页
第6页 / 共18页
计时时钟Word文件下载.doc_第7页
第7页 / 共18页
计时时钟Word文件下载.doc_第8页
第8页 / 共18页
计时时钟Word文件下载.doc_第9页
第9页 / 共18页
计时时钟Word文件下载.doc_第10页
第10页 / 共18页
计时时钟Word文件下载.doc_第11页
第11页 / 共18页
计时时钟Word文件下载.doc_第12页
第12页 / 共18页
计时时钟Word文件下载.doc_第13页
第13页 / 共18页
计时时钟Word文件下载.doc_第14页
第14页 / 共18页
计时时钟Word文件下载.doc_第15页
第15页 / 共18页
计时时钟Word文件下载.doc_第16页
第16页 / 共18页
计时时钟Word文件下载.doc_第17页
第17页 / 共18页
计时时钟Word文件下载.doc_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计时时钟Word文件下载.doc

《计时时钟Word文件下载.doc》由会员分享,可在线阅读,更多相关《计时时钟Word文件下载.doc(18页珍藏版)》请在冰点文库上搜索。

计时时钟Word文件下载.doc

另外,可编程并行接口(8255A)的是数据传输速度快,虽然使用的通信线多,但是传输距离并不算远,所以在解决接口问题时,采用可编程并行接口(8255A)是比较合适的。

(2)时间的显示问题:

为实现计时时钟的显示,可选择芯片LCD或LED。

表1-2 LCD与LED的比较

LCD

液晶显示器,通过液晶和彩色过滤器过滤光源,在平面面板上产生图象,具有零辐射,低耗能,散热小,纤薄轻巧,精确还原图象,显示字符锐利,屏幕调节方便,可视角度小,响应时间过慢,亮度可对比度低等特点

LED

发光二极管,是由发光二极管排列组成的显示器件,它采用低电压扫描技术,具有耗电少,使用寿命长,成本低,亮度高,故障少,视角大,视角大,可视距离远的特点

通过分析和对比,LED显示器要较优于LCD显示器,因此本实验选择LED 来实现时间的显示

(3)秒钟的设计问题:

两种解决方案:

硬件实现、软件实现

(1)硬件分析:

可选择8253A芯片,8253A是一种定时准确、使用方便、灵活性大的可编程定时器/计数器,其定时的时间长度可以通过软件来设置,对芯片设置处置初值后,计数器开始工作,微处理器就可以去做其他工作,定时时间到,电路会产生一个信号,向微处理器提出中断请求,告诉处理器定时时间已到。

(2)软件分析:

为实现1秒长度的设定,可执行一个循环程序,通过循环次数和循环嵌套的层数来调节计时时间的长短,该方法的优点是不需要专用的硬件,从而成本低,方法简单灵活,使用起来也比较容易。

(3)最佳解决方案:

通过以上分析,硬件实现1秒的设定虽然较准确,但用软件来实现可以极大的节约成本,而且通过周密的计算循环的次数和循环嵌套的层数也可以将计时的准确度提高,所以在实现计时时间方面选择软件是比较好的方案。

1.2.2 软件部分:

初始值设置:

在程序中的数据段定义秒位数据second,分位数据minute,时位数据hour,初始值都设为00h,并在LED显示器上显示初值;

8255初始化:

设置8255的工作方式:

B口和C口都用于输出,且都工作于方式0;

计时:

从初值开始显示,当显示了1s时,秒位加1,并判断秒位是否为60,若不是,则直接显示时间;

若是,则将秒位置0,分位加1,接着判断分位是否为60,若不是,则直接显示;

若是,则将分位置0,时位加1,然后判断时位是否为25,若不是,则直接显示;

若是,则将时位置0,日期加1,并判断日期是否加到31,若是,则将日期清零,重新计时。

如此循环。

1秒时间的设定:

执行一个循环程序,通过循环次数和循环嵌套的层数来调节计时时间的长短,该循环次数处定为0100h。

2、硬件设计:

2.1 选择芯片8255:

2.1.1 芯片8255A在本设计设计中的作用:

8255是并行的I/0接口芯片,内部有三个相互独立的8位数据端口。

8255实现了外设与8086之间的数据传输。

8255的B口工作于方式0,作为输出口,其PB0~PB7分别与LED数码管显示器的显示器的八段a,b,c,d,e,f,g,dp相连,C口作为输出口,其PC7~PC0与LED数码管显示器的LED0~LED7相连,作为位选。

2.1.2芯片8255的功能分析:

(1)8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。

三个端口都可以作为输入端口或输出端口。

A口有三种工作方式:

即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,而C口通常作为联络信号使用。

8255的工作只有当片选CS有效时才能进行工作。

而控制逻辑端口实现对其他端口的控制。

当8255工作于方式0时,即基本输入输出方式时,可将三个数据端口划分为四个独立的部分:

A口和B口作为两个8位端口,C口的高4位和低4位可以用作两个4位的输入输出口,各个端口都可独立地用作输入或输出。

(2)CPU接口:

数据总线缓冲器:

这是一个8位双向三态缓冲器,三态是由读/写控制逻辑控制的,它可与系统的DB直接相连,实现CPU和8255A之间的信息传送;

读写控制逻辑:

用于管理数据、控制字或状态字的传送,接收来自CPU的地址信息及一些控制信号,然后向A组、B组控制电路发送命令,控制端口数据的传送方向。

2.1.3 8255部分技术参数:

8255A的方式控制字:

(见图2-1)

图2-1 8255A的方式控制字

表2-1 8255A的部分技术参数

标识符

最小

最大

测试条件

输入低电平(VIL)

-0.5V

0.8V

输入高电平(VIH)

2.0V

5V

输出低电平(VOL)DB

0.45V

IOL=2.5mA

输出低电平(VOL)PER

0.45V

IOL=1.7mA

输出高电平(VOH)DB

2.4V

IOH=-400μA

输出高电平(VOH)PER

IOH=-200μA

驱动电流

-1.0mA

-4.0mA

REXT=750Ω,VEXT=1.5V

供应电流

120mA

IIL(INPUTLOADCURRENT

±

10μA

VIN=0V~5V

IOFL(Outputfloatleakage

VOUT=0.45~5V

技术参数分析:

8255A工作的最低输入电压-0.5~0.8V,最高输入电压是2.0~Vcc电压,从这两者之间的区域来看,逻辑电平的差值还是比较大的;

另外在数据总线上的逻辑电平是2.4V,输入的负载电流为在最大电流为±

10mA,电源的电流是120mA,驱动电流在-1.0mA~-4.0mA之间

2.1.4 8255与外设相连的逻辑图:

(见图2-3)

图2-3 8255与外设相连的逻辑图

PA7~PA0:

A口数据信号线;

PB7~PB0:

B口数据信号线;

PC7~PC0:

C口数据信号线。

2.2选择器件LED:

2.2.1 LED在本设计中的作用:

LED发光二级管(Light-EmittingDiode),在本设计中采用7段数字发光二级管,是作为终端用来显示计时时钟的分秒值用的。

2.2.2 LED功能分析:

LED发光二级管分为共阳极和共阴极两种,共阳就是7段的显示字码共用一个电源的正极,原理示意图如下:

(见图2-4)

图2-4 LED原理图

LED数码管采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个PN结,具有单向导电性。

从上图可以看出,要是数码管显示数字,有两个条件:

1、是要在VT端(3/8脚)加正电源;

2、要使(a,b,c,d,e,f,g,dp)端接低电平或“0”电平。

这样才能显示的。

将七个发光管进行组合,排列成数字图形8,再根据需要控制七个管的亮与灭,即可显示出定义数字。

2.2.3 LED技术参数:

表2-2 LED显示管段选码编码表

数字

DP

g

f

e

d

c

b

a

二进制编码(字形)

1

3FH

03H

2

5BH

3

4FH

4

66H

5

6DH

6

7DH

7

07H

8

7FH

9

6FH

A

77H

B

7CH

C

69H

D

5EH

E

79H

F

71H

表2-3 LED显示管参数

Pcw

If

Vr

Ir

P

对应型号

散射颜色

BT235—2

70

25

≥1.5

≤2.5

200

SEL—10

BT1441529

100

40

≥0.5

565

绿

BT1341529

585

LED技术参数说明:

通过以上所列出的LED技术参数,可以总结出发光二极管的压降一般为1.5~2.0V,即工作电压要求不高,而且构造简单,其工作电流一般取10~20mA为宜。

2.3 硬件总逻辑图及其说明:

2.3.1 实验与原理图的相关说明:

8086的8位数据线D7~D0与8255的D7~D0相连,地址线经74LS373锁存后其低位A0、A1分别与8255的A0、A1相连,其他地址线经74LS138译码后,其CS0接8255的片选CS8255引脚,其入口地址为34F0H~34F3H。

8255的A口PA0~PA6分别与逻辑开关的K1~K7相连,其中开关量K7用于判断是否修改时间,K5~K6用于判断修改哪一位,K1~K4为要修改的值;

B口作为段选;

C口作为位选。

2.3.2 实验组成原理图:

(见图2-6)

图2-6 实验组成原理图

3、控制程序设计:

3.1 控制程序思路说明:

(1)初始化8255A,设置其工作方式;

(2)设置初值,定义对应十六进制数的七段代码表及其时间区表

(3)显示计时并循环判断,当1秒时间到是则秒位加1计时显示。

(4)8255A芯片的相关地址如下:

端口地址:

34F3H

A口地址:

00F0H

B口地址:

00F1H

C口地址:

00F2H

3.2 流程图:

见图3-1

3.3 程序流程图的相关说明:

首先对8255进行初始化,然后开始读取开关量,判断是否要修改时间,若需修改,则判断需修改哪位,随后将该位对应的时间区数据修改为逻辑开关K1~K4对应的值,若不需要修改则继续显示并循环判断,当1秒时间到达时,则秒位加1计时显示。

3.4 控制程序:

.MODEL TINY

PCIBAR3 EQU 1CH ;

8位I/O空间基地址(它就是实验仪的基地址,也为DMA&

32BITRAM板卡上的8237提供基地址)

Vendor_ID EQU 10EBH ;

厂商ID号

Device_ID EQU 8376 ;

设备ID号

.STACK 100

.DATA

IO_Bit8_BaseAddress DW ?

msg0 DB '

BIOS不支持访问PCI$'

msg1 DB '

找不到StarPCI9052板卡$'

msg2 DB '

读8位I/O空间基地址时出错$'

COM_ADD DW 00F3H ;

控制口偏移量

PA_ADD DW 00F0H ;

PA口偏移量

PB_ADD DW 00F1H ;

PB口偏移量

PC_ADD DW 00F2H ;

PC口偏移量

.CODE

START:

MOV AX,@DATA

MOV DS,AX

NOP

CALL InitPCI

CALL ModifyAddress;

根据PCI提供的基地址,将偏移地址转化为实地址

MOVBX,OFFSETTAB ;

LED数码管的换码的偏移地址

MOVDX,COM_ADD;

8255初始化

MOVAX,90H

OUTDX,AX;

A口输入,B口输出,C口低位输出,且都工作于方式0

A1:

MOVCX,0100H ;

送一秒时间常数

A2:

MOVSI,OFFSETSECOND ;

读入秒变量的偏移地址

MOVDX,PA_ADD

INAX,DX ;

从A口读取开关量

PUSHCX ;

保存时间常数

MOVAH,AL

ANDAH,0F0H

CMPAH,70H ;

判断是否修改时间

JAREM3 ;

若等于0,不修改

CMPAH,00H

JZA3

CMPAH,10H

JZA4

CMPAH,20H

JZA6

CMPAH,30H

JZA7

CMPAH,40H

JZA9

CMPAH,50H

JZA11

CMPAH,60H

JZA13

JMPA14

A3:

MOVAH,[SI] ;

修改秒位低位

ORAL,AH

MOV[SI],AL

JMPD1

A4:

MOVAH,[SI] ;

修改秒位高位

ANDAH,0FH

MOVCL,04H

SHLAL,CL

CMPAL,60H ;

若修改值在0~5之间才能修改

JBA5

A5:

ORAL,AH

REM3:

JMPD1

A6:

MOVAH,[SI+1] ;

修改分位低位

ANDAL,0FH ;

禁止显示

MOV[SI+1],AL

JMPD1

A7:

MOVAH,[SI+1] ;

修改分位高位

CMPAL,60H

JBA8 ;

A8:

ORAL,AH

JMPD1

A9:

MOVAH,[SI+2] ;

修改时位低位

CMPAL,40H

JBA10 ;

若修改值在0~3之间才能修改

A10:

MOV[SI+2],AL

A11:

修改时位高位

CMPAL,30H

JBA12 ;

若修改值在0~2之间才能修改

A12:

JMPD1

A13:

MOVAH,[SI+3] ;

修改日位低位

MOV[SI+3],AL

A14:

MOVAH,[SI+3]

SHLAL,CL

MOV[SI+3],AL

D1:

MOVCX,0004H ;

分秒切换

MOVAH,0FEH;

位选码11111110

D2:

MOVAL,[SI] ;

把时间常数放入AL中

ANDAL,0FH;

取分/秒个位

PUSHCX

MOVCX,0002H

D3:

XLAT ;

换码

MOVDX,PB_ADD

OUTDX,AL ;

送段选码

MOVAL,AH

MOVDX,PC_ADD

送位选码,显示低位

ROlAH,1

PUSHCX

MOVCX,0FFFH ;

低位暂留时间

DELAY1:

NOP

NOP

LOOPDELAY1 ;

延时子程序

MOVAL,0FFH ;

位选码为11111111

OUTDX,AL ;

MOVAL,[SI]

SHRAL,04H

POPCX

LOOPD3

INCSI

POPCX

DECCX

JNZD2

DECCX

MOVDX,PA_ADD

JNZREM2

INAX,DX ;

MOVAH,AL

ANDAH,80H

CMPAH,80H ;

JNZREM

MOD1:

MOVSI,OFFSETSECOND ;

计时

MOVAL,[SI]

ADDAL,01H ;

秒位加1

DAA ;

压缩BCD码调整指令

MOV[SI],AL

CMPAL,60H

JNZREM

MOVAL,00H ;

秒位置00,分位加1

MOV[SI],AL

MOVAL,[SI+1]

ADDAL,01H

DAA

MOV[SI+1],AL

MOVAL,00H

MOV[SI+1],AL

MOVAL,[SI+2]

ADDAL,01H ;

时位加1

MOV[SI+2],AL

CMPAL,24H

时位置00,日位加1

MOV[SI+2],AL

MOVAL,[SI+3]

MOV[SI+3],AL

CMPAL,30H

MOV[SI+3],AL ;

重新计时

REM:

JMPA1

REM2

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

当前位置:首页 > PPT模板 > 商务科技

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

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