1.点亮第一个LED灯,LED1常亮。
#include <REG51.h> //51专属头文件
sbit LED=P2^0; //51专属关键字 sbit 定义位
int main()
{
while(1) //循环体
{
LED=0; //即P2^1为高电平,LED点亮
}
return 0;
}
2.流水灯?
#include <REG51.h> //51专属头文件
#include <public.h> //延时函数头文件
#define LED P2 //定义P2寄存器端口为LED
int main()
{
int i=0;
for(i=0;i<=8;i++) //循环体
{
LED=0xfe<<i; // 11111110 左移i位
delay_ms(200); //调用延时函数 200ms
if(i==8)
i=0;
}
return 0;
}
3.流水灯
#include <REG51.h> //51专属头文件
#include <public.h> //延时函数头文件
#define LED P2 //定义P2寄存器端口为LED
int main()
{
int i=0;
for(i=0;i<=8;i++) //循环体
{
LED=~(0xff<<i); // 11111111左移取反
delay_ms(200); //调用延时函数 200ms
if(i==8)
i=-1; //i=-1抵消之后循环中直接i++
}
return 0;
}
4.单灯流水
#include <REG51.h> //51专属头文件
#include <public.h> //延时函数头文件
#define LED P2 //定义P2寄存器端口为LED
int main()
{
int i=0;
for(i=0;i<=8;i++) //循环体
{
LED=~(0x01<<i); // 00000000左移取反
delay_ms(200); //调用延时函数 200ms
if(i==8)
i=-1; //i=-1抵消之后循环中直接i++
}
return 0;
}
5.间隔闪烁 10101010
#include <REG51.h> //51专属头文件
#include <public.h> //延时函数头文件
#define LED P2 //定义P2寄存器端口为LED
int main()
{ LED=0xAA;
while(1)
{
delay_ms(200);
LED=~LED; //取反
}
return 0;
}
6.开火车? ?001110000? ?循环移动??
#include <REG51.h> //51专属头文件
#include <public.h> //延时函数头文件
#include <intrins.h>
#define LED P2 //定义P2寄存器端口为LED
int main()
{
LED=0xc7;
while(1)
{
LED= _crol_ (LED,1);
delay_ms(200);
}
return 0;
}
|