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

📄 mapp_pal.h

📁 mstar 776 开发的车载dvd
💻 H
字号:
#ifndef __TV_PAL_H_
#define __TV_PAL_H_

#include "board.h"

#include "DataType.h"

//#ifdef TELETEXT


// StationId can be used to find out the station information from tStationTbl[]
// The order must equal to tStationTbl[]
typedef enum _EnuStationId
{
    STATION_3SAT,
    STATION_9LIVE,
    STATION_ARD,
    STATION_ARTE,
    STATION_B1,
    STATION_BBC1,
    STATION_BBC2,
    STATION_BBCW,
    STATION_BR3,
    STATION_C_PLUS,
    STATION_CAN5,
    STATION_CANV,
    STATION_CH4,
    STATION_CH5,
    STATION_CNN,
    STATION_CT1,
    STATION_CT2,
    STATION_DISC,
    STATION_DR1,
    STATION_DR2,
    STATION_DSF,
    STATION_DUNA,
    STATION_ETB1,
    STATION_ETB2,
    STATION_EURNW,
    STATION_EURSP,
    STATION_FR2,
    STATION_FR3,
    STATION_HR3,
    STATION_HSE,
    STATION_ITA1,
    STATION_ITV,
    STATION_KA2,
    STATION_KABEL,
    STATION_KIKA,
    STATION_M6,
    STATION_MDR,
    STATION_MTV,
    STATION_MTV1,
    STATION_MTV2,
    STATION_MTV3,
    STATION_N3,
    STATION_NED1,
    STATION_NED2,
    STATION_NED3,
    STATION_NET2,
    STATION_NET5,
    STATION_NOVA,
    STATION_NRK1,
    STATION_NRK2,
    STATION_N_TV,
    STATION_ORF1,
    STATION_ORF2,
    STATION_PHOEN,
    STATION_PREM,
    STATION_PRIMA,
    STATION_PRO7,
    STATION_RAI1,
    STATION_RAI2,
    STATION_RAI3,
    STATION_RETE4,
    STATION_RTBF1,
    STATION_RTBF2,
    STATION_RTE1,
    STATION_RTL,
    STATION_RTL2,
    STATION_RTL4,
    STATION_RTL5,
    STATION_SAT1,
    STATION_SBS6,
    STATION_SF1,
    STATION_SF2,
    STATION_SKY,
    STATION_SRTL,
    STATION_STAR,
    STATION_SVT1,
    STATION_SVT2,
    STATION_SWR,
    STATION_TF1,
    STATION_TSI1,
    STATION_TSI2,
    STATION_TSR1,
    STATION_TSR2,
    STATION_TV1,
    STATION_TV2,
    STATION_TV2_,
    STATION_TV2__,
    STATION_TV2_Z,
    STATION_TV4,
    STATION_TV5,
    STATION_TVE1,
    STATION_TVE2,
    STATION_TVE3,
    STATION_TVN,
    STATION_TVP1,
    STATION_TVP2,
    STATION_TVPPL,
    STATION_V8,
    STATION_VIVA,
    STATION_VIVA2,
    STATION_VOX,
    STATION_VT4,
    STATION_VTM,
    STATION_WDR3,
    STATION_YLE1,
    STATION_YLE2,
    STATION_YORIN,
    STATION_ZDF,

    // Turkey
    STATION_TRT_1,
    STATION_TRT_2,
    STATION_TRT_3,
    STATION_TRT_4,
    STATION_TRT_I,
    STATION_AVRAS,
    STATION_SHOW,
    STATION_CINE5,
    STATION_SUPSP,
    STATION_ATV,
    STATION_KANLD,
    STATION_EUROD,
    STATION_EKOTV,
    STATION_BRAVO,
    STATION_GALA,
    STATION_FUNTV,
    STATION_TEMPO,
    STATION_TGRT,
    STATION_STAR_T,
    STATION_STARM,
    STATION_KANL6,
    STATION_STAR4,
    STATION_STAR5,
    STATION_STAR6,
    STATION_STAR7,
    STATION_STAR8,



//#if CNI_UseFullCode
///ADD  1
    STATION_BR1,
    STATION_NDR1,
    STATION_RB1,
    STATION_RB3,
    STATION_SFB1,
    STATION_SWR1,
    STATION_SR1,
    STATION_WDR1,
    STATION_MDR2,
    STATION_MDR1,

    STATION_ORB1,
    STATION_ORB3,
    STATION_1AFER,
    STATION_RTLC,
    STATION_DWFB,
    STATION_BOK,
    STATION_BMC2,
    STATION_BMC1,
    STATION_FESTI,
    STATION_MUXX,

    STATION_EXTRA,
    STATION_NICK,
    STATION_KDGIN,
    STATION_DVIER,
    STATION_123TV,
    STATION_TELE5 ,
    STATION_RTLSH,
    STATION_N24,
    STATION_TVB,
    STATION_ONYX,

    STATION_QVCT,
    STATION_NICKE,
    STATION_SRGS,
    STATION_TELEZ,
    STATION_TELEC,
    STATION_TEOP,
    STATION_TVSO,
    STATION_TVOS,
    STATION_TETI,
    STATION_SCHAF,

    STATION_UTU,
    STATION_ORF3,
    STATION_ATVP,
    STATION_STUD1,
    STATION_NOVYK,

    STATION_M1,


 ///ADD  2
    STATION_AB3,
    STATION_AB4E,
    STATION_RTBFS,
    STATION_RTLT,
    STATION_CLUBR,

    STATION_JIMT,
    STATION_PLUGT,
    STATION_RTV,
    STATION_MCMB,
    STATION_VITAY,

    STATION_WTV,
    STATION_FOCTV,
    STATION_BE,
    STATION_PRIME,
    STATION_TVLIM,

    STATION_KANA3,
    STATION_RINTV,
    STATION_TVBRU,
    STATION_AVSE,
    STATION_ROBTV,

    STATION_TEBRU,
    STATION_TESAM,
    STATION_TVCOM,
    STATION_CANZO,
    STATION_VIDSC,

    STATION_CANAC,
    STATION_TEMB,
    STATION_ANTEC,
    STATION_TELVE,
    STATION_RTCTL,

    STATION_NOTLE,
    STATION_TVLUX,
    STATION_KANZL,
    STATION_CANZR,
    STATION_CARTO,

    STATION_LIBER,
    STATION_TCM,
    STATION_MOZAI,
    STATION_INFOK,
    STATION_SPORZ,

    STATION_TVBRN,
    STATION_BR,
    STATION_BRALP,
    STATION_HR,
    STATION_KINDE,

    STATION_NDR,
    STATION_ORB,
    STATION_PHOIX,
    STATION_QVCD,
    STATION_RB,

    STATION_SFB,
    STATION_SR,
    STATION_ET1,
    STATION_RETEA,
    STATION_CANAL,

    STATION_TELEN,
    STATION_TRSTV,
    STATION_TV3,
    STATION_RNEWS,
    STATION_RAI,

    STATION_MTVI,
    STATION_MTVB,
    STATION_MTVH,
    STATION_RTV38,
    STATION_GAYTV,

    STATION_VDOIT,
    STATION_SA200,
    STATION_RAISA,
    STATION_FOXKD,
    STATION_PEOTV,

    STATION_FOXKI,
    STATION_LA7,
    STATION_PRITV,
    STATION_SPITL,
    STATION_SKYS,

    STATION_SKYC,
    STATION_TELEP,
    STATION_SAILC,
    STATION_VDOLI,
    STATION_MEDSH,

    STATION_TELER ,
    STATION_ITA8,
    STATION_MUBOX,
    STATION_TELES,
    STATION_TNTEL,

    STATION_TP9TE,
    STATION_RTLTL,
    STATION_ANIMA,
    STATION_TALPA,
    STATION_TMF,

    STATION_MTVNL,
    STATION_RNN7,
    STATION_TVNOR,
    STATION_ANIPL,
    STATION_TVP,

    STATION_RTP,
    STATION_KC,
    STATION_SLO,
    STATION_TLM,
    STATION_C33,

    STATION_TVEIE ,
    STATION_CANA9,
    STATION_PUNT2,
    STATION_CCV,
    STATION_SHOWE,

    STATION_ANIMP,
    STATION_NGC,
    STATION_NICKU,
    STATION_PCCU,
    STATION_TNTC,

    STATION_1P1,
    STATION_ICTV,



    ///ADD  3
    STATION_TVDAN,
    STATION_KANA5,
    STATION_AB1,
    STATION_AQUIT,
    STATION_CANAJ,

    STATION_EUSP2,
    STATION_EUSPN,
    STATION_LACHM,
    STATION_LCI,
    STATION_MCM,

    STATION_PARIP,
    STATION_PLANE,
    STATION_RFO,
    STATION_SCLUB,
    STATION_TOON,

    STATION_TA,
    STATION_TLT,
    STATION_TNCMC,
    STATION_ET3,
    STATION_NET,

    STATION_TEING,
    STATION_SKYCM,
    STATION_JIMMY,
    STATION_PLANT,
    STATION_CARNK,

    STATION_BOORG,
    STATION_CARNP,
    STATION_SKYSP,
    STATION_SKYDG,
    STATION_SCIFC,

    STATION_SKYME,
    STATION_FOX,
    STATION_FOXLF,
    STATION_A1,
    STATION_HISCH,

    STATION_STUUV,
    STATION_MACPL,
    STATION_ALICE,
    STATION_NUVLI,
    STATION_LEOND,

    STATION_SUPCH,
    STATION_SKYCA,
    STATION_TELSA,
    STATION_TELCE,
    STATION_TELST,

    STATION_DISC1,
    STATION_DISNC,
    STATION_7GSR,
    STATION_R8VGA,
    STATION_NUVR,

    STATION_RADIT,
    STATION_RETE7,
    STATION_EET,
    STATION_TOODS,
    STATION_BASTV,

    STATION_ESPCS,
    STATION_MEDPR,
    STATION_BOING,
    STATION_PLALI,
    STATION_MATMU,

    STATION_NGP1,
    STATION_HISC1,
    STATION_SKYTV,
    STATION_GXT,
    STATION_PLAHD,

    STATION_SK224,
    STATION_RTL7,
    STATION_NICLD,
    STATION_STV1,
    STATION_STV2,

    STATION_TVJOJ,
    STATION_SATAS,
    STATION_U1,
    STATION_TELZI,
    STATION_ANGTV,

    STATION_BBCN,
    STATION_BBCP,
    STATION_BORTV,
    STATION_CARLT,
    STATION_CENTV,

    STATION_CHNTV,
    STATION_CHDCH,
    STATION_DISCU,
    STATION_FAMCH,
    STATION_FILFR,

    STATION_GMTV,
    STATION_GRAMP,
    STATION_GRANA,
    STATION_HTV,
    STATION_LEACH,

    STATION_LWT,
    STATION_MERID,
    STATION_MOVCH,
    STATION_NBCEP,
    STATION_CNBCE,

    STATION_RACCH,
    STATION_S4C,
    STATION_SCIFI,
    STATION_SCOTV,
    STATION_SKYUK,

    STATION_SSVC,
    STATION_TYNTE,
    STATION_UKGLD,
    STATION_UKLIV,
    STATION_ULTV,

    STATION_VH1,
    STATION_WESTV,
    STATION_WIRTV,
    STATION_YORTV,
//#endif

    STATION_NUM,        // Station number
    STATION_NONE = 0xFFFF // End of table	//R060727
} EnuStationId;

