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

📄 osdav003.c

📁 LCD TV,uVision2 Project, (C) Keil Software
💻 C
字号:
#define __OSDAV003___

#include "Header\Include.h"

#if(OSD_TYPE == OSD003)

#if(_VIDEO_AV_SUPPORT || _VIDEO_SV_SUPPORT || _VIDEO_TV_SUPPORT)

//------------------------------------------------------------
void OSDAVProc()
{
     switch(ucOsdState)
     {
          case _MENU_NONE:                    MAVNoneProc();         break;
          case MENU_ITEM_BRIGHT:
          case MENU_ITEM_CONTRAST:
          case MENU_AV_HUE:
          case MENU_AV_SATURATION:
          case MENU_ITEM_LANGUAGE:
          case MENU_ITEM_RESET:
          case MENU_ITEM_CLOSE:
               MAVMainProc();
               break;
          case MENU_ITEM_BRIGH_ADJ:           MBrightAdjProc();      break;
          case MENU_ITEM_CONTRAST_ADJ:        MContrastAdjProc();    break;
          case MENU_AV_HUE_ADJ:               MAVHueAdjProc();       break;
          case MENU_AV_SATURATION_ADJ:        MAVSaturationAdjProc();break;
          case MENU_ITEM_LANGUAGE_ADJ:        MLanguageAdjProc();    break;
          case MENU_VOLUME_SP:                MVolumeAdjProc();      break;

          default:                                                   break;
     }
}

//------------------------------------------------------------
void MAVNoneProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        MAVNoneMenu();       break;
         case VK_LEFT:        MAVNoneLR(1);        break;
         case VK_RIGHT:       MAVNoneLR(0);        break;
         case VK_ENTER:       MAVNoneEnter();      break;
     }
}
//------------------------------------------------------------
void MAVNoneMenu()
{
     InitOSDFrame();
     SelectState();
     DrawBrightPage();
     ucOsdState = MENU_ITEM_BRIGHT;
     ShowPageIndex(1,7);     
     COsdFxEnableOsd();
}
//------------------------------------------------------------
void MAVNoneLR(unsigned char LR)
{
     if(LR)
     {
         GotoAdjustBrightness();
         ShowPageIndex(1,7);
     }
     else      GotoAdjustVolume();
}
//------------------------------------------------------------
void MAVNoneEnter()
{     
}
//------------------------------------------------------------




//--------- AV MAIN PROC ----------------------------------
void MAVMainProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        MAVMainMenu();       break;
         case VK_LEFT:        MAVMainLR(1);        break;
         case VK_RIGHT:       MAVMainLR(0);        break;
         case VK_ENTER:       MAVMainEnter();      break;
     }
}
//------------------------------------------------------------
void MAVMainMenu()
{

    AdjustState();
    // Enter Sub Item
    switch(ucOsdState)
    {
        case MENU_ITEM_BRIGHT:             
             SLIDER1(BRIGHTNESS_GUAGE);
             ucOsdState = MENU_ITEM_BRIGH_ADJ;
             break;
        case MENU_ITEM_CONTRAST:
             SLIDER1(CONTRAST_GUAGE);
             ucOsdState = MENU_ITEM_CONTRAST_ADJ;
             break;
        case MENU_AV_HUE:
             SLIDER1(HUE_GUAGE);
             ucOsdState = MENU_AV_HUE_ADJ;
             break;
        case MENU_AV_SATURATION:
             SLIDER1(SATURATION_GUAGE);
             ucOsdState = MENU_AV_SATURATION_ADJ;
             break;
        case MENU_ITEM_LANGUAGE:
             ucOsdState = MENU_ITEM_LANGUAGE_ADJ;
             break;
        case MENU_ITEM_RESET:              
             DoReset();
             SelectState();
             break;
        case MENU_ITEM_CLOSE:
             COsdFxDisableOsd();
             ucOsdState = _MENU_NONE;
             break;
    }
}
//------------------------------------------------------------
void MAVMainLR(unsigned char  LR)
{
     //STEP 1 : BEFORE ITEM CHANGE CLEAR OLD SELECT
     ClearClientDisplay();

     //STEP 2 : ITEM CHANGE
     if(LR)
     {
         switch(ucOsdState)
         {
              case MENU_ITEM_BRIGHT:         ucOsdState = MENU_ITEM_CONTRAST;     break;
              case MENU_ITEM_CONTRAST:       ucOsdState = MENU_AV_HUE;            break;
              case MENU_AV_HUE:              ucOsdState = MENU_AV_SATURATION;     break;
              case MENU_AV_SATURATION:       ucOsdState = MENU_ITEM_LANGUAGE;     break;
              case MENU_ITEM_LANGUAGE:       ucOsdState = MENU_ITEM_RESET;        break;
              case MENU_ITEM_RESET:          ucOsdState = MENU_ITEM_CLOSE;        break;
              case MENU_ITEM_CLOSE:          ucOsdState = MENU_ITEM_BRIGHT;       break;
         }
     }
     else
     {
         switch(ucOsdState)
         {
              case MENU_ITEM_BRIGHT:         ucOsdState = MENU_ITEM_CLOSE;        break;
              case MENU_ITEM_CONTRAST:       ucOsdState = MENU_ITEM_BRIGHT;       break;
              case MENU_AV_HUE:              ucOsdState = MENU_ITEM_CONTRAST;     break;
              case MENU_AV_SATURATION:       ucOsdState = MENU_AV_HUE;            break;
              case MENU_ITEM_LANGUAGE:       ucOsdState = MENU_AV_SATURATION;     break;
              case MENU_ITEM_RESET:          ucOsdState = MENU_ITEM_LANGUAGE;     break;
              case MENU_ITEM_CLOSE:          ucOsdState = MENU_ITEM_RESET;        break;
         }
     }
     //STEP 3 : AFTER ITEM CHANGE DRAW SELECT 
     switch(ucOsdState)
     {
          case MENU_ITEM_BRIGHT:             
               DrawBrightPage();
               ShowPageIndex(1,7);
               break;
          case MENU_ITEM_CONTRAST:           
               DrawContrastPage();
               ShowPageIndex(2,7);
               break;
          case MENU_AV_HUE:                  
               DrawHuePage(); 
               ShowPageIndex(3,7);
               break;
          case MENU_AV_SATURATION:           
               DrawSaturationPage();
               ShowPageIndex(4,7);
               break;
          case MENU_ITEM_LANGUAGE:           
               DrawLanguagePage();
               ShowPageIndex(5,7);
               break;
          case MENU_ITEM_RESET:
               DrawResetPage();
               ShowPageIndex(6,7);
               break;
          case MENU_ITEM_CLOSE:
               DrawExitPage();
               ShowPageIndex(7,7);
               break;
     }
}
//------------------------------------------------------------
void MAVMainEnter()
{

}
//------------------------------------------------------------




