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

📄 rtgl.h

📁 phs 源代码 小灵通协议源代码 phs source code
💻 H
字号:
#ifndef _RT_GLOABLE_H_
#define _RT_GLOABLE_H_

#ifdef DECLARE_GLOBAL

SYS_STATE_TBL	rt_state_p0[ ] =		 //zch for test 0709
{
//message from high level
	 { PRRCHDSC, rt_disconnect_complete_ind,	STATE_SAME },
	 { PRLCHEST, 				 rt_lch_req,	ST_LCH_REQ },
	 { PRCCHDT,  				 rt_cchrq,		STATE_SAME },
	 { 0xff, 						 0,				STATE_SAME},
 };
SYS_STATE_TBL	rt_state_p3[ ] =		 //zch for test 0709
{
//message from L1
	 { LCHRS,   					rt_lch_assign,		STATE_SAME },	  //  ST_LCH_RREQ  /  	ST_LCH_UREQ
	 { DILCHRS, 					rt_lch_assign, 	STATE_SAME },	  //  ST_LCH_RREQ  /  	ST_LCH_UREQ
	 { LCHRJ,   					rt_lch_reject, 	ST_WAIT },
//message from high level
	 { PRRCHDSC, 	rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR001P, 					 	rt_tr001p, 	STATE_SAME },   //ST_WAIT  / ST_LCH_REQ

	 { EPHINDSP, 						rt_phinf,		STATE_SAME },
	 { EINITL3,  						rt_l3ini,		ST_WAIT },

	 { 0xff, 						 	0,				STATE_SAME},
 };