typedef enum _EN_PAL_COUNTRY_SETTING
{
    COUNTRY_SETTING_AUSTRIA,
    COUNTRY_SETTING_BELGIUM,
    COUNTRY_SETTING_BULGARIA,
    COUNTRY_SETTING_CROATIA,
    COUNTRY_SETTING_CZECH,
    COUNTRY_SETTING_DENMARK,
    COUNTRY_SETTING_FINLAND,
    COUNTRY_SETTING_FRANCE,
    COUNTRY_SETTING_GERMANY,
    COUNTRY_SETTING_GREECE,
    COUNTRY_SETTING_HUNGARY,
    COUNTRY_SETTING_ITALY,
    COUNTRY_SETTING_LUXEMBOURG,
    COUNTRY_SETTING_NETHERLANDS,
    COUNTRY_SETTING_NORWAY,
    COUNTRY_SETTING_POLAND,
    COUNTRY_SETTING_PORTUGAL,
    COUNTRY_SETTING_RUMANIA,
    COUNTRY_SETTING_RUSSIA,
    COUNTRY_SETTING_SERBIA,
    COUNTRY_SETTING_SLOVENIA,
    COUNTRY_SETTING_SPAIN,
    COUNTRY_SETTING_SWEDEN,
    COUNTRY_SETTING_SWITZERLAND,
    COUNTRY_SETTING_UK,
#if COUNTRY_TAIWAN
    COUNTRY_SETTING_TAIWAN,
#endif
    COUNTRY_SETTING_NUMS,
} EN_PAL_COUNTRY_SETTING;

