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

📄 page.c

📁 用51单片机实现的在屏幕上显视文字,外接一颗MT230OSDIC
💻 C
字号:
#include "golbal.h"

BYTE data MaxValue;
BYTE data MinValue;
BYTE data WorkValue;

enum MODE
{
  Brightness=1,
  Color,
  Contrast,
  Tint,
  DisplayMode
};

BYTE code Mode[5][13]=
{
  {_B,_r,_g,_h,_t,_n,_e,_s,_s,__,__,__,DataEnd},
  {_C,_o,_l,_o,_r,__,__,__,__,__,__,__,DataEnd},
  {_C,_o,_n,_t,_r,_a,_s,_t,__,__,__,__,DataEnd},
  {_T,_i,_n,_t,__,__,__,__,__,__,__,__,DataEnd},
  {_D,_i,_s,_p,_l,_a,_y,__,_M,_o,_d,_e,DataEnd}
};

BYTE code FactoryMode[12][17]=
{
  {_O,_u,_t,_UNDERLINE,_L,_i,_m,_i,_t,__,__,__,__,__,__,__,DataEnd},
  {_S,_u,_b,_UNDERLINE,_B,_r,_i,_g,_h,_t,_UNDERLINE,_R,_SLASH,_B,__,DataEnd},
  {_C,_o,_m,_UNDERLINE,_A,_m,_p,__,__,__,__,__,__,__,__,DataEnd},
  {_D,_A,_C,_UNDERLINE,_O,_u,_t,__,__,__,__,__,__,__,__,DataEnd},
  {_R,_G,_B,_UNDERLINE,_A,_m,_p,__,__,__,__,__,__,__,__,DataEnd},
  {_G,_a,_m,_m,_a,__,__,__,__,__,__,__,__,__,__,DataEnd},
  {_C,_o,_m,_UNDERLINE,_B,_l,_a,_c,_k,_UNDERLINE,_L,_e,_v,_e,_l,DataEnd},
  {_P,_h,_a,_s,_e,__,__,__,__,__,__,__,__,__,__,DataEnd},
  {_B,_r,_i,_g,_h,_t,__,__,__,__,__,__,__,__,__,DataEnd},
  {_C,_o,_l,_o,_r,__,__,__,__,__,__,__,__,__,__,DataEnd},
  {_C,_o,_n,_t,_r,_a,_s,_t,__,__,__,__,__,__,__,DataEnd},
  {_P,_i,_c,_t,_u,_r,_e,__,__,__,__,__,__,__,__,DataEnd}
};

BYTE code Display_Mode[2][5]=
{
{_1,_6,_COM,_9,DataEnd},
{_4,_COM,_3,__,DataEnd}
};

void ModeSelect()
{
  ModePressCount++;

  if(ModePressCount>DisplayMode)
  	{
	ModePressCount=0;
	CloseOSD();
  	} 

  if(ModePressCount!=0)
  {
   SetWindow(0, 23, 6, 9, cyan, 1);  
  gotoxy(1,7);
  switch(ModePressCount)	
	{
	case Brightness:		
		PrintChar(_Brightness_L, red, 0);
		PrintChar(_Brightness_R, red, 0);
		PrintString(Mode[0], yellow);
		
		//IICRead(BYTE slave, BYTE address, BYTE count)
		break;

	case Color:
		PrintChar(_Color_L, red, 0);
		PrintChar(_Color_R, red, 0);
		PrintString(Mode[1], yellow);
		
		//IICRead(BYTE slave, BYTE address, BYTE count)		
		break;
		
	case Contrast:
		PrintChar(_Contrast_L, red, 0);
		PrintChar(_Contrast_R, red, 0);
		PrintString(Mode[2], yellow);
		
		//IICRead(BYTE slave, BYTE address, BYTE count)
		break;

	case Tint:
		PrintChar(_Tint_L, red, 0);
		PrintChar(_Tint_R, red, 0);
		PrintString(Mode[3], yellow);
		
		//IICRead(BYTE slave, BYTE address, BYTE count)
		break;

	case DisplayMode:
		
		PrintString(Display_Mode[0], yellow);
		
		//IICRead(BYTE slave, BYTE address, BYTE count)
		break;

	default:
		break;
  	}
  	
 	WorkValue=IICBuf.ByteArray[0];	
	PrintOneBar(1, 8, green);	
	
    }


}

void ValueAdjust()
{
   if((KeyCode==Up_Key)&&(ModePressCount!=0))
  	{
  	WorkValue++;
	}
  else
  	if((KeyCode==Down_Key)&&(ModePressCount!=0))
  		{
  		WorkValue--;
		}  
  
  PrintOneBar(1, 8, green);	

  switch(ModePressCount)
  	{
	case Brightness:
		IICWrite(EEPROM_ADDRESS, Brightness_add, 1);
		IICBuf.ByteArray[0]=WorkValue;
		break;

	case Color:
		IICWrite(EEPROM_ADDRESS,  Color_add, 1);
		IICBuf.ByteArray[0]=WorkValue;
		break;

	case Contrast:
		IICWrite(EEPROM_ADDRESS, Contrast_add, 1);
		IICBuf.ByteArray[0]=WorkValue;
		break;

	case Tint:
		IICWrite(EEPROM_ADDRESS,  Tint_add, 1);
		IICBuf.ByteArray[0]=WorkValue;
		break;

	case DisplayMode:
		IICWrite(EEPROM_ADDRESS,  DisplayMode_add, 1);
		IICBuf.ByteArray[0]=WorkValue;
		break;

	default:
		break;
	
        }
}

void BrightnessAdjust()
{   
	ModePressCount=1;
	
	SetWindow(0, 23, 6, 9, cyan, 1);  
  	gotoxy(1,7);
	PrintChar(_Brightness_L, red, 0);
	PrintChar(_Brightness_R, red, 0);
	PrintString(Mode[0], yellow);

	//IICRead(BYTE slave, BYTE address, BYTE count)
	
 	WorkValue=IICBuf.ByteArray[0];	
	PrintOneBar(1, 8, green);	
}

void ContrastAdjust()
{   
	ModePressCount=3;
	
	SetWindow(0, 23, 6, 9, cyan, 1);  
 	gotoxy(1,7);
	PrintChar(_Contrast_L, red, 0);
	PrintChar(_Contrast_R, red, 0);
	PrintString(Mode[2], yellow);
		
	//IICRead(BYTE slave, BYTE address, BYTE count)
  	
 	WorkValue=IICBuf.ByteArray[0];	
	PrintOneBar(1, 8, green);		
}

⌨️ 快捷键说明

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