background image

实验一、

LED 灯的闪烁控制实验

一、实验目的

1、学习单片机并行 I/O 端口的使用方法; 2、学习延时子程序的编写;3、学习 Keil 和

Proteus 软件的基本使用方法。

二、实验说明

1、P1 口为一组双向口,每位都可独立地定义为输入或输出线,在作输入线使用前,必

须向锁存器相应位写入

“1”,该位才能作为输入(即:P1=0xff)。

2、本实验中延时采用循环程序来实现, 入口参数控制延时时间长短。
3、实现发光二极管的闪烁控制。

三、实验内容及步骤

1、硬件原理图

2、源程序
//功能:控制一个信号灯闪烁程序
#include <reg51.h>    //包含头文件 REG51.H,定义了 MCS-51 单片机的特殊功能寄存器
sbit P1_0=P1^0;

//定义位名称

void delay(unsigned char i); //延时函数声明
void main()

//主函数

{
   while(1) {
     P1_0=0;

//点亮信号灯

     delay(10);

//调用延时函数,实际变量为 10

     P1_0=1;

//熄灭信号灯

     delay(10);

//调用延时函数,实际变量为 10

            }
}
//函数功能:实现软件延时