打印
[DemoCode下载]

实现横排流水灯和竖排流水灯效果的C51程序

[复制链接]
793|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
芙蓉洞|  楼主 | 2015-12-5 20:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
任务:1、横排流水2、竖排流水3、斜排流水1、横排流水  源程序:/*******************************************************************************作者:刘海涛版本:第一次日期:2010年7月23日描叙:流水灯 顺序P0、P1、P2、P3先后从0到7bit*******************************************************************************/
/**********************************头文件**************************************/
#include"reg52.h"
/******************************************************************************/


/*******************************************************************************
函数名:delay(),延时函数。
宏定义:无
输  入:无
输  出:无
*******************************************************************************/
delay(unsigned int dat)   //函数定义
{
unsigned int i,j;
for(i=0;i<=dat;i++)
   {
    for(j=0;j<=20000;j++);
   }
}

void main(void)     //主函数
{
unsigned char i;
while(1)     //循环
{
  for(i=0;i<8;i++)
  {  
   P0=0x01<<i;
   delay(100);
  }
      for(i=0;i<8;i++)
  {  
   P1=0x01<<i;
   delay(100);
  }      
  for(i=0;i<8;i++)
  {  
   P2=0x01<<i;
   delay(100);
  }      
  for(i=0;i<8;i++)
  {  
   P3=0x01<<i;
   delay(100);
  }      
}
}





沙发
芙蓉洞|  楼主 | 2015-12-5 20:51 | 只看该作者
2、竖排流水  源程序:/*******************************************************************************作者:刘海涛版本:第一次日期:2010年7月23日描叙:流水灯,竖着走,即P0到P3循环依次走1 bit******************************************************************************/
/******************************************************************************/
#include"reg52.h"
/******************************************************************************/
/*******************************************************************************
函数名:delay(),延时函数
宏定义:无
输入:无
输出:无
******************************************************************************/
delay(unsigned int dat)   //延时函数定义
{
unsigned int i,j;
for(i=0;i<=dat;i++)
{
  for(j=0;j<=20000;j++);
}

}
void main(void)     //主函数
{
unsigned char i;
while(1)
{
  for(i=0;i<=7;i++)
  {
  P0=0x01<<i;
  delay(100);

  P1=0x01<<i;
  delay(100);

  P2=0x01<<i;
  delay(100);

  P3=0x01<<i;
  delay(100);
  }
}
}





使用特权

评论回复
板凳
芙蓉洞|  楼主 | 2015-12-5 20:53 | 只看该作者
3、斜流水 源程序:

/*******************************************************************************
作者:刘海涛
版本:第一次
日期:2010年7月23日
描叙:流水灯,斜着走
*******************************************************************************/
/**********************************头文件**************************************/
#include"reg52.h"
/******************************************************************************/

/*******************************************************************************
函数名:delay(),延时函数。
输入:无
输出:无
宏定义:无
*******************************************************************************/
delay(unsigned int dat)
{
unsigned int i,j;
for(i=0;i<dat;i++)
{
  for(j=0;j<20000;j++);
}
}

void main(void)
{
unsigned int i,a,b,c;

while(1)
{
for(i=0;i<=7;i++)
  {
   
   P0=0x01<<i;
   delay(100);
   a=i+1;
   if(a>=8)
    {
        a=i-8;
   }
   
   P1=0x01<<a;
   delay(100);
   b=i+2;
   if(b>=8)
    {
   b=b-8;
   }
      P2=0x01<<b;
   delay(100);
   c=i+3;
      if(c>=8)
    {
   c=c-8;
   }
   P3=0x01<<c;
   delay(100);
  }
     }
  
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

398

帖子

3

粉丝