基于8086的数字电压表、与秒表的设计(3)

2021-09-24 15:06

OUT 21H,AL ;ICW4 MOV AL,6FH OUT 21H,AL ;OCW1 MOV DX,MY8254_MODE ;8254的初始化 MOV AL,27H ;计数器0,方式3(信号为方波) OUT DX,AL MOV DX,MY8254_A MOV AL,10H ;初始化A组方式控制字,D6-D5方式选择,D4A口输出,D3(Pc7~Pc6 I|0控制 0=输出,1=输入) OUT DX,AL MOV DX,MY8254_MODE MOV AL,67H ;计数器1,方式3 OUT DX,AL MOV DX,MY8254_B MOV AL,10H ;初始化B组方式控制字,D6-D5方式选择,D2B组方式(0=方式0,1=方式1),D2B口 I|0控制( 0=输出,1=输入),D0(Pc0~Pc2 I|0控制 0=输出,1=输入) OUT DX,AL ;STI ;置中断允许标志位,CPU将允许中断 P1: MOV DX,C8255 IN AL,DX TEST AL,10000000B ;K7=1 系统运行 JZ P1 TEST AL,01000000B ;K6=1 数字秒表 JZ AD ;K6=0 跳到电压表 MOV AL,00H MOV NUM,AL MOV DX,MY8254_MODE ;8254的初始化 MOV AL,27H ;计数器0,方式3 OUT DX,AL MOV DX,MY8254_A MOV AL,10H OUT DX,AL

MOV DX,MY8254_MODE MOV AL,67H ;计数器1,方式3 OUT DX,AL MOV DX,MY8254_B MOV AL,10H OUT DX,AL JMP AA1 ;跳到秒表

;------------------------------------------------------------------------------ ;电压表显示程序

;------------------------------------------------------------------------------ AD: MOV DX,MY8254_MODE ;8254的初始化 MOV AL,00100000B ;计数器0,方式0 OUT DX,AL MOV DX,ADC0809 OUT DX,AL

EOC: MOV DX,C8255 IN AL,DX TEST AL,00110000B ;PC6=0,PC6清零 JZ EOC ;跳到EOC:ADC0809的EOC信号,用作8259的中断请求信号 MOV DX,ADC0809 IN AL,DX MOV NUM1,AL ;显示程序段 MOV CL,AL AND AL,0F0H SHR AL,4 CMP AL,0AH JB B2 ;小于0AH转到AA2 ADD AL,07H B2: ADD AL,30H ;将低四位转换成ASCII码

B5: MOV AH,01H ;INT 10H

MOV AL,CL AND AL,0FH CMP AL,0AH JB B5 ADD AL,07H ADD AL,30H ;将低四位转换成ASCII码 MOV AH,01H ;INT 10H

MOV AX,0120H ;显示一个空格 INT 10H

MOV AH,00H MOV AL,NUM1 MOV BL,51 DIV BL

PUSH AX

ADD AL,01H

MOV NUM2,AL ;数码管显示程序 MOV AL,0FEH

MOV DX,MY8255_C OUT DX,AL

MOV AL,NUM2 ;显示 MOV BX,OFFSET DTABLE XLAT

MOV DX,MY8255_B OUT DX,AL CALL DELAY POP AX

PUSH AX ADD AL,30H MOV AH,01H INT 10H

MOV AL,2EH;显示一个点 INT 10H

MOV AH,00H

MOV AL,NUM1 MOV BL,51 DIV BL

MOV AL,AH MOV AH,00H

MOV BL,10;显示十分位 MUL BL MOV CL,51 DIV CL

PUSH AX

ADD AL,30H MOV AH,01H INT 10H POP AX MOV AL,AH MOV AH,00H

MOV BL,10;显示百分位 MUL BL MOV CL,51 DIV CL

ADD AL,30H MOV AH,01H INT 10H

MOV AH,01H

MOV AL,56H;显示一个V INT 10H

MOV AX,0120H ;显示一个空格

INT 10H

POP AX

MOV AH,00H CMP AX,0000H JZ BB1

CMP AX,0001H JZ BB2

CMP AX,0002H JZ BB3 CMP AX,0003H JZ BB4 CMP AX,0004H JZ BB5 JMP P1

BB1: MOV MOV BB11: MOV MOV OUT ROL CALL CALL LOOP JMP P1

BB2: MOV MOV BB22: MOV MOV OUT ROR CALL CALL LOOP JMP P1

BX,0101H CX,08H DX,0600H AL,BH DX,AL BH,1 DELAY1 DELAY1 BB11 BX,0C001H CX,08H DX,0600H AL,BH DX,AL BH,1 DELAY1 DELAY1 BB22


基于8086的数字电压表、与秒表的设计(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:无线传输距离测算

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: