目录
一、实验目的与要求
掌握单片机系统中扩展外围芯片的方法,了解8255芯片的结构及编程方法。
二、实验原理
三、实验内容和步骤
用8255 PB口作输出口,模拟交通灯显示:
- 绿灯先显示约2s;
- 黄灯闪烁显示三次,间隔时间约0.5s;
- 红灯再显示约2s;
- 用8255 PA口作开关量输入口,PB口作输出口,实现PA口控制PB口。
- 用8芯线将8255 PA口接至开关Kl~K8,PB口接至发光二极管L1~L8;
- 运行程序HW06.ASM,拨动开关K1~K8,观察L1~L8发光二极管是否对应点亮
四、实验代码
#include<reg51.h>
#include<absacc.h>
#define uchar unsigned char
#define com8255 XBYTE[0xff2b] //8255控制口
#define pa8255 XBYTE[0xff28] //8255 PA口
#define pb8255 XBYTE[0xff29] //8255 PB口
//MON51必须用到的
code unsigned char stop[3] _at_ 0x3b;
uchar d1=0;
void delay(unsigned int i) //延时程序
{
unsigned int j,k;
for(k=0;k<i;k++)
for(j=0;j<1000;j++);
}
void main(void)
{
com8255=0x90;
d1=3;
pb8255=0xbb;
delay(600);
while(d1--)
{
pb8255=0x77;
delay(200);
pb8255=0xff;
delay(200);
}
pb8255=0xdd;
delay(600);
while(1)
{
pb8255 = pa8255;
}
}