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

📄 tv_platform.h

📁 泰景的模拟电视全部驱动及MTK平台界面代码
💻 H
📖 第 1 页 / 共 2 页
字号:
	TLG_REGION_VIETNAM,		// 越南
	TLG_REGION_W_EUROPE,		// 西欧
	TLG_REGION_TURKEY,		// 土耳其
	TLG_REGION_UAE,			// 阿联酋
	TLG_REGION_AFGHANISTAN,	// 阿富汗
	TLG_REGION_SINGAPORE,		// 新加坡
	TLG_REGION_THAILAND,		// 泰国
	TLG_REGION_CAMBODIA,		// 柬埔寨
	TLG_REGION_INDONESIA,		// 印度尼西亚
	TLG_REGION_MALAYSIA,		// 马来西亚
	TLG_REGION_LAOS,			// 老挝
	TLG_REGION_PORTUGAL,		// 葡萄牙
	TLG_REGION_SWEDEN,		// 瑞典
	TLG_REGION_PAKISTAN,		// 巴基斯坦
	TLG_REGION_SPAIN,			// 西班牙
	TLG_REGION_JAPAN,			// 日本
	TLG_REGION_UK,				// 英国
	TLG_REGION_HONGKONG,		// 香港
	TLG_REGION_SOUTHAFRICA,	// 南非
	TLG_REGION_BRAZIL,			// 巴西
	TLG_REGION_ARGENTINA,	// 阿根廷
	TLG_REGION_INDIA,			// 印度
	TLG_REGION_BURMA,			// 缅甸
	TLG_REGION_SUDAN,			// 苏丹
	TLG_REGION_YEMEN,			// 也门
	TLG_REGION_PERU,			// 秘鲁
	TLG_REGION_BOLIVIA,		// 玻利维亚
	TLG_REGION_ECUADOR,		// 厄瓜多尔
	TLG_REGION_SURINAME, 		// 苏里南
	TLG_REGION_AUSTRALIA,		// 澳大利亚
	TLG_REGION_NEWZEALAND,	// 新西兰
	TLG_REGION_COLUMBIA,		// 哥伦比亚
	TLG_REGION_COSTARICA,		// 哥斯达黎加
	TLG_REGION_HONDURAS,		// 洪都拉斯
	TLG_REGION_GERMAN,		// 德国
	TLG_REGION_ITALY,			// 意大利
	TLG_REGION_KENYA,			// 肯尼亚
	TLG_REGION_TOTAL
} TLG_REGION_CODE;

