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

📄 t112osd.c

📁 T112 MCU源程码,用于T112外接MCU篇程,用来驱动模拟屏
💻 C
字号:
#include <reg51.h>
#include "common.h"
#include "System.h"
#include "OSDDROW.H"
#include "TwoWire.h"
#include "TW10xReg.h"
#include "T112W12H16.h"
#include "DEF.h"


extern uCHAR Pauto;
extern uCHAR row_num;
code unsigned char font_null[]=	 {0, 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_bright[]={0,'D','E','B','R','I','G','H','T',0xff};
code unsigned char font_comp[]	={0,'F','J','C','O','N', 0 , 0 , 0 ,0xff};
code unsigned char font_color[]	={0,'K','M','C','O','L','O','R', 0 ,0xff};
code unsigned char font_ntsc[]	={0, 0 ,0,0,0,0,0, 0 ,'N','T', 4 ,'C', 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_pal[]	={0, 0 ,0,0,0,0,0, 0 , 5 ,'A','L', 0 , 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_tauto[]	={0, 0 ,0,0,0,0,0, 0 ,'A','P','T','O', 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_auto[]	={0, 0, 0,0,0, 0 , 0 , 0 ,'A','P','T','O', 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_on[]	={0,'O','N', 0 , 0 , 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};
code unsigned char font_off[]	={0,'O','Q','Q' , 0 , 0 , 0 , 0 , 0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xff};

code unsigned char *page1_Fonts[]={font_null,font_bright,font_comp,font_color,font_ntsc,font_pal,font_auto,font_on,font_off,font_tauto};


void OSDInit(void)
{
	unsigned int i,j;
	OSDCfgWr(OSD_CTRL,0x18);             			   			///disable osd and width*1

	OSDCfgWr(CHAR_FONT_SIZE,FONT_SIZE);							///CHAR_FONT_SIZE=0x0d;FONT_SIZE=FONT_SIZE12W18H;

	OSDCfgWr(CHAR_RAM_BASE_A,CHAR_MAIN_MENU_START);    			///To setup character index start address.
                                                       			///If start address is 0x9c0,
                                                       			///You have get ((0x9c0 >> 5) & 0x7f) to store it
	OSDCfgWr(CHAR_RAM_END_A,CHAR_RAM_END);             			///This is to set index end address.
  	OSDCfgWr(BLINK_CTRL,0x09);
    OSDCfgWr(ALPHA_BLD_CTRL,0x84);       
	OSDLoadColor();  
	OSDSetRamAddr(FONT_DATA_START_ADDRESS);
	twdWr_Burst_A(OSD_RAM_DL);
	
	for(j=0;j<TOTAL_FONT_NUM;j++)	
	{
		for(i=0; i<FONT_HEIGHT; i++)
		{
			twdWr_Burst_D(AllFonts[j][2*i]);
			twdWr_Burst_D(AllFonts[j][2*i+1]);
		}
	}
	for(i=(TOTAL_FONT_NUM+1)*FONT_HEIGHT; i<0x400; i++)
	{
		twdWr_Burst_D(0);
		twdWr_Burst_D(0);	
	}
 	twdWr_Burst_P();	
	for(i=0;i<OSD_LINE_NUM;i++)
	{
		OSDCleanLine(0,i,0,31);
		OSDSetLineAttribute(i,0x80);
	}
}

void OSDShowpage2(void)										///内部调节菜单
{
	uCHAR i;
 	OSDDisable();
	for(i=0;i<10;i++)
  	{
  		OSDCleanLine(0,i,0,30);
     	OSDSetLineAttribute(i,0x80);
	}
	OSDPosition(CENTER);
	switch(row_num)
	{
		case 0:
				OSDShowLine(page1_Fonts[4],0,1,0x06,21);	
				break;
		case 1:
				OSDShowLine(page1_Fonts[5],0,1,0x06,21);	
				break;
		case 2:
				OSDShowLine(page1_Fonts[9],0,1,0x06,21);	
				break;
	}
	OSDEnable();
}


⌨️ 快捷键说明

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