• 流水灯系列


    • 流水灯
    • 电路仿真图
    • /******************************
       项目名称:项目1彩灯控制器
       任务名称:任务3流水灯控制
       任务描述:P1口控制8个LED,编程实现8个LED依次亮灭并循环。
      
       *****************************/
      #include<reg51.h>
      #include<intrins.h>
      void delay(int i)
      {
      int k,j;
      for(k=0;k<i;k++)
          for(j=0;j<100;j++);
      }
      void main()
      {
      int j=0xfe;
      while(1)
      {
      P1=j;
      delay(500);
      j=_crol_(j,1)-1;
      /**for(i=0;i<7;i++)
      {
      j=(j<<=1)+1;
      delay(500);
      P1=j;
      }
      */
      delay(500);
      }
      }
    • 流水灯震荡
    • /******************************
       项目名称:项目1彩灯控制器
       任务名称:任务3流水灯控制
       任务描述:P1口控制8个LED,编程实现8个LED闪烁震荡。
      
       *****************************/
      #include<reg51.h>
      #include<intrins.h>
      void delay(int i)
      {
      int k,j;
      for(k=0;k<i;k++)
          for(j=0;j<100;j++);
      }
      void main()
      {
      int i;
      int j=0xfe;
      while(1)
      {
      for(i=0;i<7;i++)
          {
           P1=j;
           delay(500);
           j=_crol_(j,1);
           delay(500);
          }
          for(i=0;i<7;i++)
          {
           P1=j;
           delay(500);
           j=_cror_(j,1);
           delay(500);
          }
      }
      }
    • 交通灯
      /******************************
     项目名称:项目1彩灯控制器
     任务名称:任务6交通灯控制
     任务描述:P1口控制6个LED,编程实现交通灯。
    
     *****************************/
     #include<reg51.h>
     void delay(int i)
     {
     int k,j;
     for(k=0;k<i;k++)
         for(j=0;j<100;j++);
     }
    void main()
    {
    while(1)
    {
    int i;
     P1=0x77;//两红灯亮
     delay(1000);
     P1=0xd7;//东西路口绿灯亮,南北路口红灯亮。
     delay(6000);
     for(i=0;i<7;i++)
         {
        P1=0xb7;//东西路口黄灯亮,南北路口红灯亮。
        delay(500);
        P1=0xf7;   //东西路口灯灭,南北路口红灯亮。
        delay(500);
        }
     P1=0x77;//两红灯亮;
     delay(1000);
     P1=0x7d;//东西路口红灯亮,南北路口绿灯亮。
     delay(6000);
     for(i=0;i<7;i++)
         {
        P1=0x7b;//东西路口红灯亮,南北路口黄灯亮。
        delay(500);
        P1=0x7f;// 东西路口红灯亮,南北路口灯灭。
        delay(500);
        }
    }
    }

     转向灯

     /******************************
     项目名称:项目1彩灯控制器
     任务名称:任务3转向灯控制
     任务描述:P1口控制4个LED,编程实现开关控制小灯闪烁。
    
     *****************************/
    #include<reg51.h>
     sbit k1=P1^0;
     sbit k2=P1^1;
    void delay(int i)
    {
    int k,j;
    for(k=0;k<i;k++)
       for(j=0;j<100;j++);
    }
    void main()
    {
     
      while(1)
      {
      if(k1==0&&k2==1)      //k1关闭,左转向灯亮
      {
        P1=0xcf;
        delay(500);
        P1=0xff;
        delay(500);
        
      }
       if(k1==1&&k2==0)      //k2关闭,右转向灯亮
      {
        P1=0x3f;
        delay(500);
        P1=0xff;
        delay(500);
        
      }
       if(k1==k2)      //k1关闭,左转向灯亮
      {
    
        P1=0xff;
        
      }
      }
    
    }

    方法二

      /******************************
     项目名称:项目1彩灯控制器
     任务名称:任务3转向灯控制
     任务描述:P1口控制4个LED,编程实现开关控制小灯闪烁,使用switch语句。
    
     *****************************/
    #include<reg51.h>
    void delay(int i)
    {
    int k,j;
    for(k=0;k<i;k++)
       for(j=0;j<100;j++);
    }
    void main()
    {
    int r;
    while(1)
        {
        r=P1&0x03;
        switch(r)
            {
            case 0:P1=0xff;break;
            case 1:P1=0x3f;delay(500);P1=0xff;delay(500);break;
            case 2:P1=0xcf;delay(500);P1=0xff;delay(500);break;
            case 3:P1=0xff;break;
            }
    
        }
    }       
  • 相关阅读:
    我们都可以把它放 Sidecar 容器中,这样微服务具备了 Super power,一种超能力
    DP 状态 DP 转移方程 动态规划解题思路
    完全二叉树 原因 完全二叉树最后一层节点靠左的原因
    延时任务最佳实践方案总结
    b+ 树 只存储 索引
    埋点质量保障体系建设
    linux命令重定向>、>>、 1>、 2>、 1>>、 2>>、 <
    卡特兰数
    python 使用函数名的字符串调用函数(4种方法)_black-heart的专栏-CSDN博客 https://blog.csdn.net/mrqingyu/article/details/84403924
    12 | 服务注册与发现如何满足服务治理
  • 原文地址:https://www.cnblogs.com/ssxblog/p/10957323.html
Copyright © 2020-2023  润新知