实验内容:51单片机的PX(x=0,1,2或3)端口作为输出口,分别与8个发光二极管相连,通过编写程序,循环将端口置“1”或清“0”,不断向发光二极管输送高低电平,实现流水灯的效果。
工具:proteus+keil
#include<reg51.h>
void delay()//延时函数
{
unsigned char i,j;
for(i=0;i<250;i++)
for(j=0;j<250;j++)
;
}
void main()
{
while(1)
{
P0=0xfe;
delay();
P0=0xfd;
delay();
P0=0xfb;
delay();
P0=0xf7;
delay();
P0=0xef;
delay();
P0=0xdf;
delay();
P0=0xbf;
delay();
P0=0x7f;
delay();//每次点亮后延时一段时间再赋新的8位指令
}
}
仿真实验一 I/O实验
1. 基本要求:
在Wave/Keil中进行软件编程,完成51单片机的端口控制仿真实验,结合发光二极管,实现流水灯效果,在Proteus中搭建硬件电路验证编程结果。
(1).实验目的
掌握51单片机端口使用的基本知识;
掌握51单片机端口控制方法,编程实现发光二极管的交替闪烁。
(2).实验要求
51单片机的PX(x=0,1,2或3)端口作为输出口,分别与8个发光二极管相连,通过编写程序,循环将端口置“1”或清“0”,不断向发光二极管输送高低电平,实现流水灯的效果。