/******************************************************************** 
                            佳和科技 
*********************************************************************/ 
//实例5:从上到的下流水灯:认识左移 
 
#include<reg52.h>                 //包含单片机寄存器的头文件 
#define uchar unsigned char//宏定义无符号字符型 
#define uint unsigned int  //宏定义无符号整型 
 
 
/******************************************************************** 
                            初始定义 
*********************************************************************/ 
uchar temp;           //定义字符型变量 
uchar a,b,i; 
 
 
/******************************************************************** 
                            延时函数 
*********************************************************************/ 
void delay()//延时程序 
{ 
        uchar m,n,s; 
        for(m=20;m>0;m--) 
        for(n=20;n>0;n--) 
        for(s=248;s>0;s--); 
} 
 
 
/******************************************************************** 
                            主函数 
*********************************************************************/ 
void main() 
{ 
        temp=0xfe; //11111110定义每次一个灯亮 
        while(1)   //无限循环 
        { 
                P0=temp;//直接对P0口赋值,使批输出低电平。 
                delay();//延时 
                for(i=1;i<8;i++)//实现广告灯的从右到左移动 
                        { 
                                a=temp<<i;                //左移i位 
                                P0=a;//相与求值 
                                delay(); 
                        } 
        } 
}         
         
/******************************************************************** 
                              结束 
*********************************************************************/ 
 
 
 
 
 
 |