亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? dispatch.c

?? Bitek 公司 bit1611b模擬屏驅(qū)動(dòng)芯片外接MCU驅(qū)動(dòng)DEMO源碼
?? C
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
/* **********************************************************************

         Copyright (c) 2002-2006 Beyond Innovation Technology Co., Ltd

        All rights are reserved. Reproduction in whole or in parts is
    prohibited without the prior written consent of the copyright owner.
   ----------------------------------------------------------------------

    Module: DISPATCH.C

    Purpose: Implementation of DISPATCH module.

    Version: 0.02                                   07:25PM  2005/05/13

    Compiler: Keil 8051 C Compiler v8.01

    Reference:

   ----------------------------------------------------------------------
    Modification:

    R0.01 07:25PM  2005/05/13 Jeffrey Chang
    Reason:
        1. Original.
    Solution:

   ********************************************************************** */

#define _DISPATCH_C_

/* ------------------------------------
    Header Files
   ------------------------------------ */
#include "bitek.h"
#include "common.h"
#include "dispatch.h"
#include "eeprom.h"
#include "i2c.h"
#include "key.h"
#include "led.h"
#include "mcu.h"
#include "menu.h"
#include "osd.h"
#include "platform.h"
#include "por.h"
#include "timer.h"
#include "vp.h"
#include "yuv.h"


#if (AUDIO_CFG != AUDIO_00_NONE)
    #include "audio.h"
#endif

#if (IR_CFG != IR_00_UNUSE)
    #include "ir.h"
#endif

#if (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_5)  ||  \
    (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_6)
    #include "tuner.h"
#endif

/* ------------------------------------
    Macro Definitions
   ------------------------------------ */


/* ------------------------------------
    Type Definitions
   ------------------------------------ */


/* ------------------------------------
    Variables Definitions
   ------------------------------------ */
static UB8 bIdx;
static UB8 bKey;

#if (DISPATCH_BURNINGO)
static UB8 bBurnIn = 0;
#endif

#if (DISPATCH_DISPLAYMODE)

    #if (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_1)      ||  \
        (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_2)      ||  \
        (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_5)      ||  \
        (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_6)      ||  \
        (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_7)

        static UB8 CODE * CODE apbDISPLAY_MODE[ DISPLAY_MODE_SIZE ] =
        {
           //123456
            "16:9-1",
            "16:9-2",
            "4:3",
        };

    #elif (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_3)    ||  \
          (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_4)
    // Nothing !

    #else

        static UB8 CODE * CODE apbDISPLAY_MODE[ DISPLAY_MODE_SIZE ] =
        {
           //123456
            "Linear",
            "Bypass",
        };

    #endif

#endif


#if (DISPATCH_TCON_MODE)
static UB8 CODE * CODE apbTCON_MODE[ TCON_MODE_SIZE ] =
{
    "RU",
    "LU",
    "LD",
    "RD",
};
#endif



/* ------------------------------------
    Function Prototypes
   ------------------------------------ */


#if (DISPATCH_BURNINGO)
/* -------------------------------------------------------------------
    Name: DISPATCH_BurnInGo - 
    Purpose:
    Passed:
    Returns: None.
    Notes:
   ------------------------------------------------------------------- */
void DISPATCH_BurnInGo (void)
{
    if (wTIMER_BurnInTick < 5)
    {
        wTIMER_BurnInTick = 505;         // 500 x 6ms = 3 sec.

        // Video Processor Test Pattern
        BITEK_TxByte(VP_MAD, VP_03D_TESTPAT_G,   0xFF);
        BITEK_TxByte(VP_MAD, VP_03E_TESTPAT_B,   (bBurnIn << 4) | 0x8F);

        // To enable Free-Run Mode
        BITEK_TxByte(VP_MAD,
                     VP_040_TESTPAT_ATTR,
                     BITEK_RxByte(VP_MAD, VP_040_TESTPAT_ATTR) | VP_MASK_FREERUN_EN);

        OSD_ShowValue(OSD_SUBMENU,
                      OSD_SUBMENU_WIDTH - OSD_W_VALUE - 1,
                      OSD_Y_VALUE,
                      bBurnIn,
                      OSD_W_VALUE                         );

        bBurnIn++;
        bBurnIn &= 0x07;
    }
} /* DISPATCH_BurnInGo */
#endif



/* -------------------------------------------------------------------
    Name: DISPATCH_Go -
    Purpose: To execute DISPATCH.
    Passed: None.
    Returns: None.
    Notes:
   ------------------------------------------------------------------- */
void DISPATCH_Go (void)
{
    // OSD Auto OFF !
    wMENU_Tick = MENU_AUTO_OFF_TIME;


    switch (bSystemState)
    {
        case SYSTEM_POWER_OFF:
            switch (bKey = KEY_BufferOut())
            {
                case KEY_POWER:
                case KEY_IR_POWER:
                    if (fKeyReleased)
                        POR_PowerOn();
                    break;

                default:
                    break;
            } // switch
            break;


        case SYSTEM_POWER_ON:
            switch (bKey = KEY_BufferOut())
            {
                case KEY_STILL_POWER:
                case KEY_IR_POWER:
                    if (fKeyReleased)
                        POR_PowerOff();
                    break;

                case KEY_RELEASE_MENU:
                case KEY_IR_MENU:
                    // To vanish Main/Message Menu
                    MENU_EnableMenu(MENU_MAINMENU, ON);
                    MENU_EnableMenu(MENU_MESSAGE, OFF);

                    bSystemState = SYSTEM_MAIN_MENU;
                    break;


                case KEY_RELEASE_SELECT:
                case KEY_IR_SELECT:
                    tsEYD.bYUV_ID = (tsEYD.bYUV_ID + 1) % MAX_YUV_NO;

                    // To setup Video Source and try next one !
                    YUV_SetSourceMode(tsEYD.bYUV_ID);

                    // To enable BLANK COLOR
                    //VP_BlankColor(ON);

                    // To Backup YUV ID
                    EEPROM_TxBurst(EYD_ADDR_YUV_ID,
                                   sizeof(tsEYD.bYUV_ID),
                                   (UB8 *)&tsEYD.bYUV_ID    );

                    OSD_ShowMsg(OSD_MESSAGE,
                                OSD_X_SOURCE,
                                OSD_Y_SOURCE,
                                apbYUV_Source[ tsEYD.bYUV_ID ]);
                    OSD_EnableWindow(OSD_MESSAGE, ON);


                    bLastSB = YUV_SB_BITEK;
                    bLastCS = YUV_CS_NONE;
                    break;

                #if (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_1)      ||  \
                    (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_2)      ||  \
                    (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_7)

                case KEY_UP:
                case KEY_IR_UP:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_HUE;
                    bMenuBaseItem       = MENU_HUE;
                    bMenuCurrentItem    = MENU_DISPLAY_MODE;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_DisplayModeMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                case KEY_DOWN:
                case KEY_IR_DOWN:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_SATURATION;
                    bMenuBaseItem       = MENU_SATURATION;
                    bMenuCurrentItem    = MENU_SHARPNESS;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_SharpnessMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                #elif (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_3)    ||  \
                      (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_4)

                case KEY_UP:
                case KEY_IR_UP:
                case KEY_DOWN:
                case KEY_IR_DOWN:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_SATURATION;
                    bMenuBaseItem       = MENU_SATURATION;
                    bMenuCurrentItem    = MENU_SHARPNESS;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_SharpnessMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                #elif (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_5)

                case KEY_UP:
                case KEY_IR_UP:
                    tsEYD.bChannel++;
                    if (tsEYD.bChannel > TUNER_CHANNEL_MAX)
                        tsEYD.bChannel = TUNER_CHANNEL_MIN;

                    TUNER_Tuning(TUNER_VideoFreq(tsEYD.bChannel));

                    // Show Channel
                    OSD_ShowValue(OSD_MESSAGE,
                                  OSD_WINDOW1_WIDTH - OSD_W_VALUE,
                                  OSD_Y_VALUE,
                                  tsEYD.bChannel,
                                  OSD_W_VALUE                           );
                    MENU_EnableMenu(OSD_MESSAGE, ON);

                    break;

                case KEY_DOWN:
                case KEY_IR_DOWN:
                    tsEYD.bChannel--;
                    if (tsEYD.bChannel < TUNER_CHANNEL_MIN)
                        tsEYD.bChannel = TUNER_CHANNEL_MAX;

                    TUNER_Tuning(TUNER_VideoFreq(tsEYD.bChannel));

                    // Show Channel
                    OSD_ShowValue(OSD_MESSAGE,
                                  OSD_WINDOW1_WIDTH - OSD_W_VALUE,
                                  OSD_Y_VALUE,
                                  tsEYD.bChannel,
                                  OSD_W_VALUE                           );
                    MENU_EnableMenu(OSD_MESSAGE, ON);
                    break;

                #elif (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_6)

                case KEY_UP:
                case KEY_IR_UP:
                case KEY_DOWN:
                case KEY_IR_DOWN:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_HUE;
                    bMenuBaseItem       = MENU_HUE;
                    bMenuCurrentItem    = MENU_VOLUME;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_VolumeMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                #elif (MENU_STYLE_CFG == MENU_STYLE_SCROLLING_8)

                case KEY_UP:
                case KEY_IR_UP:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_BRIGHTNESS;
                    bMenuBaseItem       = MENU_BRIGHTNESS;
                    bMenuCurrentItem    = MENU_BRIGHTNESS;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_BrightnessMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                case KEY_DOWN:
                case KEY_IR_DOWN:
                    bMenuLastItem       = bMenuCurrentItem - bMenuBaseItem + MENU_CONTRAST;
                    bMenuBaseItem       = MENU_CONTRAST;
                    bMenuCurrentItem    = MENU_CONTRAST;

                    MENU_ShowMainMenuItem(bMenuBaseItem);
                    MENU_UpdateMainMenuCursor(bMenuBaseItem, bMenuLastItem, bMenuCurrentItem);

                    // To clear Sub Menu
                    MENU_ClearMenu(MENU_SUBMENU);

                    DISPATCH_ContrastMenu();

                    // To show Sub Menu
                    MENU_EnableMenu(MENU_SUBMENU, ON);
                    break;

                #else

                case KEY_DOWN:
                case KEY_UP:
                case KEY_IR_DOWN:
                case KEY_IR_UP:
                    bMenuLastItem     = bMenuCurrentItem;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一卡二卡三卡| 日韩一区二区免费视频| 制服丝袜亚洲色图| 久久久精品综合| 一区二区三区波多野结衣在线观看| 免费成人在线视频观看| 不卡av免费在线观看| 欧美一级视频精品观看| 亚洲综合一区二区| 成人黄页毛片网站| 久久蜜桃av一区精品变态类天堂| 亚洲一区二区av在线| 波多野结衣欧美| www国产精品av| 久久超级碰视频| 欧美日韩国产大片| 一区二区三区不卡视频| 99久精品国产| 中文字幕一区二区日韩精品绯色| 久久99国产精品尤物| 欧美剧情片在线观看| 一区二区三区四区不卡视频| jizz一区二区| 国产精品青草综合久久久久99| 韩国精品主播一区二区在线观看 | 强制捆绑调教一区二区| 色哟哟精品一区| 亚洲欧洲日韩综合一区二区| 波多野洁衣一区| 国产精品久久99| 91视频你懂的| 亚洲人成亚洲人成在线观看图片| 国产成人免费av在线| 国产日韩精品一区二区浪潮av| 国产一区 二区| 国产欧美综合在线| 成人白浆超碰人人人人| 亚洲欧洲精品天堂一级| 菠萝蜜视频在线观看一区| 国产精品国产三级国产aⅴ无密码| 国产精品一区二区三区乱码| 国产亚洲福利社区一区| 成人高清在线视频| 亚洲精品一二三| 欧美在线视频全部完| 日韩激情视频网站| 精品国产一区二区亚洲人成毛片 | 久久久久国产精品免费免费搜索 | 精品一区二区av| 精品国产一二三| 国产成人精品一区二| 成人欧美一区二区三区白人| 在线观看91视频| 男男gaygay亚洲| 欧美激情一区二区在线| a在线播放不卡| 偷偷要91色婷婷| 久久女同性恋中文字幕| 91亚洲大成网污www| 亚洲电影一区二区| 精品国产sm最大网站| 成人爱爱电影网址| 视频一区二区中文字幕| 国产视频一区二区在线| 欧美亚洲综合另类| 精品亚洲免费视频| 1区2区3区欧美| 欧美一区二区三区四区在线观看| 国产一区二区三区免费观看| 亚洲精品视频一区| 欧美成人精品福利| 色综合av在线| 国产精品资源在线| 亚洲综合久久av| 国产日产精品1区| 欧美日韩精品高清| 丁香一区二区三区| 免费日本视频一区| 亚洲欧美另类小说| 精品处破学生在线二十三| 91福利在线观看| 成人免费视频一区| 日韩电影在线免费观看| 亚洲你懂的在线视频| 久久久久久久综合日本| 精品视频1区2区3区| 成人av资源下载| 国产一区二区三区四区五区入口| 亚洲大片在线观看| 国产精品福利av | 6080午夜不卡| 色婷婷综合久久久久中文 | 中文字幕日韩av资源站| 久久久久久久久免费| 这里只有精品免费| 欧美亚洲免费在线一区| 99精品欧美一区二区三区小说| 国内欧美视频一区二区| 五月婷婷色综合| 亚洲午夜激情av| 亚洲一区二区三区四区在线免费观看| 国产清纯白嫩初高生在线观看91 | 成人综合激情网| 国产在线乱码一区二区三区| 午夜精品久久久久影视| 亚洲综合av网| 亚洲精品v日韩精品| 国产欧美一区二区精品忘忧草| 精品久久久久一区二区国产| 欧美一区二区三区在线看| 欧美一区二区视频在线观看| 91精品国产综合久久精品性色| 欧美性生活大片视频| 在线免费一区三区| 在线视频你懂得一区二区三区| 色久综合一二码| 在线看一区二区| 欧美午夜精品一区二区三区| 色香蕉成人二区免费| 在线观看日韩精品| 欧美日韩国产bt| 欧美情侣在线播放| 制服丝袜亚洲网站| 26uuuu精品一区二区| 中文字幕免费在线观看视频一区| 欧美国产成人在线| 日韩美女啊v在线免费观看| 亚洲色图清纯唯美| 亚洲一区在线观看网站| 亚洲高清视频中文字幕| 舔着乳尖日韩一区| 九九热在线视频观看这里只有精品| 韩国欧美国产1区| heyzo一本久久综合| 欧美亚洲自拍偷拍| 精品嫩草影院久久| 国产亚洲欧洲997久久综合| 中文字幕一区免费在线观看| 亚洲欧美经典视频| 日韩1区2区3区| 成人一区二区三区| 欧美性一级生活| 日韩视频一区二区| 国产精品久久久久影院色老大| 亚洲人快播电影网| 日本成人在线不卡视频| 国产成人亚洲综合a∨婷婷| 一本大道av伊人久久综合| 日韩天堂在线观看| 国产精品久久夜| 日本网站在线观看一区二区三区 | 老司机精品视频在线| 国产成人亚洲综合a∨猫咪| 色伊人久久综合中文字幕| 精品日本一线二线三线不卡| 亚洲欧美日韩一区二区三区在线观看| 婷婷激情综合网| 91在线视频播放地址| 欧美群妇大交群的观看方式| 中文在线资源观看网站视频免费不卡| 亚洲电影中文字幕在线观看| 国产.精品.日韩.另类.中文.在线.播放| 欧美亚洲愉拍一区二区| 国产欧美日韩在线看| 蜜桃av一区二区在线观看| 色欲综合视频天天天| 精品国产三级a在线观看| 亚洲成人综合视频| caoporm超碰国产精品| 欧美精品一区二区三区久久久| 亚洲一线二线三线久久久| 高潮精品一区videoshd| 欧美成人一区二区三区片免费| 国产精品久久久久久久久免费丝袜| 蜜臀精品一区二区三区在线观看| 92精品国产成人观看免费| 久久久美女毛片| 免费视频最近日韩| 欧美日韩精品一区二区三区四区| 国产精品成人一区二区艾草| 国产九色sp调教91| 日韩免费性生活视频播放| 亚洲18色成人| 一本到一区二区三区| 成人免费在线视频| 成人精品小蝌蚪| 国产亚洲视频系列| 国产精品69久久久久水密桃| 精品国产污网站| 麻豆极品一区二区三区| 69久久夜色精品国产69蝌蚪网| 一区二区在线电影| 91视频国产资源| 亚洲色图视频免费播放| 99精品视频在线观看免费| 中文字幕永久在线不卡| aaa亚洲精品一二三区| 国产精品色婷婷久久58| 成人app下载| 亚洲色图.com|