#define TLG_VSTD_HYBRID_BIT     (1 << 15)
typedef enum {
    TLG_VSTD_NTSC_M         = 0                       ,     /*!< NTSC-M                                 */
    TLG_VSTD_PAL_M          = 1                       ,     /*!< PAL-M                                  */
    TLG_VSTD_PAL_B          = 2                       ,     /*!< PAL-B                                  */
    TLG_VSTD_PAL_B1         = 3                       ,     /*!< PAL-B1                                 */
    TLG_VSTD_PAL_D          = 4                       ,     /*!< PAL-D                                  */
    TLG_VSTD_PAL_D1         = 5                       ,     /*!< PAL-D1                                 */
    TLG_VSTD_PAL_G          = 6                       ,     /*!< PAL-G                                  */
    TLG_VSTD_PAL_H          = 7                       ,     /*!< PAL-H                                  */
    TLG_VSTD_PAL_K          = 8                       ,     /*!< PAL-K                                  */
    TLG_VSTD_PAL_N          = 9                       ,     /*!< PAL-N                                  */
    TLG_VSTD_PAL_I          = 10                      ,     /*!< PAL-I                                  */
    TLG_VSTD_PAL_NC         = 11                      ,     /*!< PAL-NC                                 */
#ifdef TLG1120
    TLG_VSTD_SECAM_M        = 17                      ,     /*!< SECAM-M                                */
    TLG_VSTD_SECAM_B        = 18                      ,     /*!< SECAM-B                                */
    TLG_VSTD_SECAM_B1       = 19                      ,     /*!< SECAM-B1                               */
    TLG_VSTD_SECAM_D        = 20                      ,     /*!< SECAM-D                                */
    TLG_VSTD_SECAM_D1       = 21                      ,     /*!< SECAM-D1                               */
    TLG_VSTD_SECAM_G        = 22                      ,     /*!< SECAM-G                                */
    TLG_VSTD_SECAM_H        = 23                      ,     /*!< SECAM-H                                */
    TLG_VSTD_SECAM_K        = 24                      ,     /*!< SECAM-K                                */
    TLG_VSTD_SECAM_N        = 25                      ,     /*!< SECAM-N                                */
    TLG_VSTD_SECAM_I        = 26                      ,     /*!< SECAM-I                                */
    TLG_VSTD_SECAM_NC       = 27                      ,     /*!< SECAM-NC                               */
    TLG_VSTD_SECAM_L        = 31                      ,     /*!< SECAM-L                                */
    TLG_VSTD_PAL_SECAM_M    = 1  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-M                                  */
    TLG_VSTD_PAL_SECAM_B    = 2  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-B                                  */
    TLG_VSTD_PAL_SECAM_B1   = 3  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-B1                                 */
    TLG_VSTD_PAL_SECAM_D    = 4  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-D                                  */
    TLG_VSTD_PAL_SECAM_D1   = 5  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-D1                                 */
    TLG_VSTD_PAL_SECAM_G    = 6  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-G                                  */
    TLG_VSTD_PAL_SECAM_H    = 7  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-H                                  */
    TLG_VSTD_PAL_SECAM_K    = 8  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-K                                  */
    TLG_VSTD_PAL_SECAM_N    = 9  | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-N                                  */
    TLG_VSTD_PAL_SECAM_I    = 10 | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-I                                  */
    TLG_VSTD_PAL_SECAM_NC   = 11 | TLG_VSTD_HYBRID_BIT, /*!< PAL/SECAM-NC                                 */
#endif
    TLG_VSTD_NONE               /*!< No Video Standard Specified            */
} tlg_vidstd_t;

extern const tlg_channel_t(tlg_fm_chn_map);
extern const tlg_channel_t(tlg_fm_usa_chn_map);
extern const tlg_channel_t(tlg_ntsc_chn_map);
extern const tlg_channel_t(tlg_china_pald_chn_map);
extern const tlg_channel_t(tlg_shenzhen_map);
extern const tlg_channel_t(tlg_vietnam_pal_d_k_chn_map);
extern const tlg_channel_t(tlg_pal_b_g_chn_map);
extern const tlg_channel_t(tlg_ntsc_japan_chn_map);
extern const tlg_channel_t(tlg_pal_i_chn_map);
extern const tlg_channel_t(tlg_brazil_pal_m_chn_map);
extern const tlg_channel_t(tlg_argentina_pal_nc_chn_map);
extern const tlg_channel_t(tlg_burma_chn_map);
extern const tlg_channel_t(tlg_australia_pal_b_chn_map);
extern const tlg_channel_t(tlg_new_zealand_pal_b_chn_map);
extern const tlg_channel_t(tlg_italy_chn_map);

extern const tlg_channel_t(tlg_pal_i_chn_map);
extern const tlg_channel_t(tlg_pal_b_g_hybrid_chn_map);
extern const tlg_channel_t(tlg_secam_b_g_chn_map);
extern const tlg_channel_t(tlg_secam_d_k_chn_map);
extern const tlg_channel_t(tlg_secam_d_k_hybrid_chn_map);

typedef	enum {
	TLG_TV_525_LINES,
	TLG_TV_625_LINES
} TLG_TV_SCANLINES;

typedef	enum {
	TLG_SCRMD_WINDOW,
	TLG_SCRMD_FULLSCREEN
} TLG_SCREEN_MODE;

typedef enum {
	TLG_TUNEMD_AUTO,
	TLG_TUNEMD_MANUAL
} TLG_TUNE_MODE;

typedef struct {
	const p_tlg_channel_t(chnmap);

#ifdef TLG1100
	tlg_bw_t bw;
#else
#ifdef TLG3100
	tlg_bw_t bw;
#else
#ifdef TLG1120
	enum tlg_bw bw;
#endif /* TLG1120 */
#endif /* TLG3100 */
#endif /* TLG1100 */

	tlg_vidstd_t vidstd;
	TLG_TV_SCANLINES scanlines;
} TLG_REGION_SETTING;

