自动控制网移动版

自动控制网 > 自动化 > 单片机 >

8031单片机和8255A的接口设计

1.硬件电路

如图1所示是8031单片机扩展一片8255A的电路图。图中74LS373是地址锁存器。8255A的地址线Al、A0经74LS373接于P0.1、P0.0;片选CS经74LS373与P0.7接通,其他地址线悬空;8255A的控制线RD、WR直接接于8031的RD、WR端;数据线D0一D7 接于P0.0—P0.7.

2.8255A 地址口确定

图1中8255A只有3根线接于地址线。片选CS、地址选择端Al、A0。分别接于P0.7 、P0.1、P0.0其他地址线全悬空。显然只要保证P0.7为低电平时,选中该8255,若P0.1、P0.0再为“00”选中8255A的A口,同理P0.1、P0.0为“0l”、“10”、“11”分别选中B口、C口及控制口。若地址用16位表示,其他无用端全设为“1”,则 8255A 的A、B、C及控制口地址分别可为FF7CH、FF7DH、FF7EH、FF7FH

如果无用位取为“0”,则4个地址为0000H 、0001H、0002、0003H,只要保证CS、Al、A0的状态,无用位设为“0”或“1”无关。掌握了确定地址的方法,使用者可灵活选择地址。

图1  8031与8255A接口电路

3.软件编程

在实际的应用系统中,必须根据外围设备的类型选择8255A的操作方式,并在初始化程序中把相应控制字写人控制口。下面根据图1,举例说明 8255A 的编程方法。

例  要求 8255A 工作方式0,且A口作为输入,B 口、C口作为输出,则程序如下:

MOV A,#90H                 ;A口作为输入,B 口、C口作为输出

MOV DPTR,#0FF7FH           ;控制寄存器地址

MOVX @DPTR,A               ;写入方式控制字

MOV DPTR,#0FF7CH           ;A口地址

MOVX A,@DPTR           ;从A口读数据

MOV DPTR,#0FF7DH           ;B口地址

MOV A,#DATA1H              ;要输出的数据DATA1

MOVX @DPTR,A               ;将DATA1送B口输出

MOV DPTR,#0FF7EH           ;C口地址

MOV A,#DATA2H              ;DATA1

MOVX @DPTR,A               ;将DATA2送C口输出

    本文已影响
    最近关注
    0基础免费学PLC,扫描观看

    扫描上方二维码免费观看PLC视频课程