#define EnableUseGammaTbl
#define _MSTAR_C_
#define _EnableFCC_
#define _VDCaptureSetting_
#define EnableUseModeTbl
#include <math.h>
#include "board.h"
#include "types.h"
#include "ms_reg.h"
#include "global.h"
#include "panel.h"
#include "adjust.h"
#include "ms_rwreg.h"
#include "DEBUG.h"
#include "misc.h"
#include "power.h"
#include "detect.h"
#include "msOsd.h"
#include "extlib.h"
#include "Valuetbl.h"
#include "msAce.h"
#include "userpref.h"
#include "mstar.h"
#include "DevVd.h"
#include "msVD.h"
#include "devvd_user.h"
#include "devtuner.h"
#include "Maria2_FSC_Lib.h"
#include "M9_VD_AGC_Lib.h"
#include "M2_VD_Std_Lib.h"
#if(ENABLE_VD_DSP)
#include "Maria2_dsp_lib.h"
#endif
#if (SCALER_TYPE==MARIA9)
#define SRCTYPE_VGA 1
#define SRCTYPE_YCBCR 2
#define SRCTYPE_CVBS 3
#define SRCTYPE_SVIDEO 4
#endif
//*******************************************************************
//
// Constant Definition
//
//*******************************************************************
//14.318 * 15 * 8 / 4 = 429.54, 429.54<<19=225202667.52, 429.54<<3=8=3436.32
#define DClkFactor 225202667ul
//*******************************************************************
//
// extern declaration
//
//*******************************************************************
//*******************************************************************
//
// local declaration
//
//*******************************************************************
#define SSCSTEP 0x119
#define SSCSPAN 0xEC
//*******************************************************************
//
//*******************************************************************
// Function Name: msInit(void)
//
// Description: Initialize mStar chip while 1st power on system
//
// Caller: msInitADC(), msInitTCON, msSetupFreeRunMode()
// msSetupInputPort() in mStar.c
// msWriteByte(), msWriteWord() in ms_rwreg.c
// msWriteDDC1(), msWriteDDC2() in ddc.c
// msInitGamma() in gamma.c
// Osd_InitOSD() in osd.c
// Callee: Init_Device() in main.c
//*******************************************************************
#ifdef EnableUseModeTbl
DynamicLoadModeTblType code tModeIndexTbl[]=
{
#if VGA_ENABLE
{
1<<Input_VGA,
MD_640x480_60,
t640_480_60Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_640x480_72,
t640_480_72Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_640x480_75,
t640_480_75Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_800x600_56,
t800_600_56Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_800x600_60,
t800_600_60Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_800x600_72,
t800_600_72Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_800x600_75,
t800_600_75Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_1024x768_60,
t1024_768_60Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_1024x768_70,
t1024_768_70Hz_VGA_ModeTbl,
},
{
1<<Input_VGA,
MD_1024x768_75V, //VESA
t1024_768_75Hz_VGA_ModeTbl,
},
#endif
#if YPBPR_ENABLE
{
1<<Input_YPBPR,
MD_720x576_50I,
t576i_ModeTbl,
},
{
1<<Input_YPBPR,
MD_720x480_60I,
t480i_ModeTbl,
},
{
1<<Input_YPBPR,
MD_720x576_50P,
t576p_ModeTbl,
},
{
1<<Input_YPBPR,
MD_720x480_60P,
t480p_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1280x720_50P,
t720p_50Hz_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1280x720_60P,
t720p_60Hz_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1920x1080_50I,
t1080i_50Hz_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1920x1080_60I,
t1080i_60Hz_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1920x1080_50P,
t1080p_50Hz_ModeTbl,
},
{
1<<Input_YPBPR,
MD_1920x1080_60P,
t1080p_60Hz_ModeTbl,
},
#endif
{
1<<Input_CVBS1|1<<Input_CVBS2|1<<Input_SVIDEO1|1<<Input_SVIDEO2|1<<Input_TV,
MD_720x576_50I,
tPalModeTbl,
},
{
1<<Input_CVBS1|1<<Input_CVBS2|1<<Input_SVIDEO1|1<<Input_SVIDEO2|1<<Input_TV,
MD_720x480_60I,
tNtscModeTbl,
},
#if CCIR656_ENABLE
{
1<<Input_CCIR656,
MD_720x576_50I,
tCCIR656_PalModeTbl,
},
{
1<<Input_CCIR656,
MD_720x480_60I,
tCCIR656_NtscModeTbl,
},
#endif
{
1<<Input_CVBS1|1<<Input_CVBS2|1<<Input_SVIDEO1|1<<Input_SVIDEO2,
MD_FreeRun,
tFreeRunModeTbl,
},
{
1<<Input_TV,
MD_TVsnow,
tTVSnowModeTbl,
},
{
_END_OF_TBL_,
0,
tENDModeTbl
},
};
#endif
#if (SCALER_TYPE==MARIA9)
#if FUN_MGD
void msInitializeChip_MGD(void)
{
BYTE ucBank = msReadByte( BK0_00_REGBK );
// MGD initial process
msWriteByte(BK0_00_REGBK, REG_BANK4_LVDS_CCFL); // switch to Bank 4
//msWriteByte(BK4_6B, 0x80);//This statement needs to be located at the BL on process
msWriteByte(BK4_9A, 0xCF);
msWriteByte(BK4_A7, 0xF3);
msWriteByte(BK0_00_REGBK, REG_BANK5_MGD); // switch to Bank 5
msWriteByte(BK5_D7, 0x01); // set H active = 480 , 0x1e0
msWriteByte(BK5_D6, 0xE0);
msWriteByte(BK5_D9, 0x00); // set V active = 234 , 0xea
msWriteByte(BK5_D8, 0xEA);
msWriteByte(BK5_DA, 0x08); // H blanking
msWriteByte(BK5_A5, 0xA0); // PWM period H byte ,read 0xdc
msWriteByte(BK5_A7, 0xAA); // PWM duty H byte , read 0xdd for current value
msWriteByte(BK5_DA, 0x08); // H blanking
msWriteByte(BK5_AD, 0x18); // DLC on set 0xad[3] =1
msWriteByte(BK5_9A, 0x96); // Y gain
msWriteByte(BK5_9F, 0x03); // Y gain offset
msWriteByte(BK5_9E, 0xFC); // Y gain offset
msWriteByte(BK5_A2, 0x20); // DLC gain
msWriteByte(BK5_A1, 0x0C); // DLC gain offset
msWriteByte(BK5_A0, 0x00); // DLC gain offset
msWriteByte(BK0_00_REGBK, ucBank);
}
#endif
#endif
void msInit(void)
{
msWriteRegsTbl(tInitializeScaler);
msWriteRegsTbl(tInitializeFCC);
msWriteRegsTbl(tInitializeADC);
#if PANEL_TTL
msWriteByte(BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU);
msWriteByte(BK1_C1_BND_RST, 0x21);
msWriteByte(BK1_C0_TUNE_FRAME_NO, 0x80);
msWriteByte(BK0_00_REGBK, REG_BANK_SCALER);
#endif
#if (SCALER_TYPE==MARIA9)
msWriteByte( BK0_00_REGBK, REG_BANK6s00_ADCATOP );
msWrite2BytesMask_16bitADDR(BK6s00_34h_ADC_ATOP,_BIT12,_BIT12|_BIT11|_BIT10);//ATOP_34[12:10] = 3?h100 // For ADC current change to 22mA
msWriteByte( BK0_00_REGBK, REG_BANK_SCALER );
msWriteByteMask(BK0_23_OPL_CTL0, 2, 0x0F);
msWriteByteMask(BK0_24_OPL_CTL1, 3, 0x07);
msWriteByteMask(BK0_2E_OPL_TSTA1, 1, 0x03);
msWriteByte( BK0_00_REGBK, REG_BANK_SCALER );
#if (PANEL_ANALOG_TCON) // DYSON 101006 // Linix 20100929
msWriteByte( BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU);
msWriteByte(BK1_C0_TUNE_FRAME_NO, 0x80);
msWriteByte(BK1_C1_BND_RST, 0x68); //Set Bonding Overwrite
msWriteByte( BK0_00_REGBK, REG_BANK_SCALER );
#elif (PANEL_TTL)
msWriteByte( BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU);
msWriteByte(BK1_C0_TUNE_FRAME_NO, 0x80);
msWriteByte(BK1_C1_BND_RST, 0x42); //Set Bonding Overwrite
msWriteByte( BK0_00_REGBK, REG_BANK_SCALER );
#else
msWriteByte( BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU);
msWriteByte(BK1_C0_TUNE_FRAME_NO, 0x80);
msWriteByte(BK1_C1_BND_RST, 0x22); //Set Bonding Overwrite
msWriteByte( BK0_00_REGBK, REG_BANK_SCALER ); /
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
mst703-at070tn92.zip_AT070TN92_HTM-146515-DEVVD_MST703_MST703可代用 (315个子文件)
CalendarPatch.__i 265B
M2_VSync2.__i 252B
MenuFunc.__i 250B
UserPref.__i 250B
msDDC2BI.__i 250B
MenuStr.__i 247B
TDA7052.__i 247B
DevTuner.__i 246B
AutoFunc.__i 246B
Keypad.__i 244B
IrFunc.__i 244B
Ir_rc5.__i 244B
Ir_nec.__i 244B
TV_2IN1.__i 243B
mStar.__i 241B
msOSD.__i 241B
power.__i 241B
NVRam.__i 241B
Adjust.__i 240B
detect.__i 240B
Game.__i 238B
menu.__i 238B
DevVD.__i 237B
i2c.__i 235B
mode.__i 234B
msVD.__i 234B
IR.__i 232B
L51_BANK.A51 42KB
CarTV_128.uvgui.Administrator 69KB
CarTV_64K.uvgui.Administrator 69KB
CARTV_128.B00 138KB
CARTV_128.B01 100KB
CarTV_128.uvgui_Administrator.bak 71KB
CarTV_128_uvproj.bak 27KB
CarTV_128_uvopt.bak 26KB
CarTV_128.Uv2.bak 6KB
CarTV_128_Uv2.Bak 6KB
CarTV_64K_Uv2.Bak 4KB
CarTV_64K_Opt.Bak 4KB
CarTV_128.opt.bak 4KB
CarTV_128_Opt.Bak 4KB
cartv.lin.bak 267B
Merge128K.bat 199B
B2C.BAT 73B
CARTV128.BIN 128KB
CARTV64.BIN 54KB
image001.bmp 152KB
image002.bmp 152KB
mStar.c 82KB
font.c 77KB
Debug.c 56KB
msVD.c 56KB
Adjust.c 50KB
AutoFunc.c 45KB
MenuFunc.c 40KB
menu.c 30KB
DevVD.c 27KB
detect.c 23KB
TV_2IN1.c 21KB
Ir_sanyo.c 17KB
Game.c 17KB
Ir_nec.c 16KB
UserPref.c 16KB
mode.c 15KB
msOSD.c 15KB
tuner.c 14KB
FlashWr.c 13KB
NVRam.c 13KB
main.c 11KB
DevTuner.c 9KB
i2c.c 9KB
MenuStr.c 9KB
power.c 8KB
Keypad.c 8KB
Global.c 8KB
isr.c 7KB
Ir_rc5.c 6KB
CalendarPatch.c 5KB
M2_VSync2.c 5KB
mcu.c 5KB
IrFunc.c 5KB
ms_rwreg.c 4KB
msDDC2BI.c 2KB
DDC.c 2KB
TDA7052.C 2KB
misc.c 1KB
IR.c 599B
CarTV_128 8.05MB
HEX2BIN.EXE 11KB
HEXBIN.EXE 10KB
ms_reg.h 121KB
font.h 79KB
MenuTbl.h 55KB
MenuTblDef.h 39KB
Pnl_LG065_AT.h 29KB
Valuetbl.h 23KB
Pnl_HSD07_D.h 20KB
Pnl_CMO_N10106_LVDS1024X600.h 18KB
Pnl_CMO_N10106_LVDS1024X768.h 18KB
PNL_CM106_V.h 18KB
共 315 条
- 1
- 2
- 3
- 4
资源评论
- weixin_393263602022-11-11这个资源内容超赞,对我来说很有价值,很实用,感谢大佬分享~
- weixin_379626382023-06-02实在是宝藏资源、宝藏分享者!感谢大佬~
周楷雯
- 粉丝: 77
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于去中心化联邦学习的货运速度预测时空模型-A decentralized federated learning-based s
- 适合新手的 OpenAI Sora 详细使用教程
- 驱动总裁离线安装包01
- NT98336 SDK 114版本
- torch-1.8.1+cu111-cp38-cp38-linux-x86-64.whl +torchvision
- 智能提取字幕-intel
- 计算机设计 - VB+ACCESS网络计时管理系统设计(源代码+系统),保证可靠运行,毕业生可参考,免费资源下载
- 信号处理,通信原理,数字通信信号处理与系统分析
- 计算机设计 - vb+ACCESS身份证管理系统设计(LW+源代码),保证可靠运行,毕业生可参考,免费资源下载
- 智能提取字幕-win10
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功