当前位置:   article > 正文

实验七:定时/计数器8253、8254_8253定时器计数器实验

8253定时器计数器实验

已知8253的两个计数器CLK0=1MHZ,CLK1=1KHZ,现系统要求8253的OUT1产生0.1s的定时方波信号。
(1):应如何实现?
(2):说明两个计数器的工作方式并计算计数初值
(3):编写初始化程序(8253的端口地址80H-83H,均采用二进制计数)

在这里插入图片描述
在这里插入图片描述



CLK0(通道0)

输入信号:1MHz
输出信号:1KHz
分频系数:1MHz/1KHz=1000

工作方式:方式2(分频器方式)或方式3(方波发生器

       D7、D6通道0,所以是00

       D5、D4既写计数器低8位,又写计数器高8位,所以是11

       D3、D2、D1工作方式的选择:如果是方式2,则为010.如果是方式3,则为011。
       D0二进制计数:0。



方式2:

D7D6D5D4D3D2D1D0
00110100

方式3:

D7D6D5D4D3D2D1D0
00110110

通道0的初始化:
                    1、写控制字
                    2、计数初值

控制字:0011 0100B=34H

MOV AL,34H
OUT 83H,AL	;将控制字写入控制端口进行初始化

MOV AX,1000	;将计数初值放入AX,然后out到80H端口
OUT 80H,AL	;将低八位out出去

MOV AL,AH
OUT 80H,AL	;将高八位out出去

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

控制字:0011 0110B=36H

MOV AL,36H
OUT 83H,AL	;将控制字写入控制端口进行初始化

MOV AX,1000	;将计数初值放入AX,然后out到80H端口
OUT 80H,AL	;将低八位out出去

MOV AL,AH
OUT 80H,AL	;将高八位out出去

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9












CLK1(通道1)
输出信号:10Hz
输入信号:1KHz
分频系数:1MHz/1KHz=1000
T=0.1s,f=10Hz
由题可知:OUT1产生0.1s的定时方波信号所以,选择方式3(方波发生器)。



       D7、D6通道1,所以是01

       D5、D4既写计数器低8位,又写计数器高8位,所以是11

       D3、D2、D1工作方式的选择:方式3,为011。

       D0二进制计数:0。

D7D6D5D4D3D2D1D0
01110110

通道1的初始化:
                    1、写控制字
                    2、计数初值

控制字:0111 0110B=76H

MOV AL,76H	;将控制字写入控制端口进行初始化
OUT 83H,AL	

MOV AX,100	;把它的低八位通过81端口写出去,通道1的端口地址是81H。
OUT 81H,AL

MOV AL,AH
OUT 81H,AL	;把AH中的高8位放回到AL里边,一样的办法送到81H端口去
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8












实验目的

练习定时计数器8254的使用。尤其是方式2、方式3分频器的使用。
练习分频系数比较大的处理方法。

实验内容

要求:使用8254产生频率为1Hz的信号,驱动发光二极管亮灭闪烁。
已知:8254控制寄存器地址:283H
         计数器通道0地址:280H
         计数器通道1地址:281H

分析:

CLK0连接时钟1MHz,要使输出信号为1Hz,需要100 0000分频,而计数寄存器最多为16位的值,也就是最多65536分频,做不到106分频这么多。所以使用两个计数通道接续分频

首先:
通道0方式2初值可以取1000,产生1KHz的方波信号
然后:
将1KHz的输出接入通道1的CLK1端,再使用初值1000,产生分频后的输出就是1Hz。

在这里插入图片描述
硬件电路连接:

8254的CS----------- 280H
      CLK0--------- 1MHz
      GATE0-------- +5v
      OUT0--------- CLK1
      GATE1-------- +5v
      OUT1--------- L0

在这里插入图片描述


在这里插入图片描述

报告要求

1、写出8253的几个控制字及其意义。
在这里插入图片描述
2、介绍8253的方式2和方式3的使用原理。通过图来表示,并加以说明。


3、写出该实验中分频结果的计算步骤。
分频系数:1MHz/1KHz=1000Hz,1KHz/1000Hz=1Hz。
4、写出程序并适当加注释。

data segment
    pkey db "press any key...$"
ends

stack segment
    dw   128  dup(0)
ends

code segment
	ASSUME CS:code,DS:data
start:
 CLK0:
	MOV AL,34H		   ;将控制字34H写入283H这个控制端口
	MOV DX,283h
	OUT DX,AL          

	MOV AX,1000		   ;将计数初值放入AX,out到280H这个端口
	MOV DX,280H		   
	OUT DX,AL		   ;计数初值先写低八位后写高八位
	
	MOV AL,AH         ;把AH中的高8位放回到AL里边
	OUT DX,AL
CLK1:
	MOV AL,76H		  ;将控制字76H写入283H这个控制端口
	MOV DX,283H
	OUT DX,AL

	MOV AX,1000		  ;将计数初值放入AX,out到281H这个端口
	MOV DX,281H
	OUT DX,AL		  ;计数初值先写低八位后写高八位
	
	MOV AL,AH		  ;把AH中的高8位放回到AL里边
	OUT DX,AL
ends
end start 

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/725224
推荐阅读
相关标签
  

闽ICP备14008679号