接口技术作业3-定时计数技术
- 格式:doc
- 大小:13.00 KB
- 文档页数:1


实验2:可编程定时器/计数器(8253)一、实验目的:掌握8253的基本工作原理和编程方法二、实验内容:1.按图虚线连接电路,将计数器 0 设置为方式 0,计数器初值为 N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察 OUT0 电平变化(当输入 N+1 个脉冲后 OUT0 变高电平)。
2、按下图连接电路,将计数器0、计数器1设置为方式3,计数初值为1000,用逻辑笔观察OUT1输出电平的变化(1Hz)。
三.实验流程图如下:四.实验程序(1)DATA SEGMENTIOPORT EQU 0C400H-0280HIO8253a EQU IOPORT+283HIO8253b EQU IOPORT+280HDATA ENDSSTACK1 SEGMENT PARA STACKDW 100H DUP(0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK1START:MOV AX,DATAMOV DS,AXMOV AL,10H ;写计数器0控制字MOV DX,IO8253aOUT DX,ALMOV DX,IO8253bMOV AL,05H ;设计数器初值为5OUT DX,ALLOP: IN AL,DX ;读计数器值CALL DISP ;调用子程序PUSH DXMOV AH,06H ;判断是否有键按下MOV DL,0FFHINT 21HPOP DXJZ LOPMOV AH,4CH ;返回操作系统INT 21HDISP PORC NEARPUSH DXAND AL,0FH ;将十六进制数转化为十进制的ASCII码,小于9就 MOV DL,AL 加30H,大于9就加37HCMP DL,9JLE XCADD DL,7XC: ADD DL,30HMOV AH,02HINT 21HMOV DL,0DHINT 21HPOP DXRETDISP ENDPCODE ENDSEND START(2)DATA SEGMENTIOPORT EQU 0C400H-0280HIO8253 EQU IOPORT+283HIO8253a EQU IOPORT+280HIO8253b EQU IOPORT+281HDATA ENDSSTACK1 SEGMENT PARA STACKDW 100H DUP(0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK1START:MOV AX,DATAMOV DS,AXMOV AL,36H ;写计数器0的控制字MOV DX,IO8253OUT DX,ALMOV DX,IO8253a ;写计数初值MOV AX,1000HOUT DX,ALMOV AL,AHOUT DX,ALMOV AL,76H ;写计数器1的控制字MOV DX,IO8253OUT DX,ALMOV AX,1000H ;写计数初值MOV DX,IO8253bMOV DX,ALMOV AL,AHOUT DX,ALMOV AH,4CHINT 21HCODE ENDSEND START五.实验感想8253具有3个独立的16位计数器,6种不同的工作方式。