?? yuv.c
字號:
case YUV_ID_CVBS_11:
case YUV_ID_CVBS_21:
case YUV_ID_YC_Y12C22:
if (bYUV_SB & VP_MASK_FIDT)
return( YUV_CS_NTSC ); // 60 Hz
else
return( YUV_CS_PAL ); // 50 Hz
break;
}
} // YUV_GetColorStandard
#if (YUV_SET_BLACKLEVEL)
/* -------------------------------------------------------------------
Name: YUV_SetBlackLevel - (YUV_01_BIT1611B)
Purpose: To set the brightness of Video Decoder.
Passed:
UB8 bBrightness = 0..255
Returns: None.
Notes: [1]98
------------------------------------------------------------------- */
void YUV_SetBlackLevel (UB8 bBlackLevel)
{
BITEK_TxByte(YUV_MAD, VP_108_DVP_BLACKLEVEL, bBlackLevel);
} // YUV_SetBlackLevel
#endif
#if (YUV_SET_BRIGHTNESS)
/* -------------------------------------------------------------------
Name: YUV_SetBrightness - (YUV_01_BIT1611B)
Purpose: To set the brightness of Video Decoder.
Passed:
UB8 bBrightness = 0..255
Returns: None.
Notes: [1]98
------------------------------------------------------------------- */
void YUV_SetBrightness (UB8 bBrightness)
{
BITEK_TxByte(YUV_MAD, VP_106_DVP_BRIGHTNESS, bBrightness ^ 0x80);
} // YUV_SetBrightness
#endif
#if (YUV_SET_CONTRAST)
/* -------------------------------------------------------------------
Name: YUV_SetContrast - (YUV_01_BIT1611B)
Purpose: To set the contrast of Video Decoder.
Passed:
UB8 bContrast = 0..255
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetContrast (UB8 bContrast)
{
BITEK_TxByte(YUV_MAD, VP_107_DVP_CONTRAST, bContrast);
} // YUV_SetContrast
#endif
#if (YUV_SET_HUE)
/* -------------------------------------------------------------------
Name: YUV_SetHue - (YUV_01_BIT1611B)
Purpose: To set the hue of Video Decoder.
Passed:
UW16 bHue = 0..255
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetHue (UB8 bHue)
{
BITEK_TxByte(YUV_MAD, VP_10A_DVP_HUE, bHue);
} // YUV_SetHue
#endif
#if (YUV_SET_SATURATION)
/* -------------------------------------------------------------------
Name: YUV_SetSaturation - (YUV_01_BIT1611B)
Purpose: To set the saturation of Video Decoder.
Passed:
UB8 bSaturation = 0..127
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetSaturation (UB8 bSaturation)
{
BITEK_TxByte(YUV_MAD, VP_109_DVP_SATURATION, bSaturation);
} // YUV_SetSaturation
#endif
#if (YUV_SET_SHARPNESS)
/* -------------------------------------------------------------------
Name: YUV_SetSharpness - (YUV_01_BIT1611B)
Purpose: To set the sharpness of Video Decoder.
Passed:
UB8 bSharpness = 0..0x7F
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetSharpness (UB8 bSharpness)
{
#ifdef NOT_JUNK
switch (tsEYD.bYUV_ID)
{
case YUV_ID_CVBS_11:
case YUV_ID_CVBS_21:
case YUV_ID_YC_Y12C22:
BITEK_TxByte(YUV_MAD, VP_105_LUMA_ATTR, bSharpness);
break;
}
#endif
// [V00049] Revised by JC 11:51PM 2006/03/09
/*
R08B[7:4] R103[2] R105[6:5]
1011 0 0 0
1010 0 0 1
1001 0 1 0
1000 1 0 0
0111 0 1 1
1100 1 0 1
1101 1 1 0
1110 1 1 1
1111
*/
UB8 CODE abLUT_Sharpness[ 51 ] =
{
// R08B[7:4] R103[2] R105[6:5]
0xB0, // 0 1011 x000 0
0xA0, // 0 1010 x000 1
0x70, // 0 0111 x000 2
0x90, // 0 1001 x000 3
0xB1, // 1 1011 x001 4
0x80, // 0 1000 x000 5
0xA1, // 1 1010 x001 6
0xC0, // 0 1100 x000 7
0x91, // 1 1001 x001 8
0x81, // 1 1000 x001 9
0xB2, // 2 1011 x010 10
0x71, // 1 0111 x001 11
0xD0, // 0 1101 x000 12
0xA2, // 2 1010 x010 13
0xC1, // 1 1100 x001 14
0xE0, // 0 1110 x000 15
0x82, // 2 1000 x010 16
0x92, // 2 1001 x010 17
0x72, // 2 0111 x010 18
0xD1, // 1 1101 x001 19
0xC2, // 2 1100 x010 20
0xA4, // 3 1010 x100 21
0x84, // 3 1000 x100 22
0x94, // 3 1001 x100 23
0xA5, // 5 1010 x101 24
0x74, // 3 0111 x100 25
0xD1, // 1 1101 x001 26
0xC2, // 2 1100 x010 27
0x75, // 5 0111 x101 28
0x76, // 6 0111 x110 29
0xA6, // 6 1010 x110 30
0x95, // 5 1001 x101 31
0xE1, // 1 1110 x001 32
0x85, // 5 1000 x101 33
0x96, // 6 1001 x110 34
0xD2, // 2 1101 x010 35
0x86, // 6 1000 x110 36
0xE2, // 2 1110 x010 37
0xC4, // 3 1100 x100 38
0x87, // 7 1000 x111 39
0xC5, // 5 1100 x101 40
0xC6, // 6 1100 x110 41
0xD4, // 3 1101 x100 42
0x97, // 7 1001 x111 43
0xD5, // 5 1101 x101 44
0x77, // 7 0111 x111 45
0xD6, // 6 1101 x110 46
0xE4, // 3 1110 x100 47
0xE5, // 5 1110 x101 48
0xC7, // 7 1100 x111 49
0xE6, // 6 1110 x110 50
};
UB8 bData;
bSharpness %= 51;
// To setup register R08B[7:4] !
bData = BITEK_RxByte(YUV_MAD, VP_08B_IMAGE_ATTR) & 0x0F;
BITEK_TxByte(YUV_MAD,
VP_08B_IMAGE_ATTR,
(abLUT_Sharpness[ bSharpness ] & 0xF0) | bData);
// To setup register R103[2] !
bData = BITEK_RxByte(YUV_MAD, VP_103_LUMA_PATH3) & 0xFB;
BITEK_TxByte(YUV_MAD,
VP_103_LUMA_PATH3,
(abLUT_Sharpness[ bSharpness ] & 0x04) | bData);
// To setup register R105[6:5] !
bData = BITEK_RxByte(YUV_MAD, VP_105_LUMA_ATTR) & 0x9F;
BITEK_TxByte(YUV_MAD,
VP_103_LUMA_PATH3,
((abLUT_Sharpness[ bSharpness ] << 5) & 0x60) | bData);
} // YUV_SetSharpness
#endif
#if (YUV_SET_SKINTONE)
/* -------------------------------------------------------------------
Name: YUV_SetSkinTone - (YUV_01_BIT1611B)
Purpose: To set the skin tone of Video Decoder.
Passed:
UB8 bSkinTone
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetSkinTone (UB8 bSkinTone)
{
bSkinTone = bSkinTone;
} // YUV_SetSkinTone
#endif
/* -------------------------------------------------------------------
Name: YUV_SetSourceMode - (YUV_01_BIT1611B)
Purpose: To set YUV source mode with 100pF.
Passed: bSourceID = 0...
Returns: None.
Notes:
------------------------------------------------------------------- */
void YUV_SetSourceMode (UB8 bSourceID)
{
// 0x102:
// 7 6 5 4 3 2 1 0
// GAIN2 SEL2 ADC2 GAIN1 SEL1 ADC1 ANY ANC
// 0 0 0 0 1 1 0 0 = CVBS11 0x0C
// 0 0 0 0 0 1 0 0 = CVBS12 0x04
// 0 1 1 0 0 0 1 0 = CVBS21 0x62
// 0 0 1 0 0 0 1 0 = CVBS22 0x22
// 0 0 1 0 0 1 0 0 = Y12C22 0x24
// 0x103:
// 7 6 5 4 3 2 1 0
// VD_MON x ACLAMP2 ACLAMP1 YC_EN PREF_EN CHT_SEL CHT_EN
// TYPE TYPE
// 0 0 0 0 0 1 1 1 = CVBS11 0x07
// 0 0 0 0 0 1 1 1 = CVBS12 0x07
// 0 0 0 0 0 1 1 1 = CVBS21 0x07
// 0 0 0 0 0 1 1 1 = CVBS22 0x07
// 0 0 1 0 1 0 0 0 = Y12C22 0x28
/*
CVBS S-Video
AIN11 AIN12 AIN21 AIN22 Y11+C21 Y12+C22 C11+Y21 C12+Y22
0x101 0x7C 0x7C 0x7C 0x7C 0x7C 0x7C 0x7C 0x7C
0x102 0x0C 0x04 0x62 0x22 0x6C 0x24 0x6F 0x27
0x103 0x07 0x07 0x07 0x07 0x28 0x28 0x18 0x18
0x129 0x00 0x00 0x01 0x01 0x00 0x00 0x01 0x01
*/
switch (bSourceID)
{
case YUV_ID_CVBS_11:
BITEK_TxByte(YUV_MAD, VP_101_AFE_ATTR, 0x7C);
BITEK_TxByte(YUV_MAD, VP_102_DVP_ATTR, 0x0C);
BITEK_TxByte(YUV_MAD, VP_103_LUMA_PATH3, 0x07);
BITEK_TxByte(YUV_MAD, VP_129_AAGC_ATTR, 0x00);
break;
case YUV_ID_CVBS_21:
BITEK_TxByte(YUV_MAD, VP_101_AFE_ATTR, 0x7C);
BITEK_TxByte(YUV_MAD, VP_102_DVP_ATTR, 0x62);
BITEK_TxByte(YUV_MAD, VP_103_LUMA_PATH3, 0x07);
BITEK_TxByte(YUV_MAD, VP_129_AAGC_ATTR, 0x01);
break;
case YUV_ID_YC_Y12C22:
BITEK_TxByte(YUV_MAD, VP_101_AFE_ATTR, 0x7C);
BITEK_TxByte(YUV_MAD, VP_102_DVP_ATTR, 0x24);
BITEK_TxByte(YUV_MAD, VP_103_LUMA_PATH3, 0x28);
BITEK_TxByte(YUV_MAD, VP_129_AAGC_ATTR, 0x00);
break;
}
} // YUV_SetSourceMode
/* -------------------------------------------------------------------
Name: -
Purpose: .
Passed: None.
Returns: None.
Notes:
------------------------------------------------------------------- */
/* **********************************************************************
Description:
********************************************************************** */
/* %% End Of File %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -