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

📄 tftsetup.c

📁 ct952 source code use for Digital Frame Photo
💻 C
📖 第 1 页 / 共 2 页
字号:
#ifdef SUPPORT_TFTenum TFT_SETUP_ID{	TFT_SETUP_BEGIN = 0,	TFT_SETUP_BRIGHTNESS=TFT_SETUP_BEGIN,	TFT_SETUP_CONTRAST,	TFT_SETUP_SATURATION,	TFT_SETUP_RESET,	TFT_SETUP_NUM};#define TFT_SETTING_PLUS     TRUE#define TFT_SETTING_MINUS    FALSE #define TFT_SETUPOSD_STRING  3#define TFT_SETUP_VALUE_LEVEL  0X10#ifdef IMAGE_FRAME_SETUP
#define TFT_SETUP_BRIGHTNESS_DEFAULT_LEVEL 0X08BYTE TFT_BRIGHTNESS_VALUE_LIST[]={0x00,0X10,0X20,0x30,0x40,0x50,0x60,0x70,0X80,0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0};#define TFT_SETUP_CONTRAST_DEFAULT_LEVEL 0X08BYTE TFT_CONTRAST_VALUE_LIST[]={0X10,0X20,0x30,0x40,0x50,0x60,0x70,0X80,0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0};#define TFT_SETUP_SATURATION_DEFAULT_LEVEL 0X08BYTE TFT_SATURATION_VALUE_LIST[]={0X10,0X20,0x30,0x40,0x50,0x60,0x70,0X80,0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0};
#else
#define TFT_SETUP_BRIGHTNESS_DEFAULT_LEVEL 0X08
BYTE code TFT_BRIGHTNESS_VALUE_LIST[TFT_SETUP_VALUE_LEVEL]={0x00,0X10,0X20,0x30,0x40,0x50,0x60,0x70,0X80,
									   0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0};
#define TFT_SETUP_CONTRAST_DEFAULT_LEVEL 0X08
BYTE code TFT_CONTRAST_VALUE_LIST[TFT_SETUP_VALUE_LEVEL]={0X10,0X20,0x30,0x40,0x50,0x60,0x70,
                          0X80,
									   0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0,0XFF};
#define TFT_SETUP_SATURATION_DEFAULT_LEVEL 0X08
BYTE code TFT_SATURATION_VALUE_LIST[TFT_SETUP_VALUE_LEVEL]={0X10,0X20,0x30,0x40,0x50,0x60,0x70,
                          0X80,
									   0X90,0XA0,0XB0,0XC0,0XD0,0XE0,0XF0,0XFF};	