typedef struct {
	uint8 mBrightness;				// 亮度
	uint8 mContrast;					// 对比度
	uint8 mSaturation;				// 色饱和度
	uint8 mDefinition;				// 清晰度
	uint8 mVolume;					// 音量

	uint8 mHOffset,					// 水平偏移调节
	 	 mHReduce,					// 水平大小调节
		 mVOffset,					// 垂直偏移调节
		 mVReduce;					// 垂直大小调节
} TLG_TV_OPTIONS;

typedef struct {
	TLG_TUNE_MODE mTuneMode;		// 当前调谐模式
	TLG_SCREEN_MODE mScrMode;		// 当前屏幕模式
	TLG_REGION_CODE mRegion;		// 当前收视地区代码

	uint8 mIdxListCnt;				// 频道列表中有效索引个数
	uint8 mCurListIdx;				// 当前频道列表的索引
	uint8 mCurChnIdx;				// 当前收视频道的索引
	struct {
		uint8 ChnIdx;					// 频道索引
		char ChnName[7*2+1];		// 频道名称
	} mIdxListBuf[TV_STORAGE_MAX];	// 频道索引列表
} TLG_TV_STORAGE;

typedef struct {
	uint8 mVolume;					// 音量
} TLG_FM_OPTIONS;

typedef struct {
	TLG_TUNE_MODE mTuneMode;		// 当前调谐模式

	uint8 mIdxListCnt;				// 电台列表中有效索引个数
	uint8 mCurListIdx;				// 当前电台列表的索引
#if FM_CUTOFF_AT_76MHZ
	uint16
#else /* FM_CUTOFF_AT_76MHZ */
	uint8
#endif /* FM_CUTOFF_AT_76MHZ */
		mCurChnIdx;				// 当前收听电台的索引
	struct {
#if FM_CUTOFF_AT_76MHZ
	uint16
#else /* FM_CUTOFF_AT_76MHZ */
	uint8
#endif /* FM_CUTOFF_AT_76MHZ */
				ChnIdx;				// 电台索引
	} mIdxListBuf[FM_STORAGE_MAX];	// 电台索引列表
} TLG_FM_STORAGE;

extern uint8 gValidChnNum;
extern int tlg_cur_chn_cnt;
extern TLG_TV_SCANLINES gTvScanLines;
extern TLG_TV_OPTIONS gTvOptions;
extern TLG_TV_STORAGE gTvStorage;
extern TLG_FM_OPTIONS gFmOptions;
extern TLG_FM_STORAGE gFmStorage;

void PowerOnFM(void);
void PowerOffFM(void);

int TLGAPP_SetChannelExt(int iChn);
void TLGAPP_InitTvChannelMap(void);

void TLGMMI_NextTvChannel(void);
void TLGMMI_PrevTvChannel(void);
void TLGMMI_NextFmChannel(void);
void TLGMMI_PrevFmChannel(void);

int TLGMMI_GetRegion(TLG_REGION_CODE *pRegion);
int TLGMMI_SetRegion(TLG_REGION_CODE iRegion);
int TLGMMI_GetBrightness(uint8 *pBrightness);
int TLGMMI_SetBrightness(uint8 iBrightness);
int TLGMMI_GetContrast(uint8 *pContrast);
int TLGMMI_SetContrast(uint8 iContrast);
int TLGMMI_GetSaturation(uint8 *pSaturation);
int TLGMMI_SetSaturation(uint8 iSaturation);
int TLGMMI_GetDefinition(uint8 *pDefinition);
int TLGMMI_SetDefinition(uint8 iDefinition);
int TLGMMI_GetHSize(uint8 *pHsize);
int TLGMMI_GetVSize(uint8 *pVsize);
int TLGMMI_SetHSize(uint8 iHsize);
int TLGMMI_SetVSize(uint8 iVsize);
int TLGMMI_GetHOffset(uint8 *pHoffset);
int TLGMMI_GetVOffset(uint8 *pVoffset);
int TLGMMI_SetHOffset(uint8 iHoffset);
int TLGMMI_SetVOffset(uint8 iVoffset);
void TLGMMI_RestoreTvOption(void);
void TLGMMI_RestoreFmOption(void);
void TLGMMI_ClearTvStorage(void);
void TLGMMI_ClearFmStorage(void);

#endif /* _PLATFORM_H_ */

⌨️ 快捷键说明

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