微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 屏幕数据刷新?

屏幕数据刷新?

时间:10-02 整理:3721RD 点击:
/********************************************************************
* 名称 : 屏幕数据刷新
* 功能 :                                                                       
* 输入 : 无
* 输出 : 无
***********************************************************************/          
                        if(displaytime>=100 )
                        {
                                if(flagStart==3) sizechange=sizechange+40;          //下降专用 距离下降  左后停止
                                TransferData(0x95,0);                               
                                TransferData(0x17,1);                                                   //高度显示
                                TransferData(S1%1000/100+0x30,1);
                                TransferData(S1%100/10+0x30,1);
                                TransferData(S1%10+0x30,1);
                                TransferData(0x8D,0);                                                   //响应时间显示
                                TransferData(RTimetime/100%10+0x30,1);
                                TransferData(RTimetime%100/10+0x30,1);
                                TransferData(0x2E,1);
                                TransferData(RTimetime%10+0x30,1);
                                TransferData(0x9d,0);                                                        //保持时间显示
                                TransferData(MTimetime/100%10+0x30,1);
                                TransferData(MTimetime%100/10+0x30,1);
                                TransferData(0x2E,1);  
                                TransferData(MTimetime%10+0x30,1);        
                                displaytime=0;
                                TransferData(0x85,0);                                                         //任务要求显示
                                TransferData(0x20,1);
                                if(flagStart==1) TransferData(0x11,1);
                                else TransferData(0x3C,1);
                                TransferData(shuzi+0x30,1);
                                if(flagStart==1) TransferData(0x10,1);
                                else TransferData(0x3E,1);
                        }
                                                                                                                                               
                        if((Timetime>=22)&&(flagStart==1))                //0.1s的保持与采样时间计算
                        {                               
                                ZTimetime++;                                                          //总时间
                                if((flagSep==5)&&(S1>=100))
                                {
                                RTimetime=ZTimetime;                                          //响应时间S                               
                                }
                                if((size==301)&&(S1<200))
                                {
                                size=50;
                                       
                                }
                               
                                if((flagSep==1)&&((110>=S1)|(S1>=190))&&(size==150))
                                {
                                RTimetime=ZTimetime;                                          //响应时间S       
                                pidchang=1;                               
                                }
                                if((flagSep==1)&&((10>=S1)|(S1>=90))&&(size==50))
                                {
                                RTimetime=ZTimetime;                                          //响应时间S       
                                pidchang=1;                               
                                }
                                if((flagSep==1)&&((210>=S1)|(S1>=290))&&(size==250))
                                {
                                RTimetime=ZTimetime;                                          //响应时间S       
                                pidchang=1;                               
                                }
                                else  
                                {
                                Beep1stime++;
                                if(Beep1stime>=1) BEEP=1;
                                if((Beep1stime>=10)&&(beepchange1!=1)) {BEEP=0;Beep1stime=0; }
                                }
                                MTimetime=ZTimetime-RTimetime;                         //保持时间
                                Timetime=0;
                                if(size==301) MTimetime=0;

                        }
                                if(flagSep==6)
                                 {
                                 flagStart6=1;
                                  flagSep=1;
                                   size=301;
                                pidchang=0;
                          }
                          
                          if ((MTimetime>=30)&&(flagStart6==1))         
                          {
                          flagStart61++;
                          if (flagStart60==0)
                           {
                          size=250;          
                          flagStart60=1;
                          pidchang=0;       
                          }
                          else
                          {
                          size=50;          
                          flagStart60=0;
                          pidchang=0;
                          }
                          MTimetime=0;
                          ZTimetime=0;
                          RTimetime=0;                    
                          }       
                          if (flagStart61>=4){pwm=0; flagSep=0;}
                          
                          
                           if(flagSep==7) //要求7功能
                           {
                       
                          if((S1>=2)&&(flagStart7==0)){pwm=0;flagStart7=1;}          //启动标志位
                          else
                          if(flagStart7==1)
                          {
                          if (S1>=140) {flagSep=1; size=150;}
                           }
                          }
                          if(flagSep==2) //要求7功能
                                  {
                                  flagSep=1;
                                  pidchang=0;
                                  }


        }
}       

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

网站地图

Top