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

📄 main.h

📁 FTA demo source for P2700
💻 H
字号:
/****************************************************************************


****************************************************************************/   

#ifndef _MAIN_H_
#define _MAIN_H_


#define __FRONTEND     "STi5518"

#define __PLATFORM     "MB5518"

/* Port pins for PIO */
#define ASC_0_TXD_BIT   1			/* ASC Port 0 */
#define ASC_0_RXD_BIT   1           /* ASC Port 0 */

#define ASC_1_TXD_BIT   (1<<5)		/* ASC Port 1 */
#define ASC_1_RXD_BIT   (1<<1)		/* ASC Port 1 */

#define ASC_2_TXD_BIT   (1<<3)		/* ASC Port 2 */
#define ASC_2_RXD_BIT   (1<<4)		/* ASC Port 2 */

#define ASC_3_TXD_BIT   1			/* ASC Port 4 */
#define ASC_3_RXD_BIT   1			/* ASC Port 4 */

#define UART_Back_BASE_ADDRESS      ASC_2_BASE_ADDRESS
#define UART_Back_INTERRUPT         ASC_2_INTERRUPT
#define UART_Back_INTERRUPT_LEVEL   ASC_2_INTERRUPT_LEVEL
#define UART_Back_RXD_BIT           ASC_2_RXD_BIT
#define UART_Back_TXD_BIT           ASC_2_TXD_BIT

#define UART_Front_BASE_ADDRESS      ASC_1_BASE_ADDRESS
#define UART_Front_INTERRUPT         ASC_1_INTERRUPT
#define UART_Front_INTERRUPT_LEVEL   ASC_1_INTERRUPT_LEVEL
#define UART_Front_RXD_BIT           ASC_1_RXD_BIT
#define UART_Front_TXD_BIT           ASC_1_TXD_BIT

//Controles remotos conocidos

#define HUGHES  0xCFB
#define DJSOUND 0x807F
#define PANSAT  0xF9
#define RCA		0xE1


/* --- */
typedef enum
{
	NOT_TUNED,
	TUNED
} tuner_module_state_t;


/* --- */
typedef enum
{
	DBASE_WAITING_FOR_START_SIGNAL,
	DBASE_RUNNING
} dbase_module_state_t;


/* --- */
typedef enum
{
    BUILDING_PAT,
	BUILDING_PMT,
	BUILDING_NIT,
	BUILDING_SDT
} dbase_table_constuction_state_t;


/* keyboard selection enumeration */
enum
{
   REMOTE_KEYBOARD,
   FRONT_PANEL_KEYBOARD
};

/* --- */
typedef enum
{
	DEMUX_MODULE,
	SECTION_FILTERING_MODULE,
	MPEG_MODULE,
	OSD_MODULE,
	TUNER_MODULE,
	DRIVERS_MODULE,
	KEYBOARD_MODULE,
	USIF_MODULE,
	DBASE_MODULE
} reporting_module_t;

typedef	struct  usif_cmd_struct_tag 
{

  	reporting_module_t		from_which_module;

	union  
	{
		/*	Keyboard module communication format	*/
		struct 
		{
      		unsigned char		scancode;		/* key scan code */
      		char     			device;			/* device type REMOTE or FRONT_PANEL keyboard */
      		bool  				repeat_status;	/* TRUE if the key is pressed repeatedly */
    	} keyboard;

		tuner_module_state_t	new_tuner_module_state;	/* TUNED or NOT_TUNED */

		/*	database module communication format	*/
		struct 
		{
			dbase_module_state_t					new_dbase_module_state;	/* status of the DBASE */
			dbase_table_constuction_state_t	table_under_construction;	/* which table is being built now */
		} dbase;
	} contents;
} usif_cmd_t;

//#define DCACHE_ENABLE
#undef  ICACHE_ENABLE
#define UNIFIED_MEMORY


#define E2P_I2C_PIO		1
#define E2P_I2C			0
#define NIM_I2C			1
#define LINKIC_DEV    	0xD0        /* I2C slave address for LINKIC (STv0299) */
#define TUNER_DEV     	0xC2        /* I2C slave address for tsa5059 TUNER */


#define STPIO_PWM_DEVICE_NAME         	PIODeviceName[1]    /* "PIO1" */
#define FRONT_UART_TX_DEVICE_NAME 		PIODeviceName[1]	/* "PIO1" */
#define FRONT_UART_RX_DEVICE_NAME 		PIODeviceName[2]	/* "PIO2" */
#define BACK_UART_TX_DEVICE_NAME 		PIODeviceName[1]	/* "PIO1" */
#define BACK_UART_RX_DEVICE_NAME 		PIODeviceName[1]	/* "PIO1" */


