JJJUNNN 2022-03-31 19:22 采纳率: 100%
浏览 75
已结题

怎么让24个流水灯从上到下依次亮循环

#include<reg52.h>
#include<intrins.h>
void delay(unsigned int i)
{
while(i--);
}
void main()
{
P0=0xfe;
P1=0xfe;
P2=0xfe;
delay(10000);

while(1)
{        
            int k;
            for(k=0;k<27;k++)
            {
                if (k>0&&k<9)
                    {
                        P0=_crol_(P0,1);
                        delay(15000);
                        
                    }
                if (k>9&&k<18)                
                    {
                        P1=_crol_(P1,1);
                        delay(15000);
                        
                    }
                if (k>18&&k<27)
                    {
                        P2=_crol_(P2,1);
                        delay(15000);    
                    }
            }
}

}
怎么修改啊 这个 不是从上到下一次了亮的 分成了3个8个的流水灯

  • 写回答

2条回答 默认 最新

  • 智者知已应修善业 2022-03-31 22:20
    关注
    void main()中修改试看
    P1=P2=P3=0;
        while(1)
        {
    ++k;
    if(k>0&&k<9){if(k==1){P3=0;P1=128;}P1=_crol_(P1,1);delay(47000);}
    else if(k>8&&k<17){if(k==9){P1=0;P2=128;}P2=_crol_(P2,1);delay(47000);}
    else if(k>16&&k<25){if(k==17){P2=0;P3=128;}P3=_crol_(P3,1); delay(47000);}
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 已采纳回答 4月12日
  • 修改了问题 3月31日
  • 修改了问题 3月31日
  • 展开全部

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?