#endif //IMAGE_FRAME_SETUP
	#define TFT_SETUPOSD_BackGroundWidth (TFT_SETUPOSD_STRING+TFT_SETUP_VALUE_LEVEL)#define TFT_SETUPOSD_BackGroundHeight (TFT_SETUP_NUM-1)#define TFT_SETUPOSD_BackGroundStarX    0x6#define TFT_SETUPOSD_BackGroundStarY    0x3#define TFT_SETUPOSD_BackGroundColor VIPOR_OSD_WHITE#define TFT_SETUPOSD_BackGround_WindowId   0x02#define TFT_SETUPOSD_ItemStartX  (TFT_SETUPOSD_BackGroundStarX)#define TFT_SETUPOSD_ItemStartY  (TFT_SETUPOSD_BackGroundStarY)#define TFT_SETUPOSD_ValueStartX  (TFT_SETUPOSD_ItemStartX+TFT_SETUPOSD_STRING)#define TFT_SETUPOSD_ValueStartWidth  (TFT_SETUP_VALUE_LEVEL)#define TFT_SETUPOSD_Hilight_WindowId     0x01#define TFT_SETUPOSD_Hilight_WindowWidth (TFT_SETUPOSD_STRING+TFT_SETUP_VALUE_LEVEL)#define TFT_SETUPOSD_Hilight_WindowStartX TFT_SETUPOSD_ItemStartX#define TFT_SETUPOSD_Hilight_WindowStartY TFT_SETUPOSD_ItemStartY#define TFT_SETUPOSD_HilightColor VIPOR_OSD_YELLOW//#define TFT_SETUPOSD_OSDColor VIPOR_OSD_YELLOW#define TFT_SETUPOSD_OSDColor VIPOR_OSD_MAGENTABYTE code Vipor_Osd_Brightness_String[TFT_SETUPOSD_STRING+1] ={	_VIPOR_BRI_L,	_VIPOR_BRI_R,	_VIPOR__, 	_VIPOR_EOF};BYTE code Vipor_Osd_Contrast_String[TFT_SETUPOSD_STRING+1] ={	_VIPOR_CON_L,	_VIPOR_CON_R,	_VIPOR__, 	_VIPOR_EOF};BYTE code Vipor_Osd_Saturation_String[TFT_SETUPOSD_STRING+1] ={	_VIPOR_HUE_L,	_VIPOR_HUE_R,	_VIPOR__, 	_VIPOR_EOF};BYTE code Vipor_Osd_Reset_String[] ={	_VIPOR_R,	_VIPOR_E,	_VIPOR_S,	_VIPOR_E,	_VIPOR_T, 	_VIPOR_EOF};BYTE code Vipor_OsdBar_Empty_String[2] ={	_VIPOR_HBar0, 	_VIPOR_EOF};BYTE code Vipor_OsdBar_Full_String[2] ={	_VIPOR_HBar6, 	_VIPOR_EOF};BYTE code Vipor_OsdBar_Left_String[2] ={	_VIPOR_HBarL, 	_VIPOR_EOF};BYTE code Vipor_OsdBar_Right_String[2] ={	_VIPOR_HBarR, 	_VIPOR_EOF};BYTE __bTFTSetupId;BYTE __bTFTSetupOSD_Temp1,__bTFTSetupOSD_Temp2;DWORD __dwTFT_OsdSetupTimer=0xffffffff;void _TFT_AdjustSetting(BOOL blPlus);//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTOSD_SetupBackGround// Description : Draw setup back ground// return      ://--------------------------------------------------------------------------void TFTOSD_SetupBackGround(void){	OsdWindow(TFT_SETUPOSD_BackGround_WindowId,				TFT_SETUPOSD_BackGroundStarX, 				TFT_SETUPOSD_BackGroundStarY,				TFT_SETUPOSD_BackGroundStarX+TFT_SETUPOSD_BackGroundWidth,				TFT_SETUPOSD_BackGroundStarY+TFT_SETUPOSD_BackGroundHeight,				TFT_SETUPOSD_BackGroundColor);}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTOSD_SetupClearAll// Description : clear  setup UI// return      ://--------------------------------------------------------------------------void TFTOSD_SetupClearAll(void){	//Vipor_OsdClearRow(TFT_SETUPOSD_BackGroundStarY,	//	TFT_SETUPOSD_BackGroundStarY+TFT_SETUPOSD_BackGroundHeight,	//	VIPOR_OSD_BLACK);	Vipor_OsdClearRow(0,13,VIPOR_OSD_BLACK);			Vipor_OsdDisableWindow(TFT_SETUPOSD_Hilight_WindowId);	Vipor_OsdDisableWindow(TFT_SETUPOSD_BackGround_WindowId);}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTOSD_SetupHilight// Description :Hilight one row// input      :hilight row id//--------------------------------------------------------------------------void TFTOSD_SetupHilight(BYTE bId){	__bTFTSetupOSD_Temp1=bId+TFT_SETUPOSD_ItemStartY;	OsdWindow(TFT_SETUPOSD_Hilight_WindowId,				TFT_SETUPOSD_Hilight_WindowStartX, 				__bTFTSetupOSD_Temp1,				TFT_SETUPOSD_Hilight_WindowStartX+TFT_SETUPOSD_Hilight_WindowWidth,				__bTFTSetupOSD_Temp1,				TFT_SETUPOSD_HilightColor);}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTOSD_SetupDrawBar// Description :draw bar// input      :bid: bar row id ; bValue: bar progress//--------------------------------------------------------------------------void TFTOSD_SetupDrawBar(BYTE  bId,BYTE bValue){	__bTFTSetupOSD_Temp1=bId+TFT_SETUPOSD_ItemStartY;	switch(bId)		{		case TFT_SETUP_BRIGHTNESS:					Vipor_PrintString(__bTFTSetupOSD_Temp1,					TFT_SETUPOSD_ItemStartX,					TFT_SETUPOSD_OSDColor,					(BYTE*) &Vipor_Osd_Brightness_String);					break;		case TFT_SETUP_CONTRAST:					Vipor_PrintString(__bTFTSetupOSD_Temp1,					TFT_SETUPOSD_ItemStartX,					TFT_SETUPOSD_OSDColor,					(BYTE*) &Vipor_Osd_Contrast_String);								break;		case TFT_SETUP_SATURATION:					Vipor_PrintString(__bTFTSetupOSD_Temp1,					TFT_SETUPOSD_ItemStartX,					TFT_SETUPOSD_OSDColor,					(BYTE*) &Vipor_Osd_Saturation_String);							break;		case TFT_SETUP_RESET:					Vipor_PrintString(__bTFTSetupOSD_Temp1,					TFT_SETUPOSD_ItemStartX,					TFT_SETUPOSD_OSDColor,					(BYTE*) &Vipor_Osd_Reset_String);						return;		default:					break;		}	Vipor_SetFirstCharAttr(__bTFTSetupOSD_Temp1,TFT_SETUPOSD_ValueStartX,TFT_SETUPOSD_OSDColor);	Vipor_SetOneCharContent(_VIPOR_HBarL);  bValue = bValue >> 4;	for(__bTFTSetupOSD_Temp2=1;__bTFTSetupOSD_Temp2<bValue;__bTFTSetupOSD_Temp2++)	{		Vipor_SetOneCharContent(_VIPOR_HBar6);	}	for(__bTFTSetupOSD_Temp2=bValue;__bTFTSetupOSD_Temp2<TFT_SETUP_VALUE_LEVEL;__bTFTSetupOSD_Temp2++)	{		Vipor_SetOneCharContent(_VIPOR_HBar0);	}	Vipor_SetOneCharContent(_VIPOR_HBarR);}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTOSD_SetupFillBar// Description :fill or empty bar progress// input      //--------------------------------------------------------------------------void TFTOSD_SetupFillBar(BYTE  bFill,BYTE bId,BYTE bValue){	__bTFTSetupOSD_Temp1=bId+TFT_SETUPOSD_ItemStartY;	__bTFTSetupOSD_Temp2=TFT_SETUPOSD_ValueStartX+bValue;	if(bFill)	{		Vipor_PrintString(__bTFTSetupOSD_Temp1,						__bTFTSetupOSD_Temp2,						TFT_SETUPOSD_OSDColor,						(BYTE*) &Vipor_OsdBar_Full_String);	}	else	{		Vipor_PrintString(__bTFTSetupOSD_Temp1,						__bTFTSetupOSD_Temp2,						TFT_SETUPOSD_OSDColor,						(BYTE*) &Vipor_OsdBar_Empty_String);	}}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTSetup_ReadSetupData// Description :read data from eprom// input      //--------------------------------------------------------------------------extern void DVDSETUP_SetDefaultTFTAttribute(void);void TFTSetup_ReadSetupData(void){	HAL_ReadStorage(TFT_ADDR_BIRHGTNESS, &(__TFTPicAttr.bBrightness), 1);	HAL_ReadStorage(TFT_ADDR_CONTRAST, &(__TFTPicAttr.bContrast), 1);	HAL_ReadStorage(TFT_ADDR_SATURATION, &(__TFTPicAttr.bSaturation), 1);

