资源描述:
《微机原理与接口技术(楼顺天)-第9章2.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、本教案内容第9章定时/计数器8253应用设计8253的引脚功能及特点8253的原理结构及工作原理8253的控制字及工作方式8253与系统总线的接口方法8253的应用设计在采用8253进行定时/计数器设计时,首先应该将它与CPU正确连接,在已经设计好8086系统总线情况下,可以直接利用系统总线中的信号与8253连接。这里给出三种系统总线情况下8253的连接方法:8086的最小方式8086的最大方式IBMPC系统机。8253与系统总线的接口方法8253与系统总线的接口方法图8086最小方式系统总线与8253的连接框图在8
2、086最小方式总线下,系统总线与8253连接框图如右图所示。图中译码电路根据给定的8253端口地址确定,这里和A0均为低电平有效,而且约定采用A2、A1作为8253的内部地址线。图中给出使用偶地址的情况,当采用奇地址时,只需要将图中的地址信号A0换成,并且将8086总线的D7~D0换成D15~D8。图8086最大方式系统总线与8253的连接框图在8086最大方式总线下,系统总线与8253连接框图如图9.15所示。与图9.14类似,只是将读写信号变成为和。图中给出使用偶地址的情况,当采用奇地址时,只需要将图中的地址信号
3、A0换成,并且将8086总线的D7~D0换成D15~D8。8253与系统总线的接口方法在IBMPC机系统中,采用8088的最大方式,而且由于系统中包含DMA机构,因此,设计端口和存储器的译码电路时,必须是非DMA操作模式,即AEN=0,这样,IBMPC机系统总线与8253连接框图如右图所示。应该注意,系统的数据总线只有8位,故没有信号。图IBMPC机系统总线与8253的连接框图8253与系统总线的接口方法8253的应用设计例9.1在以8086构成的最大方式系统中,有一片8254的端口地址分别为301H、303H、30
4、5H和307H,给定的外部时钟为512kHz。要求:(1)利用计数器0产生周期为1ms的周期信号,请编写初始化程序;利用这一计数器能产生的最低信号频率为,这时的时常数CR0=。(2)利用计数器1和2产生如下图所示的周期信号,并编写初始化程序。(3)画出8253的端口译码电路(地址线只使用A0~A9)及其连接图。图8253所要产生的周期信号解:设给定的外部时钟为CLK,其周期T=1/512kHz=1.953125μs。(1)为了得到1ms的周期信号,因此计数器0应该采用方式2或方式3,其时常数CR0=1ms/1.953
5、125μs=512。利用这个计数器分频时,其最大的分频次数为62256,这时得到最低的频率为512kHz/62256,即约为8.22Hz。(2)为了产生如图9.17所示的周期信号,应该采用方式2,但在方式2下,其低电平时间仅为一个时钟周期,因此,利用一个计数通道无法实现这个任务。现在采用计数器1和计数器2联合,先利用计数器1产生周期为1.5ms的周期信号,然后将输出OUT1信号作为计数器2的时钟输入CLK2,这样可以实现题目的要求。对于计数器1,工作方式可以选用方式2或方式3,一般采用方式3,这样可以使产生的信号(近
6、似)对称,其时常数CR1=1.5ms/1.953125μs=768,需要采用16位的时常数表示。对于计数器2,工作方式只能选用方式2,其时常数CR2=(3s+1.5ms)/1.5ms=3001,也需要采用16位的时常数表示。8253的应用设计8253的应用设计8253的初始化程序段如下:MOVDX,307H;写计数器1方式控制字MOVAL,01110110BOUTDX,ALMOVDX,303H;写计数器1时常数MOVAX,768OUTDX,ALXCHGAL,AHOUTDX,ALMOVDX,307H;写计数器2方式控制
7、字MOVAL,10110100BOUTDX,ALMOVDX,305H;写计数器2时常数MOVAX,3001OUTDX,ALXCHGAL,AHOUTDX,AL(3)根据上面分析和题目给定的条件,可以画出8253的地址译码电路和连接图,如下图所示。8253的应用设计图9.188253的地址译码电路及其连接图8253的应用设计例9.2设8253的端口地址为260H~263H,外部时钟信号为1MHz,要求产生如下图所示的周期波形,画出8253的连接图,并编写初始化程序段。图8253所要产生的周期信号解:本题仅采用8253的三
8、个计数通道来实现。分两步实现:(1)由于要产生周期信号,因此必定包含方式2或方式3,我们采用方式3产生周期为1s+12ms=1012ms的方波信号,题目给定的外部时钟为1MHz,这时需要的分频系数(即时常数)为:1012ms/1μs=1012000,显然,通过一个计数通道无法实现,所以,采用计数器0和计数器1联合产生,CR0=1000,CR1=