/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 04/10/06 5:30p $ ****************/
/*************** $Revision:: 2 $ ****************/
/*************** ****************/
/*************** Description : TV Encoder Module ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : Alan Hsu ****************/
/**********************************************************************/
#define _C_TVE_
#include "general.h"
#pragma NOAREGS
#ifndef MTK_TVE /* for external TVE only */
#if (defined(_CS4954_) || defined(_CS4955_))
/*xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
x CS4954 NTSC/PAL Digital Video Encoder x
x--------------------------------------------------------------------x
x Device Addr = 0x00 x
x--------------------------------------------------------------------x
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/
// *********************************************************************
// Define TV Multi-Standard Output Format Configuration
// *********************************************************************
BYTE code NTSC[7] = {0x01, 0x02, 0x1C, 0x3E, 0xF8, 0xE0, 0x43};
BYTE code NTSCJ_BT601[7] = {0x01, 0x00, 0x1C, 0x3E, 0xF8, 0xE0, 0x43};
BYTE code NTSCM_RS170[7] = {0x21, 0x06, 0x1C, 0x3E, 0xF8, 0xE0, 0x43};
BYTE code PAL[7] = {0x41, 0x00, 0x15, 0x96, 0x15, 0x13, 0x54};
BYTE code PAL_M[7] = {0x61, 0x02, 0x15, 0xC7, 0xDF, 0xCD, 0x43};
BYTE code PAL_N[7] = {0xA1, 0x00, 0x15, 0x96, 0x15, 0x13, 0x54};
BYTE code PAL_NC[7] = {0x81, 0x00, 0x15, 0x8C, 0x28, 0xED, 0x43};
/************************************************************************
Function : BOOL fgTvI2CDataWrite(BYTE bData_Addr, BYTE *prData)
Description : ByteWrite Routine
Parameter : bData_Addr -> Data Address
*prData -> Data Content Pointer
Return : TRUE : successful with ACK from slave
FALSE : bus (SCL = 0) or ACK failure
************************************************************************/
BOOL fgTvI2CDataWrite(BYTE bData_Addr, BYTE bData) large
{
#ifdef USE_3W_SIF
return (fgI2CByteWrite(0x00, bData_Addr, bData));
#else
BYTE bDevice = 0x00;
bDevice = bDevice << 1; // Shift the 7-bit address to 7+1 format
if(!fgI2CStart(bDevice)) // Write Command
{
return(FALSE); // Device Address exceeds the range
}
if(!fgI2CSend(bData_Addr)) // Word Address
{
return(FALSE); // Device Address exceeds the range
}
if(!fgI2CSend(bData)) // Data Content Write
{
return(FALSE); // Device Address exceeds the range
}
vI2CStop();
return(TRUE);
#endif /* USE_3W_SIF */
}
/************************************************************************
Function : BOOL fgTvI2C_DataRead(BYTE bData_Addr, BYTE *prData)
Description : DataRead Routine
Parameter : bDevice -> Device Address
bData_Addr -> Data Address
bDataCount -> Data Content Cont
*prData -> Data Content Pointer
Return : TRUE : successful with ACK from slave
FALSE : bus (SCL = 0) or ACK failure
************************************************************************/
BOOL fgTvI2CDataRead(BYTE bData_Addr, BYTE *prData) large
{
#ifdef USE_3W_SIF
return (fgI2CByteRead(0x00, bData_Addr, prData));
#else
BYTE bDevice = 0x00;
bDevice = bDevice << 1; // Shift the 7-bit address to 7+1 format
if(!fgI2CStart(bDevice)) // Write Command
{
return(FALSE); // Start fail
}
if(!fgI2CSend(bData_Addr))// Word Address
{
return(FALSE); // Data Address Fail
}
// Step 2 : Real Read
bDevice = bDevice + 1; // Shift the 7-bit address to 7+1 format
if(!fgI2CStart(bDevice)) // Read Command
{
return(FALSE); // Start fail
}
vI2CRead(prData, FG_RANDREAD); // Data Content Read
// Step 3 : Stop
vI2CStop();
return (TRUE);
#endif /* USE_3W_SIF */
}
/************************************************************************
Function : void vTvSetFormat(BYTE *pbFormat)
Description : Setting Output Format
Parameter : 0->NTSC, 1->PAL, 2->NTSCJ_BT601, 3->NTSCM_RS170
4->PAL_M, 5->PAL_N, 6->PAL_NC, default->NTSC
Return : NONE
************************************************************************/
void vTvSetFormat(BYTE bTvType) large
{
BYTE code *pbFmt;
BYTE bData, bType;
switch(bTvType)
{
case TV_PAL:
pbFmt = PAL;
break;
case TV_NTSCJ_BT601:
pbFmt = NTSCJ_BT601;
break;
case TV_NTSCM_RS170:
pbFmt = NTSCM_RS170;
break;
case TV_PAL_M:
pbFmt = PAL_M;
break;
case TV_PAL_N:
pbFmt = PAL_N;
break;
case TV_PAL_NC:
pbFmt = PAL_NC;
break;
case TV_NTSC:
default:
pbFmt = NTSC;
break;
}
fgTvI2CDataRead(0x00, &bData);
#ifdef ENCODER_MASTER
bData = (bData & 0x02) + pbFmt[0] + 0x10;
#else
bData = (bData & 0x02) + pbFmt[0];
#endif
fgTvI2CDataWrite(0x00, bData);
fgTvI2CDataRead(0x01, &bData);
bData = (bData & 0xF8) + pbFmt[1];
#ifdef NO_PEDESTAL_OFFSET
if(pbFmt[1] & 0x02)
{
bData = bData - 0x02;
}
#endif
fgTvI2CDataWrite(0x01, bData);
fgTvI2CDataWrite(0x10, pbFmt[2]);
fgTvI2CDataWrite(0x11, pbFmt[3]);
fgTvI2CDataWrite(0x12, pbFmt[4]);
fgTvI2CDataWrite(0x13, pbFmt[5]);
fgTvI2CDataWrite(0x14, pbFmt[6]);
bType = bSharedInfo(SI_TVE_MVTYPE);
if (bType != 0x00)
{
if (bTvType != TV_NTSC)
{
bType = 4;
}
}
MVisionChangeType(bType);
}
/************************************************************************
Function : void vTvAmpAdjust(BYTE bType, BYTE bData)
Description : Write Amplitude Adjust Register(0x22 ~ 0x28)
Parameter : bType : 0->U/Cb, 1->V/Cr, 2->Y/Luma,
3->Red, 4->Green,5->Blue, 6->Bright
bData : Amplitude coefficient
Return : NONE
************************************************************************/
void vTvAmpAdjust(BYTE bType, BYTE bData) large
{
switch(bType)
{
case 0:
fgTvI2CDataWrite(0x22, bData);
break;
case 1:
fgTvI2CDataWrite(0x23, bData);
break;
case 2:
fgTvI2CDataWrite(0x24, bData);
break;
case 3:
fgTvI2CDataWrite(0x25, bData);
break;
case 4:
fgTvI2CDataWrite(0x26, bData);
break;
case 5:
fgTvI2CDataWrite(0x27, bData);
break;
case 6:
fgTvI2CDataWrite(0x28, bData);
break;
}
}
/************************************************************************
Function : void vTvDacEnable(BYTE bType, BYTE bEnable)
Description : Enable or Disable DACWrite(0x05)
Parameter : bType : 0->Blue, 1->Green, 2->Red, 0x20->B/G/R
3->Chroma, 4->Luma, 0x40-> C/L, 5->Composite 0
0xFF -> All
bEnable : 0->Disable, 1->Enable, 0xF0-> High-I, 0x0F->L-I
Return : NONE
************************************************************************/
void vTvDacEnable(BYTE bType, BYTE bEnable) large
{
BYTE bData;
fgTvI2CDataRead(0x05, &bData);
if(bEnable == 0xF0) //High-Impedance
{
bData = (bData & 0xBF) + 0x40;
}
else if(bEnable == 0x0F) //Low-Impedance
{
bData = bData & 0
没有合适的资源?快使用搜索试试~ 我知道了~
dvd.rar_dvd_操作界面软件
共140个文件
obj:33个
c:31个
h:30个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 17 浏览量
2022-09-20
15:00:58
上传
评论
收藏 1.18MB RAR 举报
温馨提示
您拥有了这个可以自己更该界面等,简单的软件更该操作
资源推荐
资源详情
资源评论
收起资源包目录
dvd.rar_dvd_操作界面软件 (140个子文件)
a 21KB
l51bank2.a51 10KB
startup.a51 7KB
l51bank8.a51 5KB
l51bank4.a51 5KB
nui_5b.bat 5KB
nui_c.bat 5KB
nui_5b_2f.bat 4KB
nui_bas.bat 4KB
nui_simp.bat 4KB
nui.bat 4KB
mg79_orom.bat 1KB
mg79_irom.bat 1KB
mg79_cmn.bat 1KB
mg_norom.bat 1KB
mg79.bat 1KB
dl.bat 40B
CLEAN.BAT 38B
do2.bat 27B
DO.BAT 24B
DO_C.BAT 23B
mg_cmn.bat 17B
mg.bat 13B
target.bin 476KB
tve.c 66KB
ADAC.c 60KB
init.c 59KB
osd8032.c 58KB
read.c 58KB
eeprom.c 57KB
dvdram.c 43KB
discinfo.c 43KB
servo.c 38KB
power.c 35KB
isr.c 31KB
cdvdcmd.c 30KB
misc.c 28KB
flash.c 26KB
ir_recv.c 23KB
drs232.c 23KB
init79.c 19KB
init1.c 19KB
main.c 16KB
I2C.c 16KB
ado_in.c 14KB
mem.c 14KB
SPI.c 13KB
gpioctrl.c 9KB
shm_chk.c 9KB
timer.c 7KB
shareinf.c 7KB
post.c 4KB
ServoPin.c 3KB
codec.c 1KB
codecext.c 383B
miscasm.c51 2KB
bl5_cmn.dat 4KB
bl4_nui.dat 4KB
bl5_nui.dat 4KB
bl5_nsv.dat 3KB
bl5_nuic.dat 3KB
bl3_nui.dat 3KB
merge_norom.exe 240KB
MERGE.EXE 232KB
Sed15.exe 36KB
mt1389.h 83KB
mt1379.h 70KB
config.h 69KB
vendor.h 69KB
pindef.h 46KB
nuiwb.h 39KB
macro.h 26KB
2362.H 17KB
srv2dec.h 17KB
HD60.H 17KB
khm330.h 17KB
common.h 17KB
khm280.h 17KB
Matsushita.H 17KB
vardef.h 16KB
procdef.h 15KB
eeprom.h 13KB
system.h 13KB
nuiwbpub.h 11KB
dec2srv.h 10KB
osd8032.h 9KB
nui_clr.h 8KB
keydef.h 7KB
ServoPin.h 5KB
general.h 5KB
player.h 4KB
typedef.h 3KB
servo.h 2KB
version.h 2KB
shareusr.h 2KB
khm280.LIB 149KB
Matsushita.LIB 149KB
2362.LIB 143KB
servo.lib 143KB
hd60.lib 141KB
共 140 条
- 1
- 2
资源评论
小贝德罗
- 粉丝: 70
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功