云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 微机原理-数字频率计

微机原理-数字频率计

  • 62 次阅读
  • 3 次下载
  • 2025/5/4 2:21:17

器2装入初值65535。8259的IR7作为中断入口。中断时先发读回命令,读回定时器2的计数值,即终值。由于8253计数器是从初值开始作减1计数的,所以当读取计数完成的计数器值后,应将计数初值减去计数终值才是真正的计数值。并且在读了之后还需重新赋初值,之后返回主程序进行显示,等待下一次中断。 3.关键程序段说明

1) 中断程序:先保护断点,每次中断发读回命令,读回终值用初值

减得之差,将其转换成十进制,恢复断点后返回。

2) 二进制转十进制程序:二进制数除以10所得余数即为十进制的低

位,并将其存入BUF。利用循环可一一将二进制数转换成相应几位十进制数。

3) 显示程序:六位数码管,先取字位偏移地址,找到要显示的数,

利XLAT命令找到数对应的字型码,输出字型、字位,延时,在显示下一个数码管数值。如此循环显示完六个数码管。 4.源程序清单

;============= 数字频率计的设计============= CODE SEGMENT

ASSUME CS:CODE, DS:CODE, ES:CODE ORG 3400H H8: JMP P8259 ZXK EQU 0FFDCH

;数码管字型口

ZWK EQU 0FFDDH ;数码管字位口

LED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;0~9 BUF DB ?,?,?,?,?,? ;六位数码管

Port0 EQU 0FFE0H ;8259芯片地址 ,A0=0

- 8 -

Port1 EQU 0FFE1H ;A0=1 P8259: CLI

CALL WP ;初始化显示“000000” MOV AX,OFFSET INT8259

;中断IR7入口地址

MOV BX,003CH ;IR7偏移地址 MOV [BX],AX MOV BX,003EH

MOV AX,0000H ;IR7段地址 MOV [BX],AX CALL FOR8259 CALL FOR8253 CALL FOR8253X STI PPP: CALL DIS JMP PPP

;============================================== ;对8259进行初始化 ;--------------------------------

FOR8259: MOV AL,13H ;写入ICW1,边沿触发,间隔8,单片,需要ICW4 MOV DX,Port0 ;上升沿产生中断 OUT DX,AL

MOV AL,08H ;ICW2,中断向量码 MOV DX,Port1 OUT DX,AL

MOV AL,09H ;ICW4, 一般全嵌套,缓冲,非自动结束

;循环显示等待中断

;对8259初始化设置 ;对8253初始化设置 ;对频率范围进行设置

- 9 -

OUT DX,AL

MOV AL,07FH ;IR7为中断入口,屏蔽其他 OUT DX,AL RET

;============================================== ;对8253进行初始化(产生一秒脉冲信号) ;--------------------------------------------------------- FOR8253: MOV DX,0FFFBH

MOV AL,36H ;T0,高->低,方式3,二进制 OUT DX,AL

MOV DX,0FFF8H ;T0产生1秒脉冲信号 MOV AL,100 OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,0FFFBH MOV AL,76H

;T1, 高->低,方式3,二进制

OUT DX,AL ;写控制字 MOV DX,0FFF9H MOV AX,18432 OUT DX,AL MOV AL,AH OUT DX,AL RET

;==============================================

;T1产生10毫秒方波

- 10 -

;对频率范围设置 ;-------------------------

FOR8253X: MOV DX,0FFFBH ;设置T2,高->底,方式0,二进制 MOV AL,0B0H OUT DX,AL

MOV DX,0FFFAH ;T2计数的最大值 MOV AX,65535 OUT DX,AL MOV AL,AH OUT DX,AL

MOV CX,10 ;延时 WAIT1: LOOP WAIT1 RET

;============================================== ;二 ——十进制转化

;---------------------------------------

BTRO: MOV CL,5 XOR CH,CH XOR DX,DX

MOV BX,10 MOV SI,OFFSET BUF

ADD SI,5 ;由低位到高位存储 NEXT: DIV BX

MOV [SI],DL ;除以10的余数存放低位 DEC SI

- 11 -

搜索更多关于: 微机原理-数字频率计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

器2装入初值65535。8259的IR7作为中断入口。中断时先发读回命令,读回定时器2的计数值,即终值。由于8253计数器是从初值开始作减1计数的,所以当读取计数完成的计数器值后,应将计数初值减去计数终值才是真正的计数值。并且在读了之后还需重新赋初值,之后返回主程序进行显示,等待下一次中断。 3.关键程序段说明 1) 中断程序:先保护断点,每次中断发读回命令,读回终值用初值减得之差,将其转换成十进制,恢复断点后返回。 2) 二进制转十进制程序:二进制数除以10所得余数即为十进制的低位,并将其存入BUF。利用循环可一一将二进制数转换成相应几位十进制数。 3) 显示程序:六位数码管,先取字位偏移地址,找到要显示的数,利XLAT命令找到数对应的字型码,输出字型、字位,延时,在显示下一个数码管

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com