来人帮我看看问题在哪

2019-07-15 14:04发布

        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语句右移了
这是什么情况?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
ntdafushi
1楼-- · 2019-07-15 18:26
好像少2个括号
jiciwi
2楼-- · 2019-07-15 23:27
第一个if已经把TF0清零了
张大猛
3楼-- · 2019-07-16 01:59
你的TF1关掉没有打开
张大猛
4楼-- · 2019-07-16 05:17
TF0关闭后一直没有打开    你要在下面的软件中打开
1242108829
5楼-- · 2019-07-16 08:48
 精彩回答 2  元偷偷看……
qq1224745969
6楼-- · 2019-07-16 14:06
哟西

一周热门 更多>