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

📄 key.c

📁 keil C51 LCD 驱动源码,其中还有I2C驱动,ADC驱动,键盘操作等,是一个完整的keil源代码,供大家参考
💻 C
📖 第 1 页 / 共 5 页
字号:
                                else
                                {
                                        OSDPoint=0;
                                }        
                                VerticalKey();
                                if(a==L0_MENU5)
                                        PrintChar(OSDLanguage+1,5,_RHAND,MAGENTA);  //TONNY
                                break;
                case L1_AUTO :
                                FgAutoOn=1;
                                FgAutoAdj = 1;
                                FgMenuSelect=0;
                                FgFunInc=0;
                                break;
                case L1_CONTRAST :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(0,100,ContrastValueZ);
                                break;
                case L1_BRIGHTNESS :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(0,100,BrightnessValueZ);
                                break;
                case L1_RECALL :
                                PowerBacklight(0);
                                MUTEEnable();
                                OsdShowMessage(RESET_MESSAGE);          //algu 1120 L3_RECALLING
                                ResetMode();
                                break;
                case L1_RECALLALL :
                                MUTEEnable();
                                OsdShowMessage(RECALL_MODE_MESSAGE);            //algu 1120 L3_RECALLING
                                FgFacMode=1;
                                FgBurnin =0;
                                EepromCommonStore(0);
                                RecallAll();
                                FgModeDetect=1;
                                FgFacMode=0;
                                break;
                case L1_WHITE :
                                FgWhiteOn=1;
                                OsdEnable( 0 );
                                FgOsdAct = 0;
                                FgMenuSelect=0;
                                OSDNumber = L0_NOOSD;
                                break;
                case L1_9300 :
                case L1_6500 :
                case L1_5000 :
                                PrintChar(ColorTemp+1,5,__,BACK_BLACK);
                                ColorTemp = ColorTemp1;
                                PrintChar(ColorTemp+1,5,_RHAND,MAGENTA);
                                FgSaveData=1;
                                break;
                case L1_USER :
                                PrintChar(ColorTemp+1,5,__,BACK_BLACK);
                                ColorTemp = ColorTemp1;
                                PrintChar(ColorTemp+1,5,_RHAND,MAGENTA);
                                OSDNumber=L0_USERCOLOR;
                                OSDMenuPage=L0_USERCOLOR;
                                OSDPoint=0;
                                OsdHandler();
                                Up_Down_Key();
                                break;
                case L1_USER_R :
                case L1_USER_G :
                case L1_USER_B :
                                FgFunInc=1;
                                OSDMenuPage=L0_USERADJUST;
                                PrintChar(OSDPoint+2,5,_DARROW,BLACK);
                                PrintChar(OSDPoint+2,18,_UARROW,BLACK);
                                PrintChar(1,25,__,BACK_BLACK);
                                PrintChar(7,25,__,BACK_BLACK);
                                OsdWindow(1,(OSDM_COLORTEMP_WIN1+OSDPoint*3));
                                break;
                case L0_FAC_MENU0 :
                                OsdClearWinB();
                                OsdDisableWindow(4);
                                OSDNumber=L0_FAC_MENU0;
                                OSDMenuPage=L0_FAC_MENU0;
                                OSDPoint=0;
                                FgMenuSelect=1;
                                OsdWindow(1,(FAC_COLORTEMP_WINDOW1+OSDPoint*3));
                                break;
                case L1_RGAIN :
                case L1_GGAIN :
                case L1_BGAIN :
                case L1_ROFFSET :
                case L1_GOFFSET :
                case L1_BOFFSET :
                                FgFunInc=1;
                                OSDMenuPage=L0_FAC_ADCADJUST;
                                PrintChar(OSDPoint+2,6,_DARROW,BLACK);          //algu 1119 col 5->6
                                PrintChar(OSDPoint+2,19,_UARROW,BLACK);         //algu 1119 col 18->19
                                PrintChar(1,25,__,BACK_BLACK);
                                PrintChar(7,25,__,BACK_BLACK);
                                OsdWindow(1,(FAC_COLORTEMP_WIN1+OSDPoint*3));
                                break;
                case L0_FAC_MENU1 :
                                OsdClearWinB();
                                OsdDisableWindow(4);
                                OSDNumber=L0_FAC_MENU1;
                                OSDMenuPage=L0_FAC_MENU1;
                                OSDPoint=0;
                                FgMenuSelect=1;
                                OsdWindow(1,(FAC_COLORTEMP_WINDOW1+OSDPoint*3));
                                break;
                case L1_RCONTRAST :
                case L1_GCONTRAST :
                case L1_BCONTRAST :
                case L1_RBRIGHTNESS :
                case L1_GBRIGHTNESS :
                case L1_BBRIGHTNESS :
                                FgFunInc=1;
                                OSDMenuPage=L0_FAC_ZURACCB;
                                PrintChar(OSDPoint+2,6,_DARROW,BLACK);  //algu 1119 col 5->6
                                PrintChar(OSDPoint+2,19,_UARROW,BLACK); //algu 1119 col 18->19
                                PrintChar(1,25,__,BACK_BLACK);
                                PrintChar(7,25,__,BACK_BLACK);
                                OsdWindow(1,(FAC_COLORTEMP_WIN1+OSDPoint*3));
                                break;
                case L0_FAC_MENU2 :
                                OsdClearWinB();
                                OsdDisableWindow(4);
                                OSDNumber=L0_FAC_MENU2;
                                OSDMenuPage=L0_FAC_MENU2;
                                OSDPoint=0;
                                FgMenuSelect=1;
                                OsdWindow(1,(FAC_MISC_WINDOW1+OSDPoint*3));     //algu 1119
                                break;
                case L1_DITHERING :
                case L1_BRIGHTNESS_INVERTER :
                case L1_GAMMA :
                                FgFunInc=1;
                                OSDMenuPage=L0_FAC_MISC;
                                OsdWindow(1,(FAC_MISC_WIN1+OSDPoint*3));
                                break;
                case L1_DOS_MODE :
                                FgFunInc=1;
                                OSDMenuPage=L0_MENU2;
                                if(( FgCompSignal || FgSogSignal ) && CurVFreq <7200)
                                {
                                        PrintString(7,1,BLACK,&DOSModeText1);
                                        ShowCompDOSMode();
                                }
                                else
                                {
                                        PrintString(7,7,BLACK,&DOSModeText);
                                        OsdWindow(1,(OSDW_DOSMode+(Byte)FgDosMode*3));
                                }
                                break;
                case L1_H_POS :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                OSDMaxValue=MAKEWORD(EEPROMDefault_table1[ModeCounter][0],
                                                     EEPROMDefault_table1[ModeCounter][1]);
                                OSDMinValue=OSDMaxValue-50;
                                OSDMaxValue=OSDMaxValue+50;
                                ShowScallBar(OSDMinValue,OSDMaxValue,OSDMaxValue - HorPositionValue + OSDMinValue);
                                break;
                case L1_V_POS :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                OSDMaxValue=MAKEWORD(EEPROMDefault_table1[ModeCounter][2],
                                                     EEPROMDefault_table1[ModeCounter][3]);
                                OSDMinValue=OSDMaxValue-16;
                                if(OSDMinValue>0xFF00)
                                        OSDMinValue=0;
                                if(OSDMinValue< 6)
                                        OSDMinValue=6;
                                OSDMaxValue=OSDMinValue+32;
                                ShowScallBar(OSDMinValue,OSDMaxValue,VerPositionValue);
                                break;
                case L1_CLOCK :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                OSDMaxValue=MAKEWORD(EEPROMDefault_table1[ModeCounter][5],
                                                     EEPROMDefault_table1[ModeCounter][6]);
                                OSDMinValue=OSDMaxValue-100;
                                OSDMaxValue=OSDMaxValue+100;
                                ShowScallBar(OSDMinValue,OSDMaxValue,ClockValue);
                                break;
                case L1_PHASE :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(0,31,PhaseValue);
                                break;
                case L1_SCALING :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(0,3,ScalingMode);
                                FgFunInc=1;
                                break;
                case L1_OSDHPOS :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(OSD_HPOS_MIN,OSD_HPOS_MAX,OSDHorPosition);   //algu 1113
                                break;
                case L1_OSDVPOS :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(OSD_VPOS_MIN,OSD_VPOS_MAX,OSD_VPOS_MAX+OSD_VPOS_MIN-OSDVerPosition);       //algu 1113
                                break;
                case L1_OSDOFFTIME :
                                ShowScallWindow(a);
                                OSDMainPoint=OSDPoint;
                                ShowScallBar(5,60,OSDTimerByte);
                                CurrentValue=OSDTimerByte;              //algu 1121
                                OsdShowData(4,22,BLACK);
                                PrintChar(4,22,_UARROW,BLACK);
                                PrintChar(4,25,_S,BLACK);
                                
                                if(FgFacMode)
                                        PrintChar(5,15,_S,BLACK);
                                break;
