?? exper.c
字號:
break;
}*/
}
void ShowFreqSelect()
{
OpenOSDWindow(0,1,1,25,12,blue,0);
gotoxy(4,2);
PrintString(ShowSW1,4,yellow);
gotoxy(9,2);
PrintString(Freqselect31,14,yellow);
gotoxy(4,4);
PrintString(ShowSW2,4,yellow);
gotoxy(9,4);
PrintString(Freqselect47,14,yellow);
gotoxy(4,6);
PrintString(ShowSW3,4,yellow);
gotoxy(9,6);
PrintString(Freqselect63,14,yellow);
gotoxy(4,8);
PrintString(ShowSW4,4,yellow);
gotoxy(9,8);
PrintString(Freqselect95,14,yellow);
gotoxy(4,10);
PrintString(AutoTest,12,red);
gotoxy(4,11);
PrintString(SingleTest,14,red);
}
void ShowCharDemos()
{
//uchar i;
ResetKey();
ClearOSD();
//InitOSD();
TurnOSD(1);
KeyLayer1=0;
KeyLayer2=0;
KeyLayer3=1;
KeyLayer4=0;
ShowFreqSelect();
WaitKeyup();//**************
while(KeyLayer3!=0)
{
//Showsymboladdr();
if((KeySelect1==1)&&(KeyLayer3==1))
{
delay(50);
ResetKey();
SendMtv212(0x21);
Freqflag=1;
ChangeHORR(Freqflag);
}
if((KeySelect2==1)&&(KeyLayer3==1))
{
delay(50);
ResetKey();
SendMtv212(0x29);
Freqflag=2;
ChangeHORR(Freqflag);
}
if((KeySelect3==1)&&(KeyLayer3==1))
{
delay(50);
ResetKey();
SendMtv212(0x31);
Freqflag=3;
ChangeHORR(Freqflag);
}
if((KeySelect4==1)&&(KeyLayer3==1))
{
delay(50);
ResetKey();
SendMtv212(0x39);
Freqflag=4;
ChangeHORR(Freqflag);
}
if((KeySelect5==1)&&(KeyLayer3==1))
{ SingleOSDflag=1;//made the upper settings to be of no use
AutoDemo();
KeyLayer3=0;
KeyLayer1=1;
Freqflag=2;//set to initial value
ThirdMenuFlg=0;
MainMenuFlg=1;//back to the mainmenu
break;
}
if((KeySelect6==1)&&(KeyLayer3==1))
{
delay(150);
KeyLayer4=0;
KeyLayer3=0;
KeyLayer2=1;
KeyLayer1=0;
//ResetKey();
MainMenuFlg=0;
SecondMenuFlg=1;
ClearOSD();
//SendMtv212(0x21);
ResetKey();
SingleOSDflag=0;//the flag sign autodemo or singledemo
SingleDemo(Freqflag);//single moudle test
}
if(ThirdMenuFlg==1)
{
ThirdMenuFlg=0;
ShowFreqSelect();
}
}
}
void Char_demo() //change frequency
{
// SelectFreq();
ShowCharDemos();
}
void KeyControl()
{
int counter;
ResetKey();//now detect the key Press
for(counter=0;counter<20;counter++)//window last for 1 seconds
{delay(50);
if(KeySelect1==1)//pause the test
{WaitKeyup();//************************
while(1)
{if(KeySelect1==1)//continue the test
{ WaitKeyup();
break;
}
if(KeySelect4==1)//jump out ,dont resetkey
break;
}//end of while(1)
}//end of if keyselect1==1
if(KeySelect4==1)//jump to next test
{
ResetKey();
break;
}
}//end of for()
}
void Frame_keycontrol()
{
if(KeySelect1==1)
{
WaitKeyup();//*************************
while(1)
{
if(KeySelect1==1)
{WaitKeyup();//******************
break;
}
if(KeySelect4==1)
{ResetKey();
Frame_nextflag=1;
break;
}
}//end of while(1)
}//end of if keyselect1==1
if(KeySelect4==1)
{
ResetKey();
Frame_nextflag=1;
}
}
void FullScreenDemo()
{
uchar i,j;
uchar flash=0;
uchar silent=0;
ClearOSD();
//Initmoudletest31();
ResetKey();
OpenOSDWindow(0,0,0,29,14,blue,0);
for(i=0;i<30;i++)
for(j=0;j<15;j++)
{
PutChar(0x75,green);
}//character 'h'
SendOSDCmd(15,17,0x7f&OSD_C17);
delay(100);
SendOSDCmd(15,17,0x80|OSD_C17);
KeyControl();//detect the keypress
// SendOSDCmd(15,17,0x80|OSD_C17);
// delay(1000);//no flash for 1.5 seconds
OpenOSDWindow(0,0,0,29,14,red,0);
for(i=0;i<30;i++)
for(j=0;j<15;j++)
{
PutChar(85,green);
}
KeyControl();//detect the keyprss
}
void Showtest31()
{
ClearOSD();
OpenOSDWindow(0,8,5,23,9,blue,0);
gotoxy(9,7);
PrintString(TestFreq31,13,red);
}
void Showtest47()
{
ClearOSD();
OpenOSDWindow(0,8,5,23,9,blue,0);
gotoxy(9,7);
PrintString(TestFreq47,13,red);
}
void Showtest63()
{
ClearOSD();
OpenOSDWindow(0,8,5,23,9,blue,0);
gotoxy(9,7);
PrintString(TestFreq63,13,red);
}
void Showtest95()
{
ClearOSD();
OpenOSDWindow(0,8,5,23,9,blue,0);
gotoxy(9,7);
PrintString(TestFreq95,13,red);
}
void ShowallfontDemo()
{
int i=0,j=0;
ClearOSD();
//Initmoudletest();
OpenOSDWindow(1,0,1,29,13,cyan,0);
OpenOSDWindow(2,0,0,29,14,blue,0);
gotoxy(8,0);
for(i=0;i<13;i++)
PutChar(OSDFontall[i],7);
gotoxy(0,14);
PrintString(FrameSw1,18,white);
gotoxy(18,14);
PrintString(FrameSw4,12,white);
gotoxy(0,1);
for(i=0;i<256;i++)
{
if(i%30==0)
{
j++;
if(j==3) j++;
if(j>=8) j=1; //omit black
}
PutChar(i,j);
}
for(i=0;i<128;i++)
{
if((i+16)%30==0)
{
j++;
if(j==3) j++;
if(j>=8) j=1;
}
PutPage2Char(i,j);
}
KeyControl();//detect the keyprss
}
void Frame_shadow()
{
uchar reg=0x80,shadow=0;
int i;
Frame_nextflag=0;
ClearOSD();
OpenOSDWindow(1,0,0,27,12,blue,0);
gotoxy(5,4);
PrintString(Bordershadow,13,white);
gotoxy(5,10);
PrintString(FrameSw1,18,white);
gotoxy(5,11);
PrintString(FrameSw4,12,white);
//gotoxy(5,12);
// PrintString(FrameSw6,12,white);
ResetKey();//add here ,cant add inside Frame_keycontrol
for(i=0;i<5;i++)//detect the key press in 1 second
{delay(100);
Frame_keycontrol();
}
ResetKey();//add here ,cant add inside Frame_keycontrol
for(;shadow<2;shadow++)
{if(Frame_nextflag==0)
{
switch(shadow)
{
case 0:
reg &= 0x9f;
break;
case 1:
reg &= 0x9f;
reg |= 0x40;
break;
case 2:
reg &= 0x9f;
reg |= 0x60;
break;
}
SendOSDCmd(15,17,reg);
}
else break;
for(i=0;i<5;i++)//detect the key press
{delay(100);
Frame_keycontrol();
}
}
}
void Frame_toggle()
{
uchar reg=0x80,fbkg=0;
int i;
Frame_nextflag=0;
ClearOSD();
OpenOSDWindow(1,0,0,27,12,blue,0);
gotoxy(5,4);
PrintString(ToggleFbkgc,12,white);
gotoxy(5,10);
PrintString(FrameSw1,18,white);
gotoxy(5,11);
PrintString(FrameSw4,12,white);
//gotoxy(5,12);
//PrintString(FrameSw6,12,white);
ResetKey();//add here ,cant add inside Frame_keycontrol
for(i=0;i<5;i++)//detect the key press in 1 second
{delay(100);
Frame_keycontrol();
}
ResetKey();//add here ,cant add inside Frame_keycontrol
for(;fbkg<=4;fbkg++)
{if(Frame_nextflag==0)
{
switch(fbkg)
{
case 0:
reg &= 0xfe;
SendOSDCmd(15,20,0x00);
break;
case 1:
reg |= 0x01;
SendOSDCmd(15,20,0x00);
break;
case 2:
reg &= 0xfe;
SendOSDCmd(15,20,0x86);
break;
case 3:
reg &= 0xfe;
SendOSDCmd(15,20,0x85);
break;
case 4:
reg &= 0xfe;
SendOSDCmd(15,20,0x83);
break;
}
SendOSDCmd(15,17,reg);//test
}
else break;
for(i=0;i<10;i++)//detect the key press in 1 second
{delay(100);
Frame_keycontrol();
}
}
SendOSDCmd(15,20,0x00);//Clear the toggle effect
}
void SingleDemo(uchar Fflag)
{
if(SingleOSDflag==1)//if man choose the autodemo
{ switch(Fflag)
{case 1: Test_Movedown=0x45;//set the max of moving,character height,row spacing
Test_Chhigh=0x31;
Test_Rowhigh=0x0c;
SendMtv212(0x21);
delay(250);
InitOSD31();
delay(50);
Showtest31();
delay(2000); break;//waitting for the CRT prepared
case 2: Test_Movedown=0x50;
Test_Chhigh=0x40;
Test_Rowhigh=0x0f;
SendMtv212(0x29);
delay(250);
InitOSD47();
delay(50);
Showtest47();
delay(2000); break;
case 3: Test_Movedown=0x90;
Test_Chhigh=0x60;
Test_Rowhigh=0x15;
SendMtv212(0x31);
delay(250);
InitOSD63();
delay(50);
Showtest63();
delay(2000); break;
case 4: Test_Movedown=0xef;
Test_Movedown=0x71;
Test_Rowhigh=0x1f;
SendMtv212(0x39);
delay(250);
InitOSD95();
delay(50);
Showtest95();
delay(2000); break;
}
}
else {switch(Fflag) //man choose the singledemo
{case 1:
Test_Movedown=0x45;//set the max of moving,character height,row spacing
Test_Chhigh=0x31;
Test_Rowhigh=0x0c;
Showtest31(); break;
case 2:
Test_Movedown=0x50;
Test_Chhigh=0x40;
Test_Rowhigh=0x0f;
Showtest47();break;
case 3:
Test_Movedown=0x90;
Test_Chhigh=0x60;
Test_Rowhigh=0x15;
Showtest63();break;
case 4:
Test_Movedown=0xef;
Test_Movedown=0x71;
Test_Rowhigh=0x1f;
Showtest95(); break;
}//end of switch
}//end of else
delay(1500);//delay 1.5 seconds to show the message
FullScreenDemo();
delay(200);//remove the key shaking
ShowallfontDemo();
delay(200);
OSDSizeDemo();
delay(200);
OSDColorDemo();
delay(200);
OSDWinDemo();
delay(200);
Frame_vhdelay();
delay(200);
Frame_chheight();
delay(200);
Framefmat();
delay(200);
Frame_shadow();
delay(200);
Frame_toggle();
delay(200);
}
void AutoDemo()
{
for(Freqflag=1;Freqflag<=4;Freqflag++)
{
SingleDemo(Freqflag);
}
}
void Demo()
{
delay(200);//去按鍵抖動
ClearOSD();
InitOSD();
TurnOSD(1);
//Initmoudletest63();
while(KeyLayer2!=0)
{
Char_demo();
}
SecondMenuFlg=0;
MainMenuFlg=1;
}
main()
{
int i=0;
StartPro:
//SendMtv212(0x29);
InitMicroP();
SendMtv212(0x21);
//for(i=0;i<10;i++)
delay(100);
//WAIT FOR mtv212 for stable
InitOSD();
delay(20);
//InitOSD();
TurnOSD(1);
InitialUserFont();
ResetKey();
MainMenuFlg=1;
Exitflag=0;
while(Exitflag==0)
{
if(MainMenuFlg==1)
{
ShowMain();
MainMenuFlg=0;
}
if((KeySelect1==1)&&(KeyLay
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -