zoukankan      html  css  js  c++  java
  • 51 单片机 跑马灯

    /*-----------------------------------------------
      名称:流水灯
      日期:2016.7.24
      修改:无
      内容:循环点亮P1口对应的8个LED灯,造成循环流水点亮的效果
    ------------------------------------------------*/
    #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
    /*------------------------------------------------
                        延时子程序
    ------------------------------------------------*/
    void delay(unsigned int cnt) 
    {
        while(--cnt);
    }
    /*------------------------------------------------
                        主函数
    ------------------------------------------------*/
    
    main()
    {
        bit flag = 0;                  //设置一个位变量
    
        P1=0x7f;                       //给初始化值 换算成二进制是0111 1111
        while(1)                     //当为1时  则无限循环   当为0时  则一次都不执行
        {  
            if (flag == 0)           //判断是否为0
            {
                delay(30000);        //延时程序
                P1 = P1 >> 1;          //右移一位 该语句等效于 P1=P1>>1
                P1 |= 0x80;            // 1000 0000
        
                if(P1==0xfe)         //检测是否移到最左端?"=="表示检测符号2端的值是否相等
                { 
                    flag = 1;       
                }
            
            }
            else
            {
                delay(30000);        //延时程序
                P1 = P1 << 1;          //左移一位 该语句等效于 P1=P1<<1
                P1 |= 0x01;            // 0000 0001
        
                if(P1==0x7f)         //检测是否移到最左端?"=="表示检测符号2端的值是否相等
                { 
                    flag = 0;
                }
            }
        }
    }
  • 相关阅读:
    Subsequence
    【模板】AC自动机(加强版)
    1563: hzwer的跳跳棋(hop)
    P2469 [SDOI2010]星际竞速
    P2746 [USACO5.3]校园网Network of Schools
    Blocks
    Training little cats
    Period
    UVA-3942 Remember the Word
    初学线段树(poj3264+poj2777)
  • 原文地址:https://www.cnblogs.com/zengsf/p/5700028.html
Copyright © 2011-2022 走看看