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

📄 gprs.h

📁 名厂车载GPS通信终端
💻 H
字号:
#ifndef GPRS_H
#define GPRS_H    1


#ifdef GPRS_GLOBAL
#define GPRS_EXT
#else
#define GPRS_EXT extern
#endif


#define MAXSMBUF      3
#define MAXSMSSIZE	161

#define GSM_7BIT		0
#define GSM_8BIT		4
#define GSM_UCS2		8
//------------------------FOR SHORT MSG-----
typedef struct {
	uchar SCA[16];
	uchar TPA[16];
	uchar TP_PID;
	uchar TP_DCS;
	uchar TP_SCTS[16];
	uchar TP_UD[MAXSMSSIZE];
	uchar TPUD_len;
	uchar index;
	uchar TPALEN;
} SM_PARAM;
//-------------------------------------for index----------
#define _INDEX_LCD              0x00
#define _INDEX_SOS              0x01
#define _INDEX_NORMAL           0x02
#define _INDEX_SPECIAL          0x03
//-------------------------------------for sms attrib-----
#define _SMS_COMMON         0x01
#define _SMS_SUCCESS        0x02
#define _SMS_SPECIAL        0x03
//--------------------------------------------------------
#define MAXSMSBUFSIZE   200
typedef struct
{
   uchar index;
   uchar buf[MAXSMSBUFSIZE];
   uint  len;
   uchar attrib;
   uchar time;
}SM_BUFSTURCT;
GPRS_EXT	uchar	 SmBufTail;
GPRS_EXT	uchar  SmBufHead; 
//-------------------for mode ------------
#define MODEM_ERR      0x80
#define NO_SIMCARD     0x40
#define NO_REGISTER    0x20
#define NO_SIGNAL      0x10
#define INIT_OK        0x08
#define INIT_GPRS_OK   0x04

GPRS_EXT	SM_BUFSTURCT SmBuf[MAXSMBUF];
//------------------for work mode----------
#define _GSM           0x0
#define _GPRS          0x01
#define _GPRSANDGSM    0x02
//------------------for talk ----------
#define _HAND_TALK         0x01
#define _VOICE_TALK        0x02
#define _NOVOICE_TALK      0x03
//----------------for  tel mode------------
#define _TEL_IDLE           0x01
#define _TEL_MONITOR        0x02
#define _TEL_USER           0x03
#define _TEL_REDIAL         0x04
//---------------for  talk mode------------
#define _TALK_OFF           0x00
#define _TALK_ON            0x01
//---------------for gprs status-----------
#define _GPRS_ON_LINE          0x01
#define _GPRS_NO_LINE          0x00
//---------------for gprs power------------
#define _GPRS_POWER_ON         0x00
#define _GPRS_POWER_OFF        0x01
#define _GPRS_WAKE             0x00
#define _GPRS_SLEEP            0x01

