#define的使用:
#define A P0 例如#define pi 3.14
循環左移和右移函數:
均包含在intrins.h庫函數中
即要寫出
#include<intrins.h>
_crol_(a,b);//左移
_cror_(a,b);//右移
a是移動的值,b是移動的位數
程序如下:
#include<reg51.h>
#include<intrins.h>
typedef unsigned char u8;
typedef unsigned int u16;
#define led P2
void delay(u16 i)//延時函數
{
while(i--);
}
void main()
{
u8 i=0;//定義i爲無符號字符型(由於下面使用的i爲0到7定義其爲8位即可)
led=0xfe;//給LED一個初始狀態,0xfe爲十六進制,1111 1110
delay(50000);//延時450ms
while(1)
{
for(i=0;i<7;i++)//左移七次,注意是七次
{
led=_crol_(led,1);//led爲移動的值,1是移動位數
delay(50000);//如果不加延時,幾乎看不出移動過程
}
for(i=0;i<7;i++)//移動到0111 1111後右移七次
{
led=_cror_(led,1);
delay(50000);
}
}
}
可以通過移動位數,方向的改變,來實現多種形式的流水燈。