zoukankan      html  css  js  c++  java
  • 流水灯系列

    • 流水灯
    • 电路仿真图
    • /******************************
       项目名称:项目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;
            }
    
        }
    }       
  • 相关阅读:
    visual studio项目多级引用不拷贝dll的问题
    ef6 code first,对已有数据库如何执行迁移
    wsl 修改默认安装路径
    Windows docker镜像文件无法删除
    Docker镜像下载很慢,各种加速无效
    activemq整合springboot使用(个人微信小程序用)
    angular入门一之环境安装及项目创建
    jquery中attr()和prop()的区别
    IntelliJ IDEA部署web项目,Tomcat没有出现Artifacts
    IntelliJ IDEA:创建Java Web工程
  • 原文地址:https://www.cnblogs.com/ssxblog/p/10957323.html
Copyright © 2011-2022 走看看