可编程计数器定时器8253及其应用教学课件.pptVIP

  • 3
  • 0
  • 约5.97千字
  • 约 29页
  • 2024-09-19 发布于四川
  • 举报

可编程计数器定时器8253及其应用教学课件.ppt

第八章可编程计数器/定时器8253及其应用计算机系统中,实现定时或延时有三种方法:软件定时如延时子程序不可编程的硬件定时可编程的硬件定时器如RC单稳态电路、555芯片延时8253为可编程的硬件定时器。计数器/定时器的主要用途中断信号输出精确的定时信号波特率发生器实现延迟

可编程硬件计数/定时器外设计数/定时脉冲CLKCPU预置值减1计数器判零CPU外设OUT一、8253的内部结构1.主要功能具有3个独立的16位计数器通道;每个计数器均可按二进制或二—十进制计数;每个计数器的计数速率高达2MHz;每个通道有6种工作方式,可由程序设置和改变所有的输入输出电平都与TTL兼容。

2、8253的内部结构线总据数部内三个独立的16位减1计数器。CLK0GATE0OUT0CLK计数/定时脉冲计数器:由外设提供的计数脉冲。数据总线缓冲器计数器0D7~D0定时器:时钟脉冲GATE门控信号实现对CLK输入时,减1CLK1GATE1OUT1RDWRA0读/写计数器1逻辑A1计数器是否工作的控制。CS其控制关系由不同工作方式确定。CLK2GATE2控制字寄存器计数器2OUT2OUT输出信号减1计数器为0时的输出信号可以用于对外部控制,也可用于向CPU申请中断。8253内部结构

计数器计数过程通过编程对计数器预置一个初值n。如果门控信号GATE允许,计数器对CLK输入的脉冲进行减1计数(二进制/十进制)。当计数器的值减为0时从OUT端输出一个脉冲信号。定时器计数过程通过编程对定时器预置一个初值n。CLK端输入定时脉冲,定时脉冲周期为tC。如果门控信号GATE允许,定时器对CLK输入的脉冲进行减1计数(二进制/十进制)。当计数器的值减为0时从OUT端输出一个脉冲信号。定时时间=n?tC最小定时时间预置值n=1,最大定时时间预置值n=nF=F00F0F0HH。

数据总线缓冲器线总据数部内CLK0GATE0OUT0数据总线缓冲器计数器0DBD7~D0CPU8253CLK1GATE1OUT1RDWRA0读/写计数器1写8253控制字逻辑A1写某通道预置值读某通道计数值CSCLK2GATE2控制字寄存器计数器2OUT28253内部结构控制字寄存器(存放控制字)

读写逻辑线总据数部内CS、A1、A0CLK0GATE0OUT0数据总线缓冲器计数器0选择4个片内寄存器D7~D0RD、WR控制对4个片内寄存器读、写控制CLK1GATE1OUT1RDWRA0读/写计数器1逻辑A1CSA15~A2A1A0端口CLK2GATE2控制字寄存器计数器200通道0计数器01通道1计数器10通道2计数器OUT2系统端口译码8253内部结构11控制口控制字寄存器

控制字寄存器在8253的初始化编程中,由CPU向8253的控制字寄存器写入一个控制字来设置8253的工作方式。D7D6D5D4D3D2D1D0SCSCRLRLMMMBCD1010210计数器读/写格式工作方式数制00选择计数器001选择计数器110选择计数器111非法选择0二进制000方式01BCD001方式1X10方式2X11方式3100方式4101方式500计数器锁存命令10只读/写计数器高字节(高八位)01只读/写计数器低字节(低八位)11先读/写低字节,后读/写高字节

二、初始化编程和门控信号1、初始化编程先写低8位,再写高8位初始化编程的步骤:(1)写入控制字(2)写入计数器初值例:8253三个计数器端口的地址分别为3F0H、3F2H、3F4H,控制字寄存器的端口地址为3F6H,要求通道0工作于方式3,写入的初值为n=1234H。编写初始化程序。控制字D7D6D5D4D3D2D1D0SCSCRLRLMMMBCD1010210计数器读/写格式工作方式数制00110111

初始化程序流程可以写一个完整的计数器,也可先写所有计数器控制字,再写入初值写控制字写计数值低8位*写计数值高8位非必须

MOVALMOVDX,3F6HOUTDX,ALMOVAL,34HMOVDX,3F0HOUTDX,ALMOVAL,12HOUTDX,AL

2、门控信号的控制功能GATE为低点平或下降沿GATE为上升沿GATE为高点平工作方式方式0禁止计数---允许计数从预初值开始计数。计数计数为0,输出变低电平方式1------方式2方式3禁止计数使输出变高从预置初值开始计数允许计数方式4方式5禁止计数---允许计数从预置初值开始计数------

三、8253的工作方式1.方式0工作方式N与输出波形关系

文档评论(0)

1亿VIP精品文档

相关文档