typedef struct
{
   uchar signal;
   uchar mode;
   uchar gprsstatus;
   uchar resettime;
   uchar workmode;
   uchar talk;
   uchar talkmode;
//   uchar simid;
   uchar tel;
   uchar power;
   uchar wake;
   uchar gprsdata;
   uchar isupdate;
   uchar needupdate;
   uchar update;
}_GSM_STATUS;
GPRS_EXT _GSM_STATUS gsmstatus;
GPRS_EXT uchar       smssendstatus;
GPRS_EXT uchar       isgprsnoservice; //added by leon 050921
GPRS_EXT uchar       isneedbacktogprs; //added by leon 051008
GPRS_EXT uchar Init_Modem_Step;//added by lxo 1229022  for set it for globle value
//-------------------------------------------
typedef union      //added by leon 050926
{
    struct
    {
    	char currsc :1;         //当前工作的SIM Card
    	char card0nosim:1;   //card 0是否有SIM card
    	char isneedsendaccoff:1; 
    	char card1nosim:1;  //card 1是否有sim card
    	char card1nogprs:1;  //card 1是否支持gprs
    	char retrycount:1;    //双卡是否都试过
		char isconnecting:1;  //是否正在连接状态
		char isrecvingsms:1;  //是否正在接收处理短信
    }Gprs_Simcard_bits;
    char Gprs_Simcard_Char;
}_GPRS_SIMCARD;
GPRS_EXT _GPRS_SIMCARD gsc;  //added by leon 050926
GPRS_EXT uchar ring_steps;   //added by leon 
//-------------------------------------------
typedef struct
{
   uchar tel[16];
   uchar tellen;
   uchar attrib;
   uchar time;
   uchar state;
}_AUTO_DIAL;
GPRS_EXT _AUTO_DIAL AutoDial;
GPRS_EXT uchar audio_status;               //话音通道打开标志//
GPRS_EXT uchar smscount;                   //接收短信数量//
//-------------------------------------------
typedef struct          //simcard information//
{
	UCHAR				MyNumb[15];				//
	UCHAR				IpAddr[16];				//16
	UCHAR				SocketPort[6];			//5
	UCHAR				Apn[21];				//20
	UCHAR				User[21];				//2004.10.25//
	UCHAR				Password[21];			//2004.10.25//
}_CURRENT_SIMCARD;
GPRS_EXT _CURRENT_SIMCARD cur_sim;//当前登陆的sim卡信息//
//如果正在升级则将当前Gprs的sim信息暂时保存到gprsmode_sim中,升级完后恢复

GPRS_EXT _CURRENT_SIMCARD gprsmode_sim;  //added by leon 050915 
GPRS_EXT TIMER *Accept_Ring_Timer;   //added by leon 050929
GPRS_EXT TIMER *Gprs_Service_Timer;  //added by leon 050921
GPRS_EXT TIMER *Recv_Sms_Timer;      //added by leon 051018

//added by leon 051019
#define MAX_SMSRECV_STORE   5
typedef struct
{
	uchar isvalid;
	uchar smsdata[200];
}_SMS_STORE;

GPRS_EXT _SMS_STORE sms_store[MAX_SMSRECV_STORE];

GPRS_EXT uchar Get_Free_Sms_Point();
//GPRS_EXT uchar sms_instack;
//-------------------------------------------
GPRS_EXT void Init_Gprs(void);
GPRS_EXT void Init_Gprs_Proc(void);
GPRS_EXT void GprsTaskEntry(void);
GPRS_EXT void Reset_Gprs_Proc(void);
GPRS_EXT void Reset_Gprs(void);
GPRS_EXT void MonitorProc(void);
GPRS_EXT void SendSM(LPBYTE msg,WORD len,uchar isunicode,LPBYTE dstPhone,uchar attrib,uchar islcdmsg);
GPRS_EXT void Hangup(void);
GPRS_EXT void Pickup(void);
GPRS_EXT void Dial(uchar *telptr,uchar tellen,uchar islcdtel,uchar monitor);
GPRS_EXT void Start_Init_Proc(uchar step,uchar mode);
GPRS_EXT void ToneSetting(uchar value);
GPRS_EXT void Voice_Sel(uchar mode);
GPRS_EXT void AutoPickup(void);
GPRS_EXT void SendSmsProc(void);
GPRS_EXT uchar Auto_Dial(uchar *tel,uchar tellen,uchar attrib,uchar time);
GPRS_EXT void Gprs_Service_Proc(void);  //added by leon 050921
GPRS_EXT void Recv_Sms_Proc(void);      //added by leon 051019
GPRS_EXT void Auto_DialProc(void);
GPRS_EXT void Stop_Autodial(void);
GPRS_EXT uchar Is_Autodail(void);
GPRS_EXT void Wake_Up_Gprs(void);
GPRS_EXT void Sleep_Gprs(void);
GPRS_EXT void JudgeSimCardArea(void);
GPRS_EXT void Deal_Hangbyother(void);
GPRS_EXT void SwitchToGprs(void);
GPRS_EXT void SwitchToAtCmd(void);
GPRS_EXT void RetryOTCP(void);  //added by leon 051011
//GPRS_EXT uchar gsm_can_work(void);
#endif 

⌨️ 快捷键说明

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