📄 gprs.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 + -