SYS_STATE_TBL	rt_state_p6[ ] =		 //zch for test 0709
{
//message from high level
	 { PRRCHDSC, 	rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR101P, 						rt_tr001p,		STATE_SAME },  	//ST_WAIT  /   ST_ST_LCH_RREQ

	 //{ ESYN,    						rt_syn,			ST_TCH_ACT },
	 { ESYN,    						rt_lch_sync,	ST_TCH_ACT },
	 { EINITL3, 						rt_l3ini,		ST_WAIT },

	 { 0xff, 						 	0,				STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p8[ ] =		 //zch for test 0709
{
//message from L2
	 { L2RT_DEFINE_INFORMATION_RES, 	rt_define_info_res,	STATE_SAME  },
   	 { L2RT_FUNCTION_RES,  			rt_function_res,	STATE_SAME  },
   	 { L2RT_RADIO_CHANNEL_DISCONNECT,   	rt_channel_disconnect,	ST_RAD_DIS  },
   	 { L2RT_TCH_SWITCH_IND,			rt_tch_switch_ind,	STATE_SAME  },   //ST_TCH_UREQ   /  ST_CS_REQ  (switch type)
   	 { L2RT_TRANS_POWER_CONTROL, 		rt_txpwr,	STATE_SAME  },
   	 { L2RT_VOX_CONTROL,   			rt_voxctl,	STATE_SAME  },
   	 { L2RT_ADDITION_CHANNEL_ASIGN,    	rt_addas,	STATE_SAME  },
   	 { L2RT_ADD_CHANNEL_ASSIGN_REJ,   	rt_addasr,	STATE_SAME  },
   	 { L2RT_ADD_CHANNEL_REQ_IND,   		rt_add_channel_req_ind,	STATE_SAME  },
   	 { OPTMIN,   				rt_opt,		STATE_SAME  },
   	 { L2RT_ZONE_INFO_IND, 			rt_zone,	STATE_SAME  },
//message from high level
	 { PRLCHEST,  			rt_recall_lch_req,	ST_CS_REQ   },
	 { PRINCRES,  			rt_paging_res,	STATE_SAME  },
	 { PRRTFUNC,  			rt_function_req,	STATE_SAME  },
	 { PRDEFINF,  		rt_define_info_req,	STATE_SAME  },
	 { PRSECSET,  		rt_secst,	STATE_SAME  },
	 { PRTCHCNG,  		rt_tch_req,	STATE_SAME  },	   //ST_TCH_REQ   /  ST_TCH_ACT
	 { PRTCHRCN,  		rt_tch_req,  STATE_SAME  },	   //ST_TCH_RREQ   /  ST_TCH_ACT
	 { PRRCHDSC,  	rt_disconnect_complete,	ST_RAD_DIS  },
	 { PRRTOPT,			rt_option_req,	STATE_SAME  },
	 { PRADDRQ,   		rt_add_channel_req,	STATE_SAME  },
	 { PRADDRQIR, 	rt_add_req_ind_rej,STATE_SAME  },
	 { PRADDRRQ,  		rt_add_channel_rreq,	STATE_SAME  },
	 { PRTR3021P, 				rt_tr3021p,STATE_SAME },
	 { PRTR3022P, 				rt_tr3022p,STATE_SAME },
	 { PRTR304P,  				rt_tr304p,	STATE_SAME  },
	 { PRTR305P,  				rt_tr305p,	STATE_SAME  },

	 { EDWSYN,  				rt_dwsyn,	STATE_SAME },
	 { ETXOFF,  				rt_dwsyn,	ST_SYN_WAIT },
	 { EINITL3, 				rt_l3ini,	ST_WAIT },

	 { 0xff, 				0,			STATE_SAME},
 };


SYS_STATE_TBL	rt_state_p9[ ] =		 //zch for test 0709
{
//message from L2
	 { L2RT_RADIO_CHANNEL_DISCONNECT,	rt_channel_disconnect,	ST_RAD_DIS },
	 { L2RT_TCH_SWITCH_IND,			rt_tch_switch_ind,	STATE_SAME }, 	//ST_TCH_UREQ   /  ST_CS_REQ  (switch type)
	 { L2RT_TCH_SWITCH_REQ_REJ,  		rt_tch_switch_rej,	ST_TCH_ACT },
//message from high level
	 { PRLCHEST, 			rt_recall_lch_req,	ST_CS_REQ },
	 { PRRCHDSC, 	rt_disconnect_complete,  ST_RAD_DIS},
	 { PRTR301P, 				rt_tr301p,	STATE_SAME },   //ST_TCH_ACT  /   ST_TCH_REQ

	 { EDWSYN,  				rt_dwsyn,	STATE_SAME },
	 { ETXOFF,  				rt_dwsyn,	ST_SYN_WAIT },
	 { EINITL3, 				rt_l3ini,	ST_WAIT },

	 { 0xff, 				0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p10[ ] =		 //zch for test 0709
{
//message from high level
	 { PRRCHDSC, 	rt_disconnect_complete_ind,STATE_SAME },
	 { PRTR101P, 				rt_tr101p,	ST_SYN_WAIT},

	 { ESYN,    rt_syn,		ST_TCH_ACT   },
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p11[ ] =		 //zch for test 0709
{
//message from high level
	 { PRRCHDSC, rt_disconnect_complete_ind,	STATE_SAME },
	 { PRLCHEST, 				 rt_recall_lch_req,	ST_CS_REQ },
	 { PRTR103P, 					 rt_tr103p,	ST_WAIT },
	 { PRTR304P, 					 rt_tr304p,	STATE_SAME },
	 { PRTR305P, 					 rt_tr305p,	STATE_SAME },
	 { PRSYNBST, 					 rt_csbacktout,ST_CS_REQ },

	 { ESYN,    rt_syn,		ST_TCH_ACT   },
	 { EINITL3, rt_l3ini,		ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };


SYS_STATE_TBL	rt_state_p12[ ] =		 //zch for test 0709
{
//message from L1
	 { LCHRS,   rt_lch_assign,	STATE_SAME },	 //ST_LCH_RREQ   /  ST_LCH_UREQ
	 { DILCHRS, rt_lch_assign,	STATE_SAME },	 //ST_LCH_RREQ   /  ST_LCH_UREQ
	 { LCHRJ,   rt_lch_reject,	ST_WAIT },
//message from high level
	 { PRRCHDSC, rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR001P, 					 rt_tr001p,	STATE_SAME },    //ST_WAIT   /   ST_LCH_RREQ

	 { EPHINDSP, rt_phinf,	STATE_SAME    },
	 { EINITL3,  rt_l3ini,	ST_WAIT },
	 { 0xff, 	 0,			STATE_SAME},
 };


SYS_STATE_TBL	rt_state_p14[ ] =		 //zch for test 0709
{
//message from L2
	 { L2RT_RADIO_CHANNEL_DISCONNECT, rt_channel_disconnect,	ST_RAD_DIS },
	 { L2RT_TCH_SWITCH_IND,  		  rt_tch_switch_ind,	STATE_SAME },		//ST_TCH_UREQ   /  ST_CS_REQ  (switch type)
	 { L2RT_TCH_SWITCH_REQ_REJ,  	  rt_tch_switch_rej,	ST_TCH_ACT },
//message from high level
	 { PRLCHEST, 				 rt_recall_lch_req,	ST_CS_REQ },
	 { PRRCHDSC, rt_disconnect_complete,		ST_RAD_DIS  },
	 { PRTR301P, 					 rt_tr301p,	STATE_SAME },   //ST_TCH_ACT   /ST_TCH_RREQ

	 { EDWSYN,  rt_dwsyn,	STATE_SAME },
	 { ETXOFF,  rt_dwsyn, 	ST_SYN_WAIT},
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p15[ ] =		 //zch for test 0709
{
//message from L1
	 { LCHRS,   rt_lch_assign,	STATE_SAME },	 //ST_RLCH_RREQ   /  ST_RLCH_UREQ
	 { DILCHRS, rt_lch_assign,	STATE_SAME },	 //ST_RLCH_RREQ   /  ST_RLCH_UREQ
	 { LCHRJ,   rt_lch_reject,	ST_WAIT },

//message from high level
	 { PRRCHDSC,rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR001P, 					rt_tr001p,	STATE_SAME },  //ST_RLCH_REQ   /   ST_SYN_WAIT
	 { PRTR105P, 					rt_tr105p,		ST_SYN_WAIT},
	 { PRTRCCHEST, 					rt_trcchest,	STATE_SAME },   //ST_RLCH_REQ   /ST_SYN_WAIT
	 { PRTR103P, 					rt_tr103p,		ST_WAIT },

	 { EPHINDSP, rt_phinf,	STATE_SAME },
	 { EINITL3,  rt_l3ini,	ST_WAIT },
	 { 0xff, 	 0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p16[ ] =		 //zch for test 0709
{
//message from high level
	 { PRRCHDSC, rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR101P, 					 rt_tr001p,	STATE_SAME },   //ST_RLCH_RREQ  /   ST_RLCH_REQ   /   ST_SYN_WAIT
	 { PRTR105P,					 rt_tr105p,	ST_SYN_WAIT },
	 { PRTR103P, 					 rt_tr103p,	ST_WAIT },

	 { ESYN,    rt_syn,		ST_TCH_ACT   },
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p17[ ] =		 //zch for test 0709
{
//message from L1
	 { LCHRS,   rt_lch_assign,		STATE_SAME  },	   //ST_RLCH_RREQ   /  ST_RLCH_UREQ
	 { DILCHRS, rt_lch_assign,		STATE_SAME  },	   //ST_RLCH_RREQ   /  ST_RLCH_UREQ
	 { LCHRJ,   rt_recall_lch_reject,	STATE_SAME },       //ST_RLCH_REQ   /	ST_SYN_WAIT
//message from high level
	 { PRRCHDSC,rt_disconnect_complete_ind,	STATE_SAME },
	 { PRTR001P, 					rt_tr001p,	STATE_SAME },	//ST_RLCH_REQ   /	ST_SYN_WAIT
	 { PRTR105P, 					rt_tr105p,	 	ST_SYN_WAIT},
	 { PRTRCCHEST, 					rt_trcchest,	STATE_SAME },	//ST_RLCH_REQ   /	ST_SYN_WAIT
	 { PRTR103P, 					rt_tr103p,		ST_WAIT },

	 { EPHINDSP,rt_phinf,	STATE_SAME },
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p20[ ] =		 //zch for test 0709
{
	 { EUFRQ,   rt_ufrq20,	ST_LCH_ASG },	 //ST_LCH_ASG  /  ST_LCH_RREQ / 	ST_WAIT
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p21[ ] =		 //zch for test 0709
{
	 { EUFRQ,   rt_ufrq21,	ST_TCH_REA },	 //ST_TCH_REA   /  ST_SYN_WAIT
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p22[ ] =		 //zch for test 0709
{
	 { PRRCHDSC, rt_disconnect_complete_ind,STATE_SAME },
	 { PRTR105P,					 rt_tr105p, ST_SYN_WAIT },
	 { PRTR103P, 					 rt_tr103p, ST_WAIT },

	 { EUFRQ,   					 rt_ufrq22,  ST_RLCH_ASG },	 //ST_RLCH_ASG  /  ST_RLCH_RREQ  /ST_RLCH_REQ  /ST_SYN_WAIT
	 { EINITL3, 					 rt_l3ini,	  ST_WAIT },
	 { 0xff, 						 0,			  STATE_SAME},
 };


SYS_STATE_TBL	rt_state_p23[ ] =		 //zch for test 0709
{
	 { PRRCHDSC, rt_disconnect_complete_ind,STATE_SAME },
	 { PRTR105P, 					 rt_tr105p, ST_SYN_WAIT },
	 { PRTR306P, 					 rt_tr306p, STATE_SAME},		//ST_RLCH_REQ   /   ST_CS_REQ
	 { PRTR103P, 					 rt_tr103p, ST_WAIT },

	 { EINITL3, 					 rt_l3ini,	  ST_WAIT },
	 { 0xff, 						 0,			  STATE_SAME},
 };

SYS_STATE_TBL	rt_state_p24[ ] =		 //zch for test 0709
{
	 { PRRCHDSC, rt_channel_disconnect_end,ST_WAIT }, /*zch for protocol simulator */
	 { EDLDTRS, rt_dlcnf,	ST_WAIT },
	 { EINITL3, rt_l3ini,	ST_WAIT },
	 { 0xff, 	0,			STATE_SAME},
 };


SYS_STATE_TBL *rt_table[25] =
//void(**rt_table[25])()=   //zch for test 0709
{
	rt_state_p0,
	0,
	0,
	rt_state_p3,
	0,
	0,
	rt_state_p6,
	0,
	rt_state_p8,
	rt_state_p9,
	rt_state_p10,
	rt_state_p11,
	rt_state_p12,
	0,
	rt_state_p14,
	rt_state_p15,
	rt_state_p16,
	rt_state_p17,
	0,
	0,
	rt_state_p20,
	rt_state_p21,
	rt_state_p22,
	rt_state_p23,
	rt_state_p24,
};

const rt_info_element_t	rt_definfo_res_info[DEFINFO_ELEMENT_CNT] =
{
	{ AREA_INFO	, OPTION, PUB_PRI, DN,TYP2,8},
};

const rt_info_element_t	rt_func_res_info[FUNC_ELEMENT_CNT] =
{
	{ CONDITION_REPORT_FUNC, 		OPTION, PRIVATE, DN,TYP2,2},
	{ ENCRYPTION, 					OPTION, PUB_PRI, DN,TYP2,3},
	{ PSID_NOTIFY_CONTROL_INFO, 	OPTION, PRIVATE, DN,TYP1,0},
	{ TCH_SWITCH, 					OPTION, PUB_PRI, DN,TYP2,2},
	{ TRANS_POWER_CONTROL	, 		OPTION, PRIVATE, DN,TYP2,2},
	{ VOX_FUNC_INFO, 				OPTION, PRIVATE, DN,TYP2,2},
	{ ZONE_INFO_IND_FUNC, 			OPTION, PUB_PRI, DN,TYP1,0},
};

const rt_info_element_t	rt_page_res_info[PAGE_ELEMENT_CNT] =
{
	{ PS_NUMBER	, 		MANDA,  PUB_PRI, UP,TYP2,8},
	{ PAGE_RES_TYPE	, 	OPTION, PRIVATE, UP,TYP1,0},
};

const rt_info_element_t	rt_radio_dis_info[RADIO_DIS_ELEMENT_CNT] =
{
	{ CAUSE	, 	MANDA, PUB_PRI, DN,TYP2,2},
	{ CS_ID	, 	MANDA, PUB_PRI, DN,TYP2,7},
	{ PS_ID	, 	MANDA, PUB_PRI, DN,TYP2,5},
};

const rt_info_element_t	rt_switch_ind_info[SWITCH_IND_ELEMENT_CNT] =
{
	{ CARRIER_NUMBER	, 	OPTION, PUB_PRI, DN,TYP2,2},
	{ CS_ID	, 				OPTION, PUB_PRI, DN,TYP2,7},
	{ SCH_TYPE	, 			OPTION, PUB_PRI, DN,TYP2,3},
	{ SLOT_NUMBER	, 		OPTION, PUB_PRI, DN,TYP2,2},
};

const rt_info_element_t	rt_switch_req_rej_info[SWITCH_REQ_REJ_ELEMENT_CNT] =
{
	{ CAUSE	, 				MANDA,  PUB_PRI,DN,TYP2,2},
};

//const rt_info_element_t	rt_trans_power_control_info[TRANS_POWER_CONTROL_ELEMENT_CNT] =
//{
//	{ TRANS_POWER_CONTROL_REQ, 	MANDA,  PRIVATE,UD,TYP2,2},
//};
//
//const rt_info_element_t	rt_vox_control_info[VOX_CONTROL_ELEMENT_CNT] =
//{
//	{ VOX_CONTROL, 	MANDA,  PRIVATE,UD,TYP2,1},
//};
//
//const rt_info_element_t	rt_add_channel_assign_info[ADD_CHANNEL_ASSIGN_ELEMENT_CNT] =
//{
//	{ ADD_TCH_ADOPT_CAPABILITY, 	OPTION,  PUB_PRI, DN,TYP2,4},
//	{ ADD_TCH_INFO, 				MANDA,   PUB_PRI, DN,TYP1,0},
//};
//
//const rt_info_element_t	rt_add_channel_assign_rej_info[ADD_CHANNEL_ASSIGN_REJ_ELEMENT_CNT] =
//{
//	{ CAUSE, 				MANDA,	PUB_PRI, DN,TYP2,2},
//	{ ADD_TCH_IDENENTITY, 	OPTION, PUB_PRI, DN,TYP1,0},
//};
//
//const rt_info_element_t	rt_add_channel_req_info[ADD_CHANNEL_REQ_ELEMENT_CNT] =
//{
//	{ ADD_TCH_ADOPT_CAPABILITY, OPTION,	PUB_PRI, UP,TYP1,0},
//	{ ADD_TCH_IDENENTITY, 		OPTION, PUB_PRI, UP,TYP1,0},
//};
//
const rt_info_element_t	rt_add_channel_req_ind_info =
{
	ADD_TCH_IDENENTITY, OPTION,	PUB_PRI, DN,TYP1,0
};

//const rt_info_element_t	rt_add_channel_req_rej_info[ADD_CHANNEL_REQ_REJ_ELEMENT_CNT] =
//{
//	{ CAUSE, 					MANDA,	PUB_PRI, UP,TYP2,2},
//	{ ADD_TCH_IDENENTITY, 		OPTION, PUB_PRI, UP,TYP1,0},
//};
//
//const rt_info_element_t	rt_add_channel_rreq_info[ADD_CHANNEL_RREQ_ELEMENT_CNT] =
//{
//	{ CAUSE, 					MANDA,	PUB_PRI, UP,TYP2,2},
//	{ ADD_TCH_ADOPT_CAPABILITY, OPTION,	PUB_PRI, UP,TYP1,0},
//	{ ADD_TCH_IDENENTITY, 		OPTION, PUB_PRI, UP,TYP1,0},
//};

U1			Rt_sts;
U2			Rt_tim;
U1			Rt_defrq;
U1			Rt_fncrq;
U4			Rt_next;
U1			Rt_enc[2];
I1			Rt_slot;
RT_RADINF	Rt_radinf;
RT_RADINF	Rt_radbak;
RT_MNTCS	Rt_mntcs[HOCSMAX];
U1			Rt_mntcnt;
U1			Rt_gain;
U1			Rt_rcsid[7];

U1			Rtlchdat[5];
U1			Rtlchsts;

U1			Lchercnt;

U1			Tchre_id;
U1			Tchrests;
U1			Tchrrcnt;
U1			Tchcaus;
U1			Rt_algo_tim;

SYS_STATE_TBL *rt_state_table;
RT_SYSWRK rt_syswork;

//BYTE	Sys_bcch[4][2][8];
//BYTE	Sys_cch[8];


#else

extern	const rt_info_element_t	rt_definfo_res_info[DEFINFO_ELEMENT_CNT];
extern	const rt_info_element_t	rt_func_res_info[FUNC_ELEMENT_CNT];
extern	const rt_info_element_t	rt_page_res_info[PAGE_ELEMENT_CNT];
extern	const rt_info_element_t	rt_radio_dis_info[RADIO_DIS_ELEMENT_CNT];
extern	const rt_info_element_t	rt_switch_ind_info[SWITCH_IND_ELEMENT_CNT];
extern	const rt_info_element_t	rt_switch_req_rej_info[SWITCH_REQ_REJ_ELEMENT_CNT];
extern  const rt_info_element_t	rt_add_channel_req_ind_info;

extern	U1			Rt_sts;
extern	U2			Rt_tim;
extern	U1			Rt_defrq;
extern	U1			Rt_fncrq;
extern	U4			Rt_next;
extern	U1			Rt_enc[];
extern	I1			Rt_slot;
extern	RT_RADINF	Rt_radinf;
extern	RT_RADINF	Rt_radbak;
extern	RT_MNTCS	Rt_mntcs[];
extern	U1			Rt_mntcnt;
extern	U1			Rt_gain;
extern	U1			Rt_rcsid[];

extern	U1			Rtlchdat[];
extern	U1			Rtlchsts;

extern	U1			Lchercnt;
extern	U1			Tchre_id;
extern	U1			Tchrests;
extern	U1			Tchrrcnt;
extern	U1			Tchcaus;
extern	U1			Rt_algo_tim;

extern	U1			Call_Loc_NG;
extern	U1			Cc_sts;

extern  SYS_STATE_TBL *rt_table[25];

extern SYS_STATE_TBL *rt_state_table;
//extern U1	SysStsTim[3];
extern RT_SYSWRK rt_syswork;

#endif


#endif  /* _RT_GLOABLE_H_ */

⌨️ 快捷键说明

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