深 圳 大 学 实 验 报 告
课程名称: 微型计算机技术
实验项目名称: 8254定时器应用实验
学院: 信息工程学院
专业: 电子信息工程
指导教师: 周建华
报告人: 王 冰 学号:2012130218 班级: 2班
实验时间: 2014年6月18日
实验报告提交时间: 2014年6月23日
教务部制
一、实验目的与要求: 1. 掌握8254的工作方式及应用编程。 2. 掌握8254典型应用电路的接法。 二、实验设备与环境: PC机一台(Windows XP + Wmd86),TD-PITE实验装置或TD-PITC实验装置一套。 三、实验内容: 间隔定时器8254简介 8254是Intel公司生产的可编程间隔定时器。是8253的改进型,比8253具有更优良的性能。8254具有以下基本功能: (1)有3个独立的16位计数器。 (2)每个计数器可按二进制或十进制(BCD)计数。 (3)每个计数器可编程工作于6种不同工作方式。 (4)8254每个计数器允许的最高计数频率为10MHz(8253为2MHz)。 (5)8254有读回命令(8253没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。 (6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值公式为: n=fCLKi÷fOUTi、其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。 图4.27是8254的内部结构框图和引脚图,它是由与CPU的接口、内部控制电路和三个计数器组成。8254的工作方式如下述: (1)方式0:计数到0结束输出正跃变信号方式。 (2)方式1:硬件可重触发单稳方式。 (3)方式2:频率发生器方式。 (4)方式3:方波发生器。 (5)方式4:软件触发选通方式。 (6)方式5:硬件触发选通方式。 D[7:0]数据总线缓冲器计数器0CLK0GATE0OUT0内部总线RDWRA0A1CSR/W逻辑电路计数器1CLK1GATE1OUT1控制寄存器计数器2CLK2GATE2OUT2D7D6D5D4D3D2D1D0CLK0OUT0GATE0GND1234567891011128254242322212019181716151413VCCWRRDCSA1A0CLK2OUT2GATE2CLK1GATE1OUT1 图4.27 8254的内部接口和引脚 8254的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地
址,由标识位来区分。控制字格式如表4.3—4.5所示。 表4.3 8254的方式控制字格式 D7 D6 D5 D4 D3 D2 D1 计数器选择 00-计数器0 01-计数器1 10-计数器2 11-读出控制 字标志 读/写格式选择 00-锁存计数值 01-读/写低8位 10-读/写高8位 11-先读/写低8位 再读/写高8位 D0 工作方式选计数码制选择 择 000-方式0 001-方式1 010-方式2 011-方式3 100-方式4 101-方式5 0-二进制数 1-十进制数 D7 D6 1 1 D5 表4.4 8254读出控制字格式 D4 D3 D2 D1 D0 0-锁存计数0-锁存状态信计数器选择(同方式控制0 值 息 字) 表4.5 8254状态字格式 D6 D5 D4 D3 D2 D1 D0 D7 计数初值是否装OUT引脚现行状态 入 1-高电平 计数器方式(同方式控制字) 1-无效计数 0-低电平 0-计数有效 8254实验单元电路图如下图所示: D0D1D2D3D4D5D6D7CSRDWRA0A1876543212122231920D0D1D2D3D4D5D6D7CSRDWRA0A1OUT0GATE0CLK010119OUT0GATE0CLK04.7kOUT1GATE1CLK1131415OUT1GATE1CLK1VCC8254OUT2GATE2CLK2171618OUT2GATE2CLK28251-TRCLKVCCCLK1.8432MHz 图4.28 8254实验电路原理图
四、实验方法、步骤: 定时应用实验 编写程序,将8254的计数器0设置为方式3,用信号源1MHz作为CLK0时钟,OUT0为波形输出1ms方波。 实验步骤: (1)接线图如图4.30所示。 (2)根据实验内容,编写实验程序,经编译、链接无误后装入系统。 (3)运行实验程序,用示波器测试OUT0输出,验证程序功能。 XD0D04.7KVCCGATE0...系统总线XD7...D7CLK0XA1XA2A0A1OUT0IOW#IOR#IOY3WRRDCSCLK系统总线波形输出示波器测量8254单元 图4.30 8254定时应用实验接线图 实验程序清单(A82542.ASM)) A8254 EQU 06C0H B8254 EQU 06C2H C8254 EQU 06C4H CON8254 EQU 06C6H SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX, CON8254 ;8254 MOV AL, 36H ;计数器0,方式3 OUT DX, AL MOV DX, A8254 MOV AL, 0E8H OUT DX, AL MOV AL, 03H OUT DX, AL AA1: JMP AA1 CODE ENDS END START 五、实验结果及分析: 定时应用实验 程序A82541.ASM分析: A8254 EQU 06C0H B8254 EQU 06C2H
C8254 EQU 06C4H CON8254 EQU 06C6H SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX, CON8254 ;8254 MOV AL, 36H ;计数器0,方式3 OUT DX, AL MOV DX, A8254 MOV AL, 0E8H OUT DX, AL MOV AL, 03H OUT DX, AL AA1: JMP AA1 CODE ENDS END START 1.控制字写入“00110110”,D7、D6为“00”表示选择计数器0工作,D5、D4为“11”表示设定计数器初始计数值时先读写低8位后读写高8位,D3~D1为“011”表示计数器工作在方式3,D0=‘0’表示使用二进制计数; 2.计数器的初始计数写入04H,则为计数3次; 实验结果: 此图水平方向每个格子代表0.5ms,从图中可以看到方波周期小于1ms,估计原因有二: 1.示波器测量不准; 2.系统时钟不准。
六、实验结论: Intel 8254可编程间隔定时器,通过对其四个寄存器(包含一个8位控制字寄存器,三个各自与三个计数器对应的16位初始计数寄存器)的读写控制其工作模式。通过实验掌握其常用工作方式的特点及其之间的异同。 指导教师批阅意见: 成绩评定: 指导教师签字: 年 月 日 备注: 注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。 2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。