近似)对称,其时常数CR115ms1953125μs768,需要采用16位的时常数表示。对于计数器2,工作方式只能选用方式2,其时常数CR2(3s15ms)15ms2001也需要采用16位的时常数表示。根据上面分析和题目给定的条件,可以画出8253的地址译码电路和连接图,如下图所示。
D15D88086CPU最大方式系统总线IORIOWA2A1A7A6A5A4A3RDWRA1A0512kHz5VD7
D0
I
tel8253
CLK1GATE1OUT1
A9A8BHE
ooo
CS
CLK2GATE2OUT2
5V产生信号
8253的初始化程序段如下:MOVDX307HMOVAL01110110BOUTDXALMOVDX303HMOVAX768OUTDXALXCHGALAH
;写计数器1方式控制字
;写计数器1时常数
5
fOUTDXALMOVDX307H;写计数器2方式控制字MOVAL10110100BOUTDXALMOVDX305H;写计数器2时常数MOVAX2001OUTDXALXCHGALAHOUTDXAL5、在8088最大方式系统中,有一片8255A,其端口地址为8000H8003H,编写完整的8086汇编语言程序,实现使端口A的低4位产生如图3所示的信号各个信号的节拍不必严格相等。分)(6
PA0PA1PA2PA3
图3端口A信号波形
解:为使8255A的端口A产生如图1016所示的信号,可以将端口A设定成方式0输出,端口B和C与本题无关,均设定为方式0输出。端口A低4位的波形为分频形式,因此,可以通过计数方式实现。完整的8086汇编语言程序如下:CODESEGMENTASSUMECSCODESTARTMOVDX26H;设定8255A的工作方式MOVAL10000000BOUTDXALMOVDX20H;产生指定的信号XORALALOUTDXALREP1MOVCX4REP2INCALOUTDXALLOOPREP2XORALALJMPREP1MOVAH4CH;返回DOS操作系统INT21HCODEENDSENDSTART
6
fr