// Vincent      case L1_TRANSPARENCY :			// No this function
// Vincent                      ShowScallWindow(a);
// Vincent                      OSDMainPoint=OSDPoint;
// Vincent                      ShowScallBar(0,7,AlphaBlending);
// Vincent                      break;
                case L1_LANGUAGE1 :          
                                ChangeLanguage(0);
                                break;
                case L1_LANGUAGE2 :
                                ChangeLanguage(1);
                                break;
                case L1_LANGUAGE3 :
                                ChangeLanguage(2);
                                break;
                case L1_LANGUAGE4 :
                                ChangeLanguage(3);
                                break;
                case L1_LANGUAGE5 :
                                ChangeLanguage(4);
                                break;
                case L1_LANGUAGE6 :
                                ChangeLanguage(5);
                                break;
                case L1_LANGUAGE7 :
                                ChangeLanguage(6);
                                break;
        }
}

Byte    GetByteValue(Byte Data,Byte min,Byte max,Bool Inc)
{
        if(Inc && Data != max)
                Data++;
        if(!Inc && Data != min)
                Data--;
        return(Data);
}

Word    GetWordValue(Word Data,Bool Inc)
{
        if(Inc && Data!=OSDMaxValue)
                Data++;
        if(!Inc && Data!=OSDMinValue)
                Data--;
        return(Data);
}

void    ModifyValue(Bool Inc)
{
        Word    a;
        Byte    b,c;
        c=GetItemNumber();
        FgSaveData=1;
        switch(c)
        {
                case L1_CONTRAST :
                                b=GetByteValue(ContrastValueZ,0,100,Inc);
                                if(ContrastValueZ != b)
                                {
                                        ContrastValueZ=b;
                                        ZuracBCAdjust();
                                        ShowScallBar(0,100,ContrastValueZ);
                                }
                                break;
                case L1_BRIGHTNESS :
                                b=GetByteValue(BrightnessValueZ,0,100,Inc);
                                if(BrightnessValueZ!=b)
                                {
                                        BrightnessValueZ=b;
                                        ZuracBCAdjust();
                                        ShowScallBar(0,100,BrightnessValueZ);
                                }
                                break;
                case L1_H_POS :
                                OSDMinValue=MAKEWORD(EEPROMDefault_table1[ModeCounter][0],
                                                     EEPROMDefault_table1[ModeCounter][1]);
                                OSDMaxValue=OSDMinValue+50;
                                OSDMinValue=OSDMinValue-50;

⌨️ 快捷键说明

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