8254计数器-实验报告.doc

上传人:scccc 文档编号:12467605 上传时间:2021-12-04 格式:DOC 页数:11 大小:227KB
返回 下载 相关 举报
8254计数器-实验报告.doc_第1页
第1页 / 共11页
8254计数器-实验报告.doc_第2页
第2页 / 共11页
8254计数器-实验报告.doc_第3页
第3页 / 共11页
8254计数器-实验报告.doc_第4页
第4页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《8254计数器-实验报告.doc》由会员分享,可在线阅读,更多相关《8254计数器-实验报告.doc(11页珍藏版)》请在三一文库上搜索。

1、_微机原理实验报告学院名称:实验名称:8254 计数器应用班级:精品资料_学生姓名:学号(班内序号):【实验名称】8254 计数器应用【实验目的】( 1) 熟悉 8254 的工作方式及应用编程;( 2) 掌握 8254 的典型应用电路接法;( 3) 学习 8254 在 PC 系统中的典型应用方法。【实验内容】8254 通过实验箱提供的单次脉冲单元,按动微动开关向计数器依次发出单脉冲,观察每来一个脉冲时计数器当前计数值的变化情况。【实验原理】8254 是 Intel 公司生产的可编程间隔定时器,是8253 的改进型,比8253 具有更优良的性能。精品资料_8254 具有以下基本功能:( 1) 有

2、三个独立的 16 位计数器;( 2) 每个计数器可按二进制或十进制( BCD )计数;( 3) 每个计数器可编程工作于 6 种不同工作方式;( 4) 8254 每个计数器允许的最高计数频率为10MHz (8253 为 2MHz );( 5) 8254 有读回命令( 8253 没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容;( 6) 计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数器的初值公式为n=其中是输入时钟脉冲的频率,是输出波形的频率。8254 的工作方式如下:方式 0 计数到 0 结束输出正跃变信号(可作为中断请求信号)方式 1 硬件 可触 发单 稳方 式(

3、形成 负脉冲 ,宽度 =N ×CLK 脉冲 周期)方式 2 频率发生器方式(输出固定频率的脉冲)方式 3 方波 发生 器方式 4 软件触发选通方式(输出负脉冲,宽度为一个 CLK 周期)方式 5 硬件触发选通方式(输出负脉冲,宽度为一个 CLK 周期)控制字有两个:一个是:用来设置计数器的工作方式,称为方式控制字;另一 个用来设置读回命令,称为读回控制字。两个 控制字共用一个精品资料_地址,由标志位 来区 分。读 回控 制字 的 D4 位为 0 时,由 该读 回控 制字D1D2位指 定的计 数器 的状 态寄 存器 内容将 被锁 存到 状态 寄存器 中。8254 的方式 控制 字格式

4、:D7D6D5D4D3D2D1D0计数器选择读/写格式选择000- 方式 0计数 码制 选择00-计数器 000- 锁存 计数 器001- 方式 10-二进制01-计数器 101- 读/写低 8位010- 方式 21-十进制10-计数器 210- 读/写高 8位011- 方式 311- 输出 控制 字11- 先读 /写低8 位100- 方式 4标志再读 /写低8 位101- 方式 58254读出控 制字 格式DDD5D4D3D2D1D760110-锁存计数0-锁存状态信计数器选择(同方法控0值息制字)状态字格式D7D6D5D4D3D2D1D0OUT 引脚现计数初值是否计数器方式(同方式控制字)

5、行状态 0-高装入 1-无效计电平 1-低电数 0-计数有效精品资料_平源程序:PC8254_COUNT0EQU1440H;计数器 0的I/O 地址PC8254_COUNT1EQU1441H;计数器 1的I/O 地址PC8254_COUNT2EQU1442H;计数器 2的I/O 地址PC8254_MODEEQU1443H;计数器控制器的 I/O 地址DATA SEGMENTOBUF DB 8 DUP(?)DATAENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXCDBMACRO ; 将二进制转换成十进制的宏LOCAL

6、 LOOP1精品资料_MOV BX,OFFSET OBUF+7MOV BYTE PTRBX,'$'DEC BXMOV BYTE PTRBX,10DEC BXMOV BYTE PTRBX,13MOV CX,10LOOP1:MOV DX,0DIV CXADD DL,30HDEC BXMOV BX,DLOR AX,AXJNZ LOOP1MOV DX,BXMOV AH,09HINT 21HENDM精品资料_MOV DX,PC8254_MODE;向控制器写控制字,这里设的是计数器0、方式 0、先低后高两个字节读 /写MOV AL,30HOUT DX,ALMOV AX,03H;设置计数值M

7、OV DX,PC8254_COUNT0;向计数器 0写计数值,先低后高两个字节写OUT DX,ALMOV AL,AHOUT DX,ALREADC0:;读计数器值,存于 AX 中MOV DX,PC8254_MODEMOV AL,0OUT DX,ALMOV DX,PC8254_COUNT0IN AL,DXMOV AH,AL精品资料_IN AL,DXXCHG AL,AHCDB;将计数值显示出来MOV CX,0FFFFH;延迟LOOP2:DEC CXCMP CX,0JNE LOOP2MOV AH,06H;是否有键盘输入,有则退出MOV DL,0FFHINT 21HJE READC0MOV AH,4CHINT 21HCODE ENDSEND START【实验结果 】初值为 65535 ,按动单次脉冲单元,屏幕上显示计数器当前计数的值依次递减,直到计数值为0。精品资料_【实验分析与心得体会 】通过此次实验,使我初步学会了实验电路箱的用法,更好的了解了8254 及其实验箱电路连接方法, 更好的把理论和实验相结合,认识到编程中还有很多不足,在今后的学习中需要改进。精品资料_Welcome ToDownload !欢迎您的下载,资料仅供参考!精品资料

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1