//--------- AV HUE PROC ----------------------------------
void MAVHueAdjProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        MAVHueMenu();       break;
         case VK_LEFT:        MAVHueLR(1);        break;
         case VK_RIGHT:       MAVHueLR(0);        break;
         case VK_ENTER:       MAVHueEnter();      break;
     }
}
//------------------------------------------------------------
void MAVHueMenu()
{
     ucOsdState = MENU_AV_HUE;
     SelectState();
     SLIDER2(HUE_GUAGE);     
     CLR_KEYREPEATENABLE();

     ucOsdEventMsg = _SAVE_EE_VEDIOCOLOR_MSG;
}
//------------------------------------------------------------
void MAVHueLR(unsigned char  LR)
{
     SET_KEYREPEATENABLE();     
     stVDCColor.Hue = ValueInRangeChange(0,100,stVDCColor.Hue,LR,0);
     SLIDER1(HUE_GUAGE);
     rp_CAdjustVDCHue(stVDCColor.Hue);
}
//------------------------------------------------------------
void MAVHueEnter()
{

}
//------------------------------------------------------------


      
//--------- AV SATURATION PROC ----------------------------------
void MAVSaturationAdjProc()
{
     switch(ucKeyMessage)
     {
         case VK_MENU:        MAVSaturationMenu();       break;
         case VK_LEFT:        MAVSaturationLR(1);        break;
         case VK_RIGHT:       MAVSaturationLR(0);        break;
         case VK_ENTER:       MAVSaturationEnter();      break;
     }
}
//------------------------------------------------------------
void MAVSaturationMenu()
{
     ucOsdState = MENU_AV_SATURATION;
     SelectState();
     SLIDER2(SATURATION_GUAGE);     
     CLR_KEYREPEATENABLE();

     ucOsdEventMsg = _SAVE_EE_VEDIOCOLOR_MSG;
}
//------------------------------------------------------------
void MAVSaturationLR(unsigned char  LR)
{
     SET_KEYREPEATENABLE();
     stVDCColor.Saturation = ValueInRangeChange(0,100,stVDCColor.Saturation,LR,0);
     SLIDER1(SATURATION_GUAGE);
     rp_CAdjustVDCSaturation(stVDCColor.Saturation);

}
//------------------------------------------------------------
void MAVSaturationEnter()
{

}
//------------------------------------------------------------
void DrawHuePage()
{
     TITLE_OUT((unsigned char code *)sHue[GET_LANGUAGE]);
     LOADICOFNT(FntIcnExit);         // andy icon not ready
     ICON_OUT();
     SLIDER2(HUE_GUAGE);
}
//------------------------------------------------------------
void DrawSaturationPage()
{
     TITLE_OUT((unsigned char code *)sSaturation[GET_LANGUAGE]);
     LOADICOFNT(FntIcnExit);         // andy icon not ready
     ICON_OUT();
     SLIDER2(SATURATION_GUAGE);
}
//------------------------------------------------------------


#endif  //#if(_VIDEO_AV_SUPPORT || _VIDEO_SV_SUPPORT || _VIDEO_TV_SUPPORT)

#endif  //#if(OSD_TYPE == OSD003)

⌨️ 快捷键说明

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