一、 实验内容
8个发光二极管D1~D8分别接在单片机P0.0-P0.7端口上,一个开关接在P3.0上。要求输出端口输出“0”时,发光二极管亮。开关闭合时,开始按P0.0+P0.7、P0.1+P0.6、P0.2+P0.5、P0.3+P0.4的顺序依次点亮LED,再按P0.3+P0.4、P0.2+P0.5、P0.1+P0.6、P0.0+P0.7的顺序点亮LED,重复循环。开关断开时,立刻停止点亮指示灯。
二、 实验目的
掌握80C51单片机输入输出接口使用方法
学会开关量输入输出控制的接口技术及编程方法
三、 实验设备
DELL台式机 + proteus版本6 + keilC51版本7
四、 实验电路图(可打印)
五、 程序流程图
六、程序源码(可打印)
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
Sbit p3_0=p3^0;
Void delayMs(uint x)
{
While(x--);
}
Void main()
{
Uchar I;
Uchar pattern[10]={0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xdb,0xbd,ox7e,0xff};
While(1){
P3_0=1; //开关打开
While(p3_0==0) //开关闭合
{
For(i=0;i<10;i++)
{
P0=pattern[i];
delayMs(100);
}
}
}
}