【单片机】简单I/O口扩展

一、操作目的

(1)学习单片机系统中扩展简单I/O口的方法。
(2)学习数据输入输出程序的编制方法。

二、操作内容

利用74LS244作为输入口,读取开关状态,并将此状态,通过74LS273再驱动发光二极管显示出来。

三、程序框图

【单片机】简单I/O口扩展_#include

四、程序接线图

【单片机】简单I/O口扩展_#include_02

五、程序清单

#0FF80H
MOVX A,@DPTR ;取出244状态
MOV DPTR,#0FF90H

六、代码详解

#include <reg51.h>
#include <intrins.h>
#include <absacc.h>

#define uchar unsigned char
unsigned char code mon51[3] _at_ 0x3b; //保留0X3B开始三个程序空间作全速中断用
#define P244 XBYTE[0xff80]//实验8
#define P277 XBYTE[0xff90]//实验8
void delay(unsigned int i)
{
unsigned int j, k;
for (k = 0; k < i; k++)
for (j = 0; j < 1000; j++)
;
}
void main(void)
{
while (1)
{
P277 = P244;
}
}