单片机实训项目一《点亮第一个LED灯》
stc89c52
#include <reg52.h>
sbit p1 = P1^0;
sbit p2 = P1^1;
sbit p3 = P1^2;
sbit p4 = P1^3;
sbit p5 = P1^4;
sbit p6 = P1^5;
sbit p7 = P1^6;
sbit p8 = P1^7;
//control the light or distinction of a led
//led_num: the index of 8 leds
//cmd: 1 stands for distinction, 0 stands for light
void led_control(int led_num, int cmd)
{
P1=0xff;
if(led_num == 1)
{
p1 = cmd;
}
if(led_num == 2)
{
p2 = cmd;
}
if(led_num == 3)
{
p3 = cmd;
}
if(led_num == 4)
{
p4 = cmd;
}
if(led_num == 5)
{
p5 = cmd;
}
if(led_num == 6)
{
p6 = cmd;
}
if(led_num == 7)
{
p7 = cmd;
}
if(led_num == 8)
{
p8 = cmd;
}
}
//function delay
void delay(int n)
{
while(n--)
{
;
}
}
void main()
{
int n=556677;
while(1)
{
int i = 1;
int cmd = 1;
for(;i<=8;i++)
{
led_control(i,!cmd);
delay(n);
led_control(i,cmd);
}
}
}