微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 来人帮我看看问题在哪

来人帮我看看问题在哪

时间:10-02 整理:3721RD 点击:
        while(1)
        {
           if(TF0 == 1 && flag ==1)
           {
                     TF0 = 0;
                  TH0 = 0x4c;
                  TL0 = 0x00;
                  n++;
                  if(n >= 20)
                  {
                           n = 0;
                         P0 = ~(0x01<<i);
                         i++;
                         if(i>=7)
                         {
                                 flag = 0;
                               
                         }
                  }
           }
           if(TF0 == 1 && flag == 0)
           {
                      TF0 = 0;
                   i = 0;
                   TH0 = 0x4c;
               TL0 = 0x00;
                   n++;
                   if(n >= 20)
                   {
                             n = 0;
                          P0 = ~(0x80>>i);
                          i++;
                          if(i>=7)
                          {
                                    flag = 1;
                                  i = 0;
                          }
                   }
          
           }
这是一个流水灯的小程序 编译运行OK 但是小灯左移第一次走到最后一个就常亮了 不进入到下个大if语句右移了
这是什么情况?

好像少2个括号

第一个if已经把TF0清零了

你的TF1关掉没有打开

TF0关闭后一直没有打开    你要在下面的软件中打开

TF=0执行本语句,TF=1才能继续。

哟西

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top