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

📄 osd.h

📁 BITEK LCD DRIVER IC OSD CODE
💻 H
📖 第 1 页 / 共 2 页
字号:
#define OSD2_CHAR_SIZE              (OSD2_CHAR_SIZE_V << 4) | OSD2_CHAR_SIZE_H
#define OSD3_CHAR_SIZE              (OSD3_CHAR_SIZE_V << 4) | OSD3_CHAR_SIZE_H

/* ::::::::::::::::::::::::::::::::::::
    [1]118 OSD Window1 Configuration
   :::::::::::::::::::::::::::::::::::: */
// [JC010] OSD Image Retention issue fixed by JC 09:15AM  2006/04/25
#define VP_MASK_H_POSITION_OFF      VP_MASK_H_POSITION_MSB9

// OSD1: 1H1V
#define OSD1_1X_H                   400         // in pixels
#define OSD1_1X_V                   10          // in scanlines
#define OSD1_2X_H                   596         // in pixels For
#define OSD1_2X_V                   0x36        // in scanlines
#define OSD1_3X_H                   0x90        // in pixels
#define OSD1_3X_V                   0x38        // in scanlines
#define OSD1_4X_H                   0x90        // in pixels
#define OSD1_4X_V                   0x150       // in scanlines


#if (OSD1_CHAR_SIZE_H == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW1_H                  OSD1_1X_H
#elif (OSD1_CHAR_SIZE_H == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW1_H                  OSD1_2X_H
#elif (OSD1_CHAR_SIZE_H == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW1_H                  OSD1_3X_H
#elif (OSD1_CHAR_SIZE_H == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW1_H                  OSD1_4X_H
#else
    #error OSD.H - Invalid OSD1_CHAR_SIZE_H !
#endif // OSD1_CHAR_SIZE_H

#if (OSD1_CHAR_SIZE_V == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW1_V                  OSD1_1X_V
#elif (OSD1_CHAR_SIZE_V == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW1_V                  OSD1_2X_V
#elif (OSD1_CHAR_SIZE_V == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW1_V                  OSD1_3X_V
#elif (OSD1_CHAR_SIZE_V == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW1_V                  OSD1_4X_V
#else
    #error OSD.H - Invalid OSD1_CHAR_SIZE_V !
#endif // OSD1_CHAR_SIZE_V


/* ::::::::::::::::::::::::::::::::::::
    [1]119 OSD Window2 Configuration
   :::::::::::::::::::::::::::::::::::: */

// OSD2: 1H1V
#define OSD2_1X_H           240          // in pixels
#define OSD2_1X_V           50          // in scanlines
#define OSD2_2X_H           0x30        // in pixels
#define OSD2_2X_V           120         // in scanlines
#define OSD2_3X_H           0x90        // in pixels
#define OSD2_3X_V           0x150       // in scanlines
#define OSD2_4X_H           0x90        // in pixels
#define OSD2_4X_V           0x150       // in scanlines


#if (OSD2_CHAR_SIZE_H == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW2_H                  OSD2_1X_H
#elif (OSD2_CHAR_SIZE_H == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW2_H                  OSD2_2X_H
#elif (OSD2_CHAR_SIZE_H == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW2_H                  OSD2_3X_H
#elif (OSD2_CHAR_SIZE_H == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW2_H                  OSD2_4X_H
#else
    #error OSD.H - Invalid OSD2_CHAR_SIZE_H !
#endif // OSD2_CHAR_SIZE_H

#if (OSD2_CHAR_SIZE_V == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW2_V                  OSD2_1X_V
#elif (OSD2_CHAR_SIZE_V == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW2_V                  OSD2_2X_V
#elif (OSD2_CHAR_SIZE_V == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW2_V                  OSD2_3X_V
#elif (OSD2_CHAR_SIZE_V == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW2_V                  OSD2_4X_V
#else
    #error OSD.H - Invalid OSD2_CHAR_SIZE_V !
#endif // OSD2_CHAR_SIZE_V


/* ::::::::::::::::::::::::::::::::::::
    [1]120 OSD Window3 Configuration
   :::::::::::::::::::::::::::::::::::: */
   
// OSD3: 1H1V
#define OSD3_1X_H           170          // in pixels
#define OSD3_1X_V           200          // in scanlines
#define OSD3_2X_H           148          // in pixels
#define OSD3_2X_V           412          // in scanlines
#define OSD3_3X_H           0x90         // in pixels
#define OSD3_3X_V           0x150        // in scanlines
#define OSD3_4X_H           0x90         // in pixels
#define OSD3_4X_V           0x150        // in scanlines


