还剩4页未读,继续阅读
文本内容:
微机原理实验报告学院名称8254计数器应用实验名称班级学生姓名学号(班内序号)【实验名称】8254计数器应用【实验目的】1熟悉8254的工作方式及应用编程;2掌握8254的典型应用电路接法;3学习8254在PC系统中的典型应用方法【实验内容】8254通过实验箱提供的单次脉冲单元,按动微动开关向计数器依次发出单脉冲,观察每来一个脉冲时计数器当前计数值的变化情况【实验原理】8254是Intel公司生产的可编程间隔定时器,是8253的改进型,比8253具有更优良的性能8254具有以下基本功能1有三个独立的16位计数器;2每个计数器可按二进制或十进制BCD计数;3每个计数器可编程工作于6种不同工作方式;48254每个计数器允许的最高计数频率为10MHz8253为2MHz;58254有读回命令8253没有,除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容;6计数脉冲可以是有规律的时钟信号,也可以是随机信号计数器的初值公式为him其中Q是输入时钟脉冲的频率,G是输出波形的频率JU E8254的工作方式如下方式0——计数到0结束输出正跃变信号可作为中断请求信号方式1——硬件可触发单稳方式(形成负脉冲,宽度=NXCLK脉冲周期)方式2——频率发生器方式(输出固定频率的脉冲)方式3方波发生器方式4——软件触发选通方式(输出负脉冲,宽度为一个CLK周期)方式5——硬件触发选通方式(输出负脉冲,宽度为一个CLK周期)控制字有两个一个是用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字两个控制字共用一个地址,由标志位来区分读回控制字的D4位为时,由该读回控制字D1D2位指定的计数器的状态寄存器内容将被锁存到状态寄存器中〜8254的方式控制字格式:D7D6D5D4D3D2D1DO计数器选择读/写格式选择000-方式0计数码制选择00-计数器000-锁存计数器01-读/001-方式10-二进制01-计数器1写低8位10-读/写高81-十进制010-方式2位10-计数器2011-方式311-先读/写低8位再读/11-输出控制字标100-方式4志写低8位101-方式58254读出控制字格式D7D6D5D4D3D2D1D0110-锁存计数值0-锁存状态信息计数器选择(同方法控制字)0状态字格式D7D6D5D4D2D1D0D3OUT引脚现行状态计数初值是否装入计数器方式(同方式控制字)0-高电平1-低电1-无效计数0-计数平有效PC8254_C0UNT0EQU1440H;计数器0的I/O地址PC8254COUNT1EQU1441H;计数器1的I/O地址PC8254C0UNT2EQU1442H;计数器2的I/O地址PC8254_M0DE EQU1443H;计数器控制器的I/O地源程序:DATA SEGMENTOBUFDB8DUPDATA ENDSCODESEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXCDB MACRO;将二进制转换成十进制的宏LOCAL LOOP1MOV BX,OFFSET OBUF+7MOV BYTE PTR[BX]/$,DEC BXMOVBYTE PTR[BX],10DEC BXMOVBYTEPTR[BX],13MOV CX,10L00P1:MOV DX,0DIV CXADDDL,30HDEC BXMOV[BX],DLOR AX,AXJNZ L00P1MOV DX,BXMOV AH,09HINT21HENDMMOV DX,PC8254J1ODE;向控制器写控制字,这里设的是计数器
0、方式o、先低后高两个字节读7写MOV AL,30HOUT DX,ALMOV AX,03H;设置计数值MOV DX,PC8254_C0UNT0;向计数器写计数值,先低后高两个字节写OUT DX,ALMOV AL,AHOUT DX,ALREADCO:;读计数器值,存于AX中MOV DX,PC8254JIODEMOV AL,0OUT DX,ALMOV DX,PC8254_C0UNT0IN AL,DXMOV AH,ALIN AL,DXXCHG AL,AHCDB;将计数值显示出来MOV CX,OFFFFH;延迟L00P2:DEC CXCMPCX,0JNE LOOP2MOV AH,06H;是否有键盘输入,有则退出MOV DL,OFFHINT21HJE READCOMOVAH,4CHINT21HCODE ENDSENDSTART【实验结果】初值为65535,按动单次脉冲单元,屏幕上显示计数器当前计数的值依次递减,直到计数值为0【实验分析与心得体会】通过此次实验,使我初步学会了实验电路箱的用法,更好的了解了8254及其实验箱电路连接方法,更好的把理论和实验相结合,认识到编程中还有很多不足,在今后的学习中需要改进。
个人认证
优秀文档
获得点赞 0