AT89S51单片机与82C55的接口设计编程
1.硬件接口电路
下图所示为AT89S51单片机扩展一片82C55的电路图 。图中,74LS373是地址锁存器,P0.1、P0.0经74LS373与82C55的地址线A1、A0连接;P0.7经74LS373与片选端CS相连,其他地址线悬空;82C55的控制线RD(的反)、WR(的反)直接与AT89S51单片机的RD(的反)和WR(的反)端相连;AT89S51单片机的数据总线P0.0~P0.7与82C55的数据线D0~D7连接 。
2.确定82C55端口地址
图中82C55只有3条线与AT89S51单片机的地址线相接,片选端CS、端口地址选择端Al、A0,分别接于P0.7、P0.1和P0.0,其他地址线全悬空 。显然只要保证PO.7为低电平时,即可选中82C55;若P0.1、P0.0再为00,则选中82C55的PA口 。同理P0.1、P0.0为01、10、11分别选中PB口、PC口及控制口 。
若端口地址用16位表示,其他无用端全设为1(也可把无用端全设为0),则82C55的A、B、C及控制口地址分别为FF7CH、FF7DH、FF7EH、FF7FH 。
如果没有用到的位取0,则4个端口地址分别为0000H、0001H、0002H、0003H,只要保证CS、A1、A0的状态,无用位设为0或l均可 。
3.软件编程
在实际应用设计中,必须根据外部设备的类型选择82C55的操作方式,并在初始化程序中把相应控制字写入控制口 。下面根据上图所示,介绍对82C55进行操作的编程 。
例1:要求82C55工作在方式O,且PA口作为输入,PB口、PC口作为输出,则程序如下:
【AT89S51单片机与82C55的接口设计编程】例2:对端口PC的置位/复位 。
82C55的PC口8位中的任意一位,均可用指令来置位或复位 。例如,如果想把PC口的PC5置1,相应的控制字为00001011B-0BH 。程序如下:
如果想把PC口的PC5复位,相应的控制字00001010B-0AH,程序如下:
82C55接口芯片在AT89S51单片机应用系统中广泛用于与各种外部数字设备的连接,如打印机、键盘、显示器以及作为数字信息的输入、输出接口 。
推荐阅读
- 居室装修与装饰的区别是什么?
- 分手后,十二星座能与上一任复合的几率是多少,天蝎打死不回头
- mlily记忆枕品质分析与精选
- 保险柜品牌推荐与精选
- 恒逸床垫品质与特点剖析
- 折帘搭配技巧 折帘搭清洗与保养方法
- 铁樟木地板性能与价格分析
- 关于单片机内部结构原理,你知道吗?
- 揭秘弹簧床垫品牌汇总与价格
- 防静电窗帘选购方法 防静电窗帘清洁与保养方法