#if (OSD3_CHAR_SIZE_H == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW3_H                  OSD3_1X_H
#elif (OSD3_CHAR_SIZE_H == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW3_H                  OSD3_2X_H
#elif (OSD3_CHAR_SIZE_H == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW3_H                  OSD3_3X_H
#elif (OSD3_CHAR_SIZE_H == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW3_H                  OSD3_4X_H
#else
    #error OSD.H - Invalid OSD3_CHAR_SIZE_H !
#endif // OSD3_CHAR_SIZE_H


#if (OSD3_CHAR_SIZE_V == OSD_CHAR_SIZE_1X)
    #define OSD_WINDOW3_V                  OSD3_1X_V
#elif (OSD3_CHAR_SIZE_V == OSD_CHAR_SIZE_2X)
    #define OSD_WINDOW3_V                  OSD3_2X_V
#elif (OSD3_CHAR_SIZE_V == OSD_CHAR_SIZE_3X)
    #define OSD_WINDOW3_V                  OSD3_3X_V
#elif (OSD3_CHAR_SIZE_V == OSD_CHAR_SIZE_4X)
    #define OSD_WINDOW3_V                  OSD3_4X_V
#else
    #error OSD.H - Invalid OSD3_CHAR_SIZE_V !
#endif // OSD3_CHAR_SIZE_V


/* ::::::::::::::::::::::::::::::::::::
    [1]125 OSD Fixed Font
   :::::::::::::::::::::::::::::::::::: */
#define OSD_DASH_TOTAL              3
#define OSD_00_DASH_0               0x00
#define OSD_01_DASH_1               0x01
#define OSD_02_DASH_2               0x02
#define OSD_03_DASH_3               0x03
#define OSD_03_DASH_FULL            0x03

#define OSD_TRACK_TOTAL             3
#define OSD_00_TRACK_0              0x00
#define OSD_01_TRACK_1              0x01
#define OSD_06_TRACK_2              0x06
#define OSD_07_TRACK_3              0x07

#define OSD_BAR_TOTAL               6
#define OSD_5B_BAR_LEFT             0x5B
#define OSD_10_BAR_0                0x10
#define OSD_11_BAR_1                0x11
#define OSD_12_BAR_2                0x12
#define OSD_13_BAR_3                0x13
#define OSD_14_BAR_4                0x14
#define OSD_15_BAR_5                0x15
#define OSD_16_BAR_6                0x16
#define OSD_16_BAR_FULL             0x16
#define OSD_5D_BAR_RIGHT            0x5D

#define OSD_09_EXIT                 0x09

#define OSD_17_CONTRAST             0x17
#define OSD_18_SATURATION           0x18
#define OSD_19_HUE                  0x19
#define OSD_1B_BRIGHTNESS           0x1B

#define OSD_3C_CHECK_OFF            0x3C
#define OSD_3E_CHECK_ON             0x3E


#define OSD_7B_DISPLAY_MODE         0x7B
#define OSD_7C_MIRROR               0x7C
#define OSD_7D_IMAGE_FILTER         0x7D
#define OSD_7E_SHARPNESS            0x7E
#define OSD_7F_BITEK                0x7F

#define OSD_ICON_CHECK_OFF          OSD_3C_CHECK_OFF
#define OSD_ICON_CHECK_ON           OSD_3E_CHECK_ON


#define OSD_X_BAR                   1   // X Position
#define OSD_Y_BAR                   1   // Y Position

#define OSD_X_COLOR_STD             0   // X Position
#define OSD_Y_COLOR_STD             1   // Y Position

#define OSD_X_COLORSTD_MODE         3   // X Position
#define OSD_Y_COLORSTD_MODE         1   // Y Position

#define OSD_X_COPYRIGHT             1   // X Position
#define OSD_Y_COPYRIGHT             0   // Y Position

#define OSD_X_DATE_VERSION          1   // X Position
#define OSD_Y_DATE_VERSION          1   // Y Position

#define OSD_X_DISPLAY               2   // X Position
#define OSD_Y_DISPLAY               1   // Y Position
#define OSD_X_DISPLAY_STEP          8   // X Position

#define OSD_X_ICON                  1   // X Position
#define OSD_Y_ICON                  0   // Y Position

#define OSD_X_LOGO                  0   // X Position
#define OSD_Y_LOGO                  0   // Y Position

#define OSD_X_RESET                 0   // X Position
#define OSD_Y_RESET                 0   // Y Position