#ifdef IMAGE_FRAME_SETUP
    DVDSETUP_SetDefaultTFTAttribute();
#else
    if((__TFTPicAttr.bBrightness>TFT_SETUP_VALUE_LEVEL)||(__TFTPicAttr.bBrightness==0))
        __TFTPicAttr.bBrightness=TFT_SETUP_BRIGHTNESS_DEFAULT_LEVEL;
    
    if((__TFTPicAttr.bContrast>=TFT_SETUP_VALUE_LEVEL)||(__TFTPicAttr.bContrast==0))
        __TFTPicAttr.bContrast=TFT_SETUP_CONTRAST_DEFAULT_LEVEL;
    
    if((__TFTPicAttr.bSaturation>=TFT_SETUP_VALUE_LEVEL)||(__TFTPicAttr.bSaturation==0))
        __TFTPicAttr.bSaturation=TFT_SETUP_SATURATION_DEFAULT_LEVEL;
#endif //IMAGE_FRAME_SETUP}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTSetup_WriteSetupData// Description :write data to eprom// input      //--------------------------------------------------------------------------void TFTSetup_WriteSetupData(void){	HAL_WriteStorage(TFT_ADDR_BIRHGTNESS, &(__TFTPicAttr.bBrightness), 1);	HAL_WriteStorage(TFT_ADDR_CONTRAST, &(__TFTPicAttr.bContrast), 1);	HAL_WriteStorage(TFT_ADDR_SATURATION, &(__TFTPicAttr.bSaturation), 1);}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTSetup_SetSetupDataDefault// Description :set setup data to default value and write it to eprom// input      //--------------------------------------------------------------------------void TFTSetup_SetSetupDataDefault(void){
#ifdef IMAGE_FRAME_SETUP
    __TFTPicAttr.bBrightness=SETUP_DEFAULT_TFT_BRIGHTNESS;
    __TFTPicAttr.bContrast=SETUP_DEFAULT_TFT_CONTRAST;
    __TFTPicAttr.bSaturation=SETUP_DEFAULT_TFT_SATURATION;
