⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.c

📁 keil C51 LCD 驱动源码,其中还有I2C驱动,ADC驱动,键盘操作等,是一个完整的keil源代码,供大家参考
💻 C
📖 第 1 页 / 共 5 页
字号:
                                        FgHatKey=0;
                                        FgOsdAct=0;
                                        FgMenuSelect=0;
                                        FgFunInc=0;
                                        OsdEnable( 0 );
                                        EepromCommonStore(1);
                                }
                                else
                                        MenuKey();
                                break;
                        case UP_KEY :
                                if(FgFunInc)
                                {
                                        if(KeyStatus<4)
                                        	CountTimer=TIME_500MS;
                                        else if(KeyStatus<10)
                                        	CountTimer=TIME_200MS;
                                        else
                                        	CountTimer=TIME_80MS;
                                        ModifyValue(INCREASE);
//                                        FgDoKey=1;
                                        KeyStatus++;
                                }
                                else if(FgOsdAct)
                                {
                                        if ( FgInputKeyFlag == 0 )
                                        {
                                                OSDPoint--;
                                                FgInputKeyFlag = 1;
                                                Up_Down_Key();
//                                                FgDoKey=1;
//                                                KeyStatus++;
                                        }
                                }
                                else
                                {
                                        CountTimer=TIME_500MS;          //algu 1122
                                        FgKeyFlag=0;
                                        FgFunInc=1;
                                        FgOsdAct=1;
                                        FgHatKey=1;
                                        FgMenuSelect=1;
                                        OSDMenuPage=L0_MENU1;
                                        OSDPoint=1;
                                        ShowScallWindow(L1_BRIGHTNESS);
                                        ShowScallBar(0,100,BrightnessValueZ);
                                        
                                }
                                FgMenuKey=0;
                                
//                                if ( FgUpKeyFlag<5 )            //algu 1130
//                                        FgUpKeyFlag++;          //algu 1129
                                break;
                        case DOWN_KEY :
                                if(FgFunInc)
                                {
                                        if(KeyStatus<4)
                                        	CountTimer=TIME_500MS;
                                        else if(KeyStatus<10)
                                        	CountTimer=TIME_200MS;
                                        else
                                        	CountTimer=TIME_80MS;
                                        ModifyValue(DECREASE);
//                                        FgDoKey=1;
                                        KeyStatus++;
                                }
                                else if(FgOsdAct)
                                {
                                        if ( FgInputKeyFlag==0 )
                                        {
                                                OSDPoint++;
                                                Up_Down_Key();
                                                FgInputKeyFlag = 1;
//                                                FgDoKey=1;
//                                                KeyStatus++;
                                        }
                                }
                                else
                                {
                                        CountTimer=TIME_500MS;          //algu 1122
                                        FgKeyFlag=0;
                                        FgFunInc=1;
                                        FgOsdAct=1;
                                        FgHatKey=1;
                                        FgMenuSelect=1;
                                        OSDMenuPage=L0_MENU1;
                                        OSDPoint=0;
                                        ShowScallWindow(L1_CONTRAST);
                                        ShowScallBar(0,100,ContrastValueZ);
                                        
                                }
                                FgMenuKey=0;
//                                if ( FgDownKeyFlag<5 )  //algu 1130
//                                         FgDownKeyFlag++;
                                break;
                        case ENTER_KEY :

                                if( (FgOsdAct) && (FgSelKeyFlag==0) )   //algu 1120
                                {
                                        CountTimer=TIME_500MS;
                                        if(!FgFunInc)
                                                EnterKey();
                                        else
                                                EnterKeyReturn();
//                                        FgDoKey=1;
//                                        KeyStatus=0;
                                        FgSelKeyFlag=1; //algu 1120
                                }
                                FgMenuKey=0;
                                break;
                        case AUTO_KEY :
//                                if ( FgFreeRun==1 || FgNoSignal==1)
//                                      break;
                                FgKeyFlag=0;
                                FgAutoOn=1;
                                FgAutoAdj = 1;
                                FgAutoKeyFlag = 1;
//                                FgDoKey=0;
                                FgMenuKey=0;
                                FgFunInc=0;
                                break;
//                        default :
//                                KeyStatus=0;
                }
             }

                
                
//              if(FgDoKey)
//              {
//                      if(KeyStatus==0)
//                              CountTimer=TIME_500MS;
//                      else if(KeyStatus<8)
//                      {
//                              if (FgFunInc)   //algu 1130
//                              {
//                                      //Turbo key
//                                      if ( FgDownKeyFlag>4 ||FgUpKeyFlag>4  )
//                                              CountTimer=TIME_50MS;
//                                      else
//                                              CountTimer=TIME_160MS;
//                              }
//                      }                       
//                      else
//                      {
//                              KeyStatus=150;
//                              CountTimer = TIME_50MS;
//                      }
//              }
                OSDOffTimer=OSDTimerByte*250;
                
        }
        if(!FgShowBurnin && FgOsdAct && OSDOffTimer==0)
        {
                FgOsdAct=0;
                FgFunInc=0;
                OSDNumber=L0_NOOSD;
                OSDPoint=0;
                FgMenuSelect=0;
                ChangeColorTemp(ColorTemp);
                OsdHandler();
        }
}