#define OSD_X_SOURCE                0   // X Position
#define OSD_Y_SOURCE                0   // Y Position

#define OSD_X_TCON                  1   // X Position
#define OSD_Y_TCON                  1   // Y Position
#define OSD_X_TCON_STEP             4   // X Position

#define OSD_X_TITLE                 3   // X Position
#define OSD_Y_TITLE                 0   // Y Position

#define OSD_W_VALUE                 3   // Width
#define OSD_Y_VALUE                 0   // Y Position

#define OSD_DSP_PROGRESSBAR         ON
#define OSD_DSP_TRACKBAR            ON
#define OSD_SHOW_HEX                OFF
#define OSD_SHOW_VALUE              ON


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


/* ------------------------------------
    Variables Definitions/Declarations
   ------------------------------------ */
#ifdef _OSD_C_

	UB8 CODE abNoSignal[] =
	{
	  //"123456789"
	    "NO SIGNAL"
	};

	UB8 CODE abRESET[] =
	{
	  //"123456789"
	    "RESET...."
	};

    UB8 CODE abOSD_Palette[] = {
        OSD1_NM_ATTR,
        OSD1_NM_1   ,
        OSD1_NM_2   ,
        OSD1_NM_3   ,

        OSD1_HL_ATTR,
        OSD1_HL_1   ,
        OSD1_HL_2   ,
        OSD1_HL_3   ,

        OSD2_NM_ATTR,
        OSD2_NM_1   ,
        OSD2_NM_2   ,
        OSD2_NM_3   ,

        OSD2_HL_ATTR,
        OSD2_HL_1   ,
        OSD2_HL_2   ,
        OSD2_HL_3   ,

        OSD3_NM_ATTR,
        OSD3_NM_1   ,
        OSD3_NM_2   ,
        OSD3_NM_3   ,

        OSD3_HL_ATTR,
        OSD3_HL_1   ,
        OSD3_HL_2   ,
        OSD3_HL_3   ,

        OSD3_IC_ATTR,
        OSD3_IC_1   ,
        OSD3_IC_2   ,
        OSD3_IC_3   ,

        OSD2_LG_ATTR,
        OSD2_LG_1   ,
        OSD2_LG_2   ,
        OSD2_LG_3   ,

    };

#else

    extern UB8 CODE abNoSignal[];
    extern UB8 CODE abRESET[];
    extern UB8 CODE abOSD_Palette[];
#endif // _OSD_C_


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

EXTERN UW16 OSD_DisplayAddress(UB8 bWindow, UB8 bRow, UB8 bCol);


#if (OSD_DSP_PROGRESSBAR)
EXTERN void OSD_DspProgressBar(UB8 bWindow, UB8 bCol, UB8 bRow, UW16 wMin,
    UW16 wMax, UW16 wValue, UB8 bWidth, UB8 bStyle);
#endif

#if (OSD_DSP_TRACKBAR)
EXTERN void OSD_DspTrackBar(UB8 bWindow, UB8 bCol, UB8 bRow, UW16 wMin,
    UW16 wMax, UW16 wValue, UB8 bWidth);
#endif

EXTERN void OSD_EnableWindow(UB8 bWindow, BOOL fOn);
EXTERN void OSD_FillCharAttr(UB8 bOffset, UB8 bCnt, UB8 bCharAttr);
EXTERN void OSD_FillCharCode(UB8 bOffset, UB8 bCnt, UB8 bCharCode);
EXTERN void OSD_FillCharCodeAttr(UB8 bOffset, UB8 bCnt, UB8 bCharCode, UB8 bCharAttr);
EXTERN void OSD_Init(void);
EXTERN void OSD_SetWindow(UB8 bWindow, UW16 wHpos, UW16 wVpos, UB8 bX_Width, UB8 bY_Height);
EXTERN void OSD_ShowChar(UB8 bWindow, UB8 bCol, UB8 bRow, UB8 bChar);

#if (OSD_SHOW_HEX)
EXTERN void OSD_ShowHex(UB8 bWindow, UB8 bCol, UB8 bRow, UB8 bValue);
#endif

EXTERN void OSD_ShowMsg(UB8 bWindow, UB8 bCol, UB8 bRow, UB8 abMsg[]);

#if (OSD_SHOW_VALUE)
EXTERN void OSD_ShowValue(UB8 bWindow, UB8 bCol, UB8 bRow, UW16 wValue, UB8 bWidth);
#endif


#endif /* _OSD_H_ */


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

    Description:

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

/* %% End Of File %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

⌨️ 快捷键说明

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