#else    __TFTPicAttr.bBrightness=TFT_SETUP_BRIGHTNESS_DEFAULT_LEVEL;    __TFTPicAttr.bContrast=TFT_SETUP_CONTRAST_DEFAULT_LEVEL;    __TFTPicAttr.bSaturation=TFT_SETUP_SATURATION_DEFAULT_LEVEL;
#endif //IMAGE_FRAME_SETUP
    TFTSetup_WriteSetupData();}//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTSetup_SetPicAttr// Description :transfer eprom data to VP77 register value // input      //--------------------------------------------------------------------------void TFTSetup_SetPicAttr(void){	TFTSetup_ReadSetupData();

#ifdef IMAGE_FRAME_SETUP
    Vipor_SetPicture_Brightness(TFT_BRIGHTNESS_VALUE_LIST[__TFTPicAttr.bBrightness-SETUP_DISPLAY_TFT_BRIGHTNESS_BEGIN]);
    Vipor_SetPicture_Contrast(TFT_CONTRAST_VALUE_LIST[__TFTPicAttr.bContrast-SETUP_DISPLAY_TFT_CONTRAST_BEGIN]);
    Vipor_SetPicture_Saturation(TFT_SATURATION_VALUE_LIST[__TFTPicAttr.bSaturation-SETUP_DISPLAY_TFT_SATURATION_BEGIN]);
#else	Vipor_SetPicture_Brightness(TFT_BRIGHTNESS_VALUE_LIST[__TFTPicAttr.bBrightness-1]);	Vipor_SetPicture_Contrast(TFT_CONTRAST_VALUE_LIST[__TFTPicAttr.bContrast-1]);	Vipor_SetPicture_Saturation(TFT_SATURATION_VALUE_LIST[__TFTPicAttr.bSaturation-1]);
#endif //IMAGE_FRAME_SETUP}#ifdef MUSTEK_RING_BRIGHTBYTE code TFTOSD_BR_String[] = { _VIPOR_B, _VIPOR_R, _VIPOR_I, _VIPOR_G, _VIPOR_H, _VIPOR_T, _VIPOR_N, _VIPOR_E, _VIPOR_S, _VIPOR_S, _VIPOR_EOF };BYTE _bLEVEL_ID=0x08;BYTE show_string[1];void  show_num_string(BYTE _bLEVEL){    show_string [0] = _bLEVEL+1;    show_string [1] = _VIPOR_EOF;}    void show_BRIGHT_MENU(BYTE _bLEVEL){	Vipor_PrintString(13,4,TFT_SETUPOSD_OSDColor,(BYTE*) &TFTOSD_BR_String);	show_num_string(_bLEVEL);	Vipor_PrintString_ALL(13,15,TFT_SETUPOSD_OSDColor,(BYTE*) &show_string);}	#endif//*******************************************************************************//--------------------------------------------------------------------------// Function    : TFTSetup_ProcessKey// Description :process key // input      //--------------------------------------------------------------------------#ifdef SetPicture_ALLBYTE code TFTOSD_BR_String[] = { _VIPOR_B,	_VIPOR_R,	_VIPOR_EOF };BYTE code TFTOSD_CO_String[] = { _VIPOR_C,	_VIPOR_O,	_VIPOR_EOF };BYTE code TFTOSD_HU_String[] = { _VIPOR_H,	_VIPOR_U,	_VIPOR_EOF };BYTE code TFTOSD_SA_String[] = { _VIPOR_S,	_VIPOR_A,	_VIPOR_EOF };BYTE code TFTOSD_RG_String[] = { _VIPOR_R,	_VIPOR_G,	_VIPOR_EOF };BYTE code TFTOSD_GG_String[] = { _VIPOR_G,	_VIPOR_G,	_VIPOR_EOF };BYTE code TFTOSD_BG_String[] = { _VIPOR_B,	_VIPOR_G,	_VIPOR_EOF };BYTE code TFTOSD_RO_String[] = { _VIPOR_R,	_VIPOR_O,	_VIPOR_EOF };BYTE code TFTOSD_GO_String[] = { _VIPOR_G,	_VIPOR_O,	_VIPOR_EOF };BYTE code TFTOSD_BO_String[] = { _VIPOR_B,	_VIPOR_O,	_VIPOR_EOF };BYTE show_string[3];BYTE _bLEVEL_TABLE[] = {0,128,128,128,128,128,128,128,128,128};BYTE _bLEVEL_ID=0;void  show_num_string(BYTE _bLEVEL)

⌨️ 快捷键说明

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