#define  USIF_MSG_QUEUE_SIZE                12
#define  USIF_MSG_QUEUE_NO_OF_MESSAGES      50
#define  PSI_MSG_QUEUE_SIZE               	12
#define  PSI_MSG_QUEUE_NO_OF_MESSAGES     	50
#define  CI_MSG_QUEUE_SIZE               	12
#define  CI_MSG_QUEUE_NO_OF_MESSAGES     	50


/*  Interrupt mapping */
#define PIO_0_INTERRUPT_MAP         0       /* interrupt level controller  0  */
#define PIO_1_INTERRUPT_MAP         0       /* interrupt level controller  1  */
#define PIO_2_INTERRUPT_MAP         0       /* interrupt level controller  2  */
#define PIO_3_INTERRUPT_MAP         0       /* interrupt level controller  3  */
#define PIO_4_INTERRUPT_MAP         0       /* interrupt level controller  4  */
#define SSC_0_INTERRUPT_MAP         7       /* interrupt level controller  5  */
#define ASC_3_INTERRUPT_MAP         7       /* interrupt level controller  6  */
#define ASC_2_INTERRUPT_MAP         7       /* interrupt level controller  7  */
#define ASC_1_INTERRUPT_MAP         7       /* interrupt level controller  8  */
#define ASC_0_INTERRUPT_MAP         7       /* interrupt level controller  9  */
#define PWM_CAPTURE_INTERRUPT_MAP   0       /* interrupt level controller  10 */
/*#define TELETEXT_INTERRUPT_MAP      2*/       /* interrupt level controller  11 */
#define LINK_INTERRUPT_MAP          5       /* interrupt level controller  12 */
#define AVAILABLE_INTERRUPT_MAP     0       /* interrupt level controller  13 */
#define VIDEO_INTERRUPT_MAP         4       /* interrupt level controller  14 */
#define AUDIO_INTERRUPT_MAP         3       /* interrupt level controller  15 */
#define PPC_DMA_INTERRUPT_MAP       0       /* interrupt level controller  16 */
#define PPC_MBOX_INTERRUPT_MAP      0       /* interrupt level controller  17 */
#define EXTERNAL_0_INTERRUPT_MAP    0       /* interrupt level controller  18 */
#define EXTERNAL_1_INTERRUPT_MAP    0       /* interrupt level controller  19 */
#define EXTERNAL_2_INTERRUPT_MAP    0       /* interrupt level controller  20 */

#define CAPTURE_BASED_REMOTE_PULSE_CALC

/* Interrupt handlers stack size */

#define  ROOT_INTERRUPT_HANDLER_WS_SIZE       36

#define  SSC_0_HANDLER_WS_SIZE                88
#define  ASC_3_HANDLER_WS_SIZE                64
#define  ASC_2_HANDLER_WS_SIZE                0
#define  ASC_1_HANDLER_WS_SIZE                64
#define  ASC_0_HANDLER_WS_SIZE                200
#define  LINK_HANDLER_WS_SIZE                 240
#define  MPEG_VIDEO_HANDLER_WS_SIZE           300
#define  MPEG_AUDIO_HANDLER_WS_SIZE           200
/*#define  TELETEXT_HANDLER_WS_SIZE             200*/

#define     OS20_INTERNAL_MEMORY_SIZE       /*1564*/1580  /* be afraid ! */

#define FIRMA   		"GUAMASAT (C) 2007 para HUGHES 6ta y RCA 6ta."

enum{
	TRANSPARENTE,
	AZUL,
	VERDE,
	CYAN,
	ROJO,
	MAGENTA,
	MARRON,
	GRIS,
	BLANCO_TENUE,
	NARANJA,
	AZUL_PRUSIA,
	AZUL_OSCURO,
	BLANCO_OSCURO = 255,
	AMARILLO = 254,
	MAGENTA2 = 253,
	ROJO_OSCURO = 252,
	CYAN_OSCURO = 251,
	VERDE_LIMON = 250,
	AZUL_CIELO = 249,
	GRIS_OSCURO = 248,
	GRIS_CLARO = 247,
	BLANCO = 246
};
#endif


/************** end of file *************/

⌨️ 快捷键说明

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