typedef struct _StuStationInfo
{
    char au8StationName[5]; // Station name
    BYTE ucCNICodeNum_VPS;
    WORD* tCNICodeTbl_VPS;

    BYTE ucCNICodeNum_FMT1;
    WORD* tCNICodeTbl_FMT1;

    BYTE ucCNICodeNum_FMT2;
    WORD* tCNICodeTbl_FMT2;
} StuStationInfo;

#define MAX_NUM_OF_SERVICE              60 // for DTG testing 100//999 //(TV + RADIO)
#define PAL_MAX_CHANNEL_NUM             45
#define PAL_PROGLIST_CHANNEL_NUM    	PAL_MAX_CHANNEL_NUM


// compare CNI status
#define CNI_OTHER_COUNTRY   0x80
#define CNI_NOT_FOUND       0xff
#define CNI_NULL            0xfefe
#define CNI_UseFullCode     1//0

#define STATION_NAME_SIZE   5

//#endif // #ifdef TELETEXT



#define TV_MAX_CHANNEL_NUM     PAL_MAX_CHANNEL_NUM
#define TV_MIN_CHANNEL_NUM     1
#define TV_CHANNEL_EXIST       0x80


typedef struct _TVChannelData
{
    U8 ucColorSystem;
    U8 ucSoundSystem;
    U8 ucAutoSound;   // Used when soundSystem == AUTO
    EN_SOUND_MTS_TYPE ucSoundMts;

    U16 wFreq;
    U8 ucPriority;
    U8 ucStationId;
    U8 au8StationName[5];
} TVChannelData;


