为什么我的数码管显示总是不对?

2019-10-15 06:19发布

while(1)
                 {                         
                         zz++;
                         if(zz>=1 && zz<256)
                         {
                            a=20;
                send_Display(a);//数码管显示温度
          Be_DS18B20(a);//模拟18b20发送温度
                         }
                         else if(zz>=256 && zz<512)
                         {
                            a=50;
                                  
                send_Display(a);
          Be_DS18B20(a);                  
                         }
                         else
                                 {
                                         zz=0;
          }
}//这块写上去之后,数码管一直显示20,并不能跳到50。


for(zz=0;zz<513;zz++)
    {                       
                         if(zz>=1 && zz<256)
                         {
                            a=20;
                send_Display(a);
               Be_DS18B20(a);
                         }
                         else
                         {
                            a=50;                          
                send_Display(a);
                Be_DS18B20(a);                  

                         }
      }//这个烧录之后只显示50,没有显示一开始的20度。  我想先显示一个20的温度保持一段时间后跳变为50然后一直循环,求教这两个函数到底问题出在哪里?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。