void    MenuKey()
{
        if(FgOsdAct)
        {
                if(FgMenuSelect)
                {
                        if(OSDMenuPage==L0_USERCOLOR)
                        {
                                OSDPoint=3;
                                OSDMenuPage=L0_MENU3;
                                OSDNumber=L0_MENU3;
                                OsdHandler();
                                OsdWindow(1,(OSDM_WINDOW1+OSDPoint*3));
                        }
                        else if(OSDMenuPage==L0_USERADJUST)
                        {
                                FgMenuSelect=0;
                                OSDPoint=3;
                                OSDMenuPage=L0_MENU3;
                                OSDNumber=L0_MENU3;
                                OsdShowWindowA();
                                FgMenuChange=1;
                                OsdHandler();
                        }
                        else
                        {
                                FgMenuSelect=0;
                                
                                if ( OSDMenuPage==L0_MENU3 )    //color temp    //algu 1112
                                {
                                        ChangeColorTemp(ColorTemp);
                                }
                                else if ( OSDMenuPage==L0_MENU5 )       //language      algu 1113
                                {
                                        OsdSetString(OSDMENU0_MESSAGE,0,OSDLanguage,1);
                                        PrintString(8,0,WHITE,DataPointer);
                                }               
                                
                                
                                
                                if(FgMenuPage)
                                {
                                        if( OSDMenuPage == L0_FAC_ADCADJUST)
                                                OSDNumber=L0_FAC_MENU0;
                                        else if( OSDMenuPage == L0_FAC_ZURACCB)
                                                OSDNumber=L0_FAC_MENU1;
                                        else if( OSDMenuPage == L0_FAC_MISC)
                                                OSDNumber=L0_FAC_MENU2;
                                        else
                                                OSDNumber=OSDMenuPage;
                                        OSDPoint=OSDNumber-L0_FAC_MENU0;
                                }
                                else
                                {
                                        OSDNumber=OSDMenuPage;
                                        OSDPoint=OSDMenuPage-L0_MENU0;
                                }
                                if(FgFunInc)
                                {
                                        OsdShowWindowA();
                                        FgMenuChange=1;
                                        OsdHandler();
                                }
                                else
                                {
                                        OsdColorFont();
                                        OsdWindow( 4, OSDM_WINDOW4);
                                        OsdWindow( 1, OSDM_MAIN_WINDOW1 + (OSDPoint * 3));
                                }
                        }
                        FgFunInc=0;
                }
                else
                {
                        FgOsdAct=0;
                        OSDNumber=L0_NOOSD;
                        FgMenuKey=1;
                        OSDPoint=0;
                        OsdHandler();
                }
        }
        else
        {
                FgOsdAct=1;
                FgMenuChange=1;
                if(FgFacMode)
                {
                        if( OSDMenuPage == L0_FAC_ADCADJUST)    //algu 1120
                                OSDMenuPage=L0_FAC_MENU0;
                        else if( OSDMenuPage == L0_FAC_ZURACCB)
                                OSDMenuPage=L0_FAC_MENU1;
                        else if( OSDMenuPage == L0_FAC_MISC)
                                OSDMenuPage=L0_FAC_MENU2;

                        
                        if ( OSDMenuPage==L0_NOOSD )            //algu 1113
                                OSDMenuPage=L0_FAC_MENU0;
                        OSDNumber=OSDMenuPage;                  //algu 1113
                        if ( (OSDMenuPage>=L0_FAC_MENU0) && ( OSDMenuPage<=L0_FAC_MENU6) )      //algu 1113
                        {
                                OSDPoint=OSDMenuPage-L0_FAC_MENU0;
                                FgMenuPage=1;
                        }
                        else
                        {
                                OSDPoint=OSDMenuPage-L0_MENU0;
                                FgMenuPage=0;   
                        }       
                }
                else
                {
                        if ( OSDMenuPage==L0_USERCOLOR || OSDMenuPage==L0_USERADJUST )
                                OSDMenuPage=L0_MENU3;
                        


                        if ( OSDMenuPage==L0_NOOSD )            //algu 1113
                                OSDMenuPage=L0_MENU0;
                        OSDNumber=OSDMenuPage;  //algu 1113
                        OSDPoint=OSDMenuPage-L0_MENU0;  //algu 1113
                        FgMenuPage=0;
                }
                FgMenuSelect=0;
                FgMenuKey=1;
                OsdShowWindowA();
                OsdHandler();
                ColorTemp1 = ColorTemp;
        }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -