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

📄 psa_mm.h

📁 是一个手机功能的模拟程序
💻 H
字号:
/* 
+----------------------------------------------------------------------------- 
|  Project :  GSM-PS (6147)
|  Modul   :  PSA_MM
+----------------------------------------------------------------------------- 
|  Copyright 2002 Texas Instruments Berlin, AG 
|                 All rights reserved. 
| 
|                 This file is confidential and a trade secret of Texas 
|                 Instruments Berlin, AG 
|                 The receipt of or possession of this file does not convey 
|                 any rights to reproduce or disclose its contents or to 
|                 manufacture, use, or sell anything it may describe, in 
|                 whole, or in part, without the specific written consent of 
|                 Texas Instruments Berlin, AG. 
+----------------------------------------------------------------------------- 
|  Purpose :  Definitions for the protocol stack adapter 
|             Mobility Management ( MM )
+----------------------------------------------------------------------------- 
*/ 

#ifndef PSA_MM_H
#define PSA_MM_H


/*==== CONSTANTS ==================================================*/
#define VLD_PLMN    (0x01)          /* marks a valid PLMN */
#define INVLD_PLMN  (0xFF)          /* marks an invalid PLMN */
#define INVLD_TZ    (0xFF)          /* marks an invalid time zone */

#define DEF_REG_MODE (MODE_AUTO)  /* default registration mode */

#define TEST_STR_LEN  (80)        /* maximum length of test parameter string */

#define NO_ENTRY  (-1)    /* not a valid entry */

typedef enum              /* registration status */
{
  NO_VLD_RS = 0,          /* not a valid registration status */
  RS_NO_SRV,              /* registration status no service */
  RS_LMTD_SRV,            /* registration status limited service */
  RS_FULL_SRV             /* registration status full service */
} T_MM_RGST;

/*==== TYPES ======================================================*/
typedef struct MMSetParm
{
  // UBYTE  regMode;                 /* registration mode */
  T_plmn slctPLMN;                /* selected PLMN */
} T_MM_SET_PRM;

typedef struct _T_pnn_name
{
  T_plmn plmn;    								/* serving network PLMN */
  USHORT lac;							    	/* serving network LAC */
  UBYTE long_len;								/* length of operator long name */
  UBYTE long_name [MAX_ALPHA_OPER_LEN]; 		/* long name for operator */
  UBYTE shrt_len;								/* length of operator short name */
  UBYTE shrt_name [MAX_ALPHA_OPER_LEN]; 		/* short name for operator */
  UBYTE pnn_rec_num;                            /* the PNN record this data is read from */
  UBYTE dcs;									/* data coding scheme */
  struct _T_pnn_name* next;						/* pointer to next pnn in linked list */
} T_pnn_name;


typedef struct MMShrdParm
{
  UBYTE  owner;                   /* identifies the used set */
  T_MM_SET_PRM setPrm[OWN_MAX];   /* possible sets */

  USHORT srchRslt;                /* network search result */
  USHORT deregCs;                 /* deregistration cause from NW */
  UBYTE  nrgCs;                   /* deregistration cause from ME */
  UBYTE  regStat;                 /* registration status */
  T_ACI_COPS_MOD  COPSmode;       /* registration mode in COPS type */
  UBYTE  regMode;                 /* registration mode */
  BOOL   regModeAutoBack;         /* TRUE if AT+COPS=4 and manual mode */
  T_plmn PLMNLst[MAX_PLMN_ID];    /* list of found PLMN */
  USHORT LACLst[MAX_PLMN_ID];     /* LAC list (for EONS)*/
  UBYTE  FRBLst[MAX_PLMN_ID];     /* list of forbidden status */
  T_plmn usedPLMN;                /* PLMN in use */
  U16    lac;                     /* current lac */
  U16    cid;                     /* current cell id */ 
  T_ACI_CREG_STAT creg_status;    /* current registration status GSM */
  UBYTE  tz;                      /* time zone */ 
  T_pnn_name PNNLst;              /* PLMN Network Name Linked List (for EONS)*/
  BYTE   pnn_nr[MAX_PLMN_ID];     /* PLMN list and PNN record number assocation */
  BYTE   pnn_read_cnt;            /* counter for PNN SIM reading */
} T_MM_SHRD_PRM;

/*==== PROTOTYPES =================================================*/

#ifndef GPRS
GLOBAL SHORT psaMM_Registrate  ( void );
GLOBAL SHORT psaMM_DeRegistrate( void );
GLOBAL SHORT psaMM_NetSrch     ( void );
GLOBAL SHORT psaMM_NetSel      ( void );
GLOBAL SHORT psaMM_SetRegMode  ( UBYTE mode );

#endif  /* GPRS */

void  psaMM_Init        ( void );
void  psaMM_CpyPLMNLst  ( T_plmn * pPLMNLst, UBYTE * pFRBLst, USHORT * pLACLst );
void  psaMM_ClrPLMNLst  ( void );

#ifdef TRACING
void  psaMM_shrPrmDump  ( void );
#endif /* TRACING */

/*==== EXPORT =====================================================*/

#ifdef PSA_MMF_C

GLOBAL T_MM_SHRD_PRM mmShrdPrm;

#else

EXTERN T_MM_SHRD_PRM mmShrdPrm;

#endif /* PSA_MMF_C */

 

#endif /* PSA_MM_H */

/*==== EOF =======================================================*/

⌨️ 快捷键说明

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