位置:51电子网 » 技术资料 » 其它综合

可编程定时/计数器8253在扬声器中的应用

发布时间:2008/6/3 0:00:00 访问次数:300

定时/计数器都有定时或对外部事件计数的功能。通常,定时/计数器归纳起来一般有3种类型:

硬件计数器 可在简单软件控制下计数,特点是成本低,使用方便,但是专用性强,使用不广泛。

软件定时/计数器 特点是几乎没有硬件费用,但他占用cpu的运行时间,降低了cpu的工作效率。

可编程定时/计数器 特点是工作灵活,而且不占用cpu的运行时问,缺点是成本较高。其中可编程定时/计数器8253是一种使用较为普遍的可编程定时/计数器。

可编程定时/计数器8253通过软件设定,可以产生各种时间延迟信号,他的使用非常广泛,通常被用于定时控制、延时、计数等场合,如定时刷新ram、系统时钟的计时、扬声器的发音长短的控制。在使用的时候,需要进行严密的计算和精确的测试,以满足不同的要求。

l 可编程定时/计数器8253的工作原理

可编程定时/计数器8253是nmos工艺制成的大规模集成电路,通过简单编程可实现不同的功能,图1为可编程定时/计数器8253的基本原理图。

从图1可以看出,芯片内有3个独立的计数器,分别为计数器0,计数器1,计数器2,每一个计数器都是16位的,可以分别对他们设定工作方式(通过控制字设定)。

图2为封装后的8253引脚图。

可编程定时/计数器8253可以应用在两种情况下:定时、计数。当用作定时器时,可以循环计数,信号来源一般为系统本身;当用作计数器时,信号来源一般为系统文件。在扬声器驱动系统中,可编程定时/计数器8253是作定时器来使用的。

图2中对应引脚的含义如下:

clk0,clk1,clk2:对应计数器的时钟输入。

gate0,gate1,gate2:对应计数器输出信号。

out0,out1,out2:对应计数器输出信号。

rd:读信号。低电平有效,读出计数器的计数值送入缓冲器。

wr:写信号。低电平有效,接收由缓冲器送来的数据。

cs:片选信号。低电平有效。只有在cs信号低电平时8253才能产生读写操作,否则不会读写。

a1~a0:对3个计数器和1个控制寄存器端口进行寻址。

d7~d0:方式控制字。可编程定时/计数器能正确工作与否,与方式控制字密切相关。方式控制字格式如下:

方式控制字对应位的含义如表1所示。



vcc:+5 v电源。

gnd:接地引脚。

2 可编程定时/计数器8253在扬声器中的应用

扬声器驱动系统的硬件组成如图3所示。利用8253驱动扬声器发声是由系统插件上8255的外围电路来发出驱动信号的。如图3中的spk data和tim gatespk就是接在8255的输出端口上。其中tim gatespk控制8253定时器来驱动扬声器,spk data来控制扬声器的门电路。直接由门电路驱动发出的声音比较难听,通过滤波器滤掉杂波之后会更动听一些,所以最好如图3所示加一个滤波器。

(1)首先以流程图的方式说明使用扬声器发声的过程,如图4所示。

(2)可编程定时/计数器8253在扬声器中应用的编程。一般情况下,8255的输出端口地址为61h,分配给8253的控制口地址为46h,3个计数器端口地址分别为40h,42h,44h,让计数器2工作在模式3下,可使8253作为定时器驱动扬声器发声。

则编写程序如下:

定时/计数器都有定时或对外部事件计数的功能。通常,定时/计数器归纳起来一般有3种类型:

硬件计数器 可在简单软件控制下计数,特点是成本低,使用方便,但是专用性强,使用不广泛。

软件定时/计数器 特点是几乎没有硬件费用,但他占用cpu的运行时间,降低了cpu的工作效率。

可编程定时/计数器 特点是工作灵活,而且不占用cpu的运行时问,缺点是成本较高。其中可编程定时/计数器8253是一种使用较为普遍的可编程定时/计数器。

可编程定时/计数器8253通过软件设定,可以产生各种时间延迟信号,他的使用非常广泛,通常被用于定时控制、延时、计数等场合,如定时刷新ram、系统时钟的计时、扬声器的发音长短的控制。在使用的时候,需要进行严密的计算和精确的测试,以满足不同的要求。

l 可编程定时/计数器8253的工作原理

可编程定时/计数器8253是nmos工艺制成的大规模集成电路,通过简单编程可实现不同的功能,图1为可编程定时/计数器8253的基本原理图。

从图1可以看出,芯片内有3个独立的计数器,分别为计数器0,计数器1,计数器2,每一个计数器都是16位的,可以分别对他们设定工作方式(通过控制字设定)。

图2为封装后的8253引脚图。

可编程定时/计数器8253可以应用在两种情况下:定时、计数。当用作定时器时,可以循环计数,信号来源一般为系统本身;当用作计数器时,信号来源一般为系统文件。在扬声器驱动系统中,可编程定时/计数器8253是作定时器来使用的。

图2中对应引脚的含义如下:

clk0,clk1,clk2:对应计数器的时钟输入。

gate0,gate1,gate2:对应计数器输出信号。

out0,out1,out2:对应计数器输出信号。

rd:读信号。低电平有效,读出计数器的计数值送入缓冲器。

wr:写信号。低电平有效,接收由缓冲器送来的数据。

cs:片选信号。低电平有效。只有在cs信号低电平时8253才能产生读写操作,否则不会读写。

a1~a0:对3个计数器和1个控制寄存器端口进行寻址。

d7~d0:方式控制字。可编程定时/计数器能正确工作与否,与方式控制字密切相关。方式控制字格式如下:

方式控制字对应位的含义如表1所示。



vcc:+5 v电源。

gnd:接地引脚。

2 可编程定时/计数器8253在扬声器中的应用

扬声器驱动系统的硬件组成如图3所示。利用8253驱动扬声器发声是由系统插件上8255的外围电路来发出驱动信号的。如图3中的spk data和tim gatespk就是接在8255的输出端口上。其中tim gatespk控制8253定时器来驱动扬声器,spk data来控制扬声器的门电路。直接由门电路驱动发出的声音比较难听,通过滤波器滤掉杂波之后会更动听一些,所以最好如图3所示加一个滤波器。

(1)首先以流程图的方式说明使用扬声器发声的过程,如图4所示。

(2)可编程定时/计数器8253在扬声器中应用的编程。一般情况下,8255的输出端口地址为61h,分配给8253的控制口地址为46h,3个计数器端口地址分别为40h,42h,44h,让计数器2工作在模式3下,可使8253作为定时器驱动扬声器发声。

则编写程序如下:

-->
相关IC型号
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!