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

📄 smscmd.h

📁 用串口连接GSM手机发送和接收短消息头文件
💻 H
字号:
#define uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long
// 短消息参数结构,编码/解码共用
// 其中,字符串以0结尾
typedef struct {
    uchar SCA[16];       // 短消息服务中心号码(SMSC地址)
    uchar TPA[16];       // 目标号码或回复号码(TP-DA或TP-RA)
    uchar TP_PID;        // 用户信息协议标识(TP-PID)
    uchar TP_DCS;        // 用户信息编码方式(TP-DCS)
    uchar TP_SCTS[16];   // 服务时间戳字符串(TP_SCTS), 接收时用到
    uchar TP_UD[60];    // 原始用户信息(编码前或解码后的TP-UD)
    uchar index;         // 短消息序号,在读取时用到
} SM_PARAM;

/**********************************************************
监控中心短信命令定义
***********************************************************
设置中心			CEN666666*1011111111*2022222222*3033333333*
更改密码			CEN666666*40888888*
设备布防			CEN666666#1
设置设备锁死		CEN666666#3
设备解除报警		CEN666666#4
设备撤防			CEN666666#4:0
查询当前状态和位置	CEN666666#5
//设备声光报警		CEN666666#6

//设置巡更基站		CEN666666#8:12345678,12345678,12345678,12345678,12345678
//设置巡更开关		CEN666666#9:0		0=关闭,1=开启
//设置越界基站		CEN666666#12:,,,,
设置报警方式		CEN666666#17:0		0=只发送给中心,1=只发送给用户,2=发送给中心和用户
设置免提拨打电话	CEN666666#18:12345678
查询免提拨打电话	CEN666666#18?
开启监听电话		CEN666666#19:12345678
设置免提接听电话	CEN666666#20:12345678
查询免提接听电话	CEN666666#20?
***********************************************************
短信返回信息定义
***********************************************************
布防				CEN1000000000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
打劫				CEN0100000000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
主电源被破坏		CEN0010000000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
布防时门没有关好	CEN0001000000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
顶盖断线			CEN0000100000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
主机被震动过		CEN0000010000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
顶盖倾斜			CEN0000001000000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
非法打开门			CEN0000000100000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
巡更				CEN0000000010000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
越界报警			CEN0000000001000000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
超速				CEN0000000000100000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
备用电源电压低		CEN0000000000010000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
咪头断线			CEN0000000000001000,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
声光报警			CEN0000000000000100,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
设备锁死			CEN0000000000000001,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,
布防				CEN1000000000000010,#58B576A5,#58B546A4,#00000000,#00000000,#00000000,

***********************************************************
用户手机短信命令定义
***********************************************************
更改密码		666666M888888M
设备布防		666666BF
设备撤防		666666CF
设备查询		666666CX
开启监听电话	666666JT12345678
***********************************************************
用户手机短信命令回复定义
***********************************************************
更改密码		设置成功
设备布防		布防成功
设备撤防		撤防成功
设备查询		布防 或 撤防
开启监听电话	直接回拨设置的电话,无回复
***********************************************************
发送短信时数据编码分析
***********************************************************
AT+CMGS=16  0891683108501705F011000BA13109569102F2000800024F60
AT+CMGS=18  0891683108501705F011000BA13109569102F2000800044F60597D
AT+CMGS=19  0891683108501705F011000D91683109569102F2000800044F60597D

AT+CMGS=21  0891683108501705F011000D91683109569102F2000800064F60597D5417
CMGS=长度	长度=短信中心号码(683108501705F0)以后的字符串长度/2
短信中心号码长度+格式+号码=0891683108501705F0      		共9个字节
发送相对格式短信+信息类型+目标号码长度+号码类型+号码=11 00 0D 91+683109569102F2		共11个字节
协议标识+数据编码方案+有效期+信息长度=00 08 00 06		共4个字节
信息=4F 60 59 7D 54 17			共6个字节
***********************************************************
发送短信时数据编码分析
***********************************************************



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

#define	SET_CENTEN_CMD 		30	//设置中心号码命令:CEN666666*1011111111*2022222222*3033333333*
#define SET_CONTROL_PASS	40	//设置设备控制密码:CEN666666*40888888*
#define FORCE_CONTROL 		1	//强制布防:CEN888888#1
#define FORCE_STOP 			3	//设备停用:CEN888888#3				//原来用作强制停车
#define FREE_CONTROL		4	//设备撤防:CEN888888#4
//设备关闭			CEN666666#4:0						//改用#3号命令
#define GET_STATE_POS 		5	//查询当前状态和位置命令:CEN888888#5
#define CONTROL_ALARM 		6	//对当前设备进行声光报警:CEN888888#6

#define	SET_ALARM_SEND_TYPE 	17	//设置报警发送方式:CEN666666#17:0
#define SET_FREE_PHONE 			18	//设置免提拨打电话:CEN888888#18:12345678
#define GET_FREE_PHONE 			181	//查询免提拨打电话:CEN888888#18?
#define OPEN_LISTEN_PHONE 		19	//开启监听电话:CEN888888#19:12345678
#define SET_FREE_LISTEN_PHONE 	20	//设置免提听电话号码CEN888888#20:12345678
#define GET_FREE_LISTEN_PHONE 	201	//查询免提听电话号码CEN888888#20?

// 用户信息编码方式
#define GSM_7BIT        0
#define GSM_8BIT        4
#define GSM_UCS2        8

//SM_PARAM xdata gPDUsms;
    
//uchar gsmEncode7bit(uchar * pSrc, uchar * pDst, uchar nSrcLength);
//uchar gsmDecode7bit(uchar * pSrc, uchar * pDst, uchar nSrcLength);
extern uchar gsmEncodeUcs2(uchar * pSrc, uchar * pDst, uchar nSrcLength);
//uchar gsmDecodeUcs2(uchar * pSrc, uchar * pDst, uchar nSrcLength);
extern uchar gsmString2Bytes(uchar * pSrc, uchar * pDst, uchar nSrcLength);
extern uchar gsmBytes2String(uchar * pSrc, uchar * pDst, uchar nSrcLength);
extern uchar gsmInvertNumbers(uchar * pSrc, uchar * pDst, uchar nSrcLength);
extern uchar gsmSerializeNumbers(uchar * pSrc, uchar * pDst, uchar nSrcLength);
//uchar gsmEncodePdu(SM_PARAM xdata * pSrc, uchar * pDst);
//uchar gsmDecodePdu(uchar * pSrc, SM_PARAM xdata * pDst);
extern uchar gsmEncodePdu(uchar * pDst);
//uchar gsmDecodePdu(uchar * pSrc);
//uchar gsmDecode8bit(uchar * pSrc, uchar * pDst, uchar nSrcLength);
//uchar gsmEncode8bit(uchar * pSrc, uchar * pDst, uchar nSrcLength);      

⌨️ 快捷键说明

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