#define PAL_FREQ_MIN        43.25 * TN_FREQ_SS_INVERSE//43.25 * TN_FREQ_SS_INVERSE
#define PAL_FREQ_MAX        865.25 * TN_FREQ_SS_INVERSE//865.25 * TN_FREQ_SS_INVERSE
#define PAL_FREQ_SECAM_L    67.3 * TN_FREQ_SS_INVERSE



///////////////////////////////////////////////////////////////////////////////
// Draw OSD
///////////////////////////////////////////////////////////////////////////////
typedef enum _EnuPalProgramMode
{
    PAL_PROG_MODE_NAVI,
    PAL_PROG_MODE_NAME,
    PAL_PROG_MODE_INSERT,
    PAL_PROG_MODE_DELETE
} EnuPalProgramMode;


#ifdef MAPP_PAL_C
#define INTERFACE
#else
#define INTERFACE extern
#endif

INTERFACE U16 g_wAutoScanFreq;
INTERFACE U16 g_wAutoScanFreqEnd;

INTERFACE void MApp_TVAutoScanInit();
INTERFACE BOOLEAN MApp_TVScanChannel(BOOLEAN *ScanResult,U8* u8NumOfVchFound);
INTERFACE void MApp_TVScanExit();
INTERFACE void MApp_TVSelectWholeChannel( U8 ucChannel );
INTERFACE EnuTunerSoundSystem PAL_GetTunerSoundSystem( U8 ucSoundSystem );
INTERFACE U8 MApp_TVScanGetInitFreq(void);



#undef INTERFACE


#endif

⌨️ 快捷键说明

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