16f630测试转速RA2口是一个低电平tlow(100微妙)和一个高电平thigh(毫秒),led2做转速1200

2020-02-09 11:41发布

测摩托车转速问题if(T0IF)   //time0 200us中断0.2ms
                {
                   T0IF=0;
                   TMR0=53;              
                    if(!in1)//发动机开始旋转RA2口平时转速为0的时候一直为高,转速以来马上变低
                      {   
                       
                        if(gaodi) {  tlow++;}
                        else
   
                            {
                                    
                              if (thigh>=250) //1200转以下50ms
                              {
                             tlow=0;
                             thigh=0;
                             speed1=1;led2=0;
                               }
                             else  if ((thigh>=130) &&   (thigh<250))//1200--2400转以下25ms
                               {
                              tlow=0;
                              thigh=0;
                             speed2=1;   led2=1;
                                }
                            else  //2400转以上
                                {
                              //tlow=0;
                              //thigh=0;  
                              speed3=1; led2=0;
                                }
                            } //上次为高的标志   
                            gaodi=0;
                       }
                 else
                        {
                           if(!gaodi)
                           {
                                  thigh++;  
                           }
                            gaodi=1;      
                         }
0条回答

一周热门 更多>