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

📄 comport.h

📁 通过GSM模块接收和发送短信的代码。在eVC4.0下编译通过
💻 H
字号:
// PeLinkDlg.h : header file
//

#if !defined(COMPORT_H_CREATE_AT_2004_11_26_INCLUDED_)
#define COMPORT_H_CREATE_AT_2004_11_26_INCLUDED_

#if _MSC_VER >= 1000
	#pragma once
#endif // _MSC_VER >= 1000
typedef struct __CmdStruct
{
	long iserial;
	__CmdStruct *next;
	int iType;
	char Param[512];
	int iLen;
}*LPCmdStruct,CmdStruct;
typedef struct __SMSStruct
{
	char Read[8];
	char Time[32];
	char Tel[32];
	char Text[256];
}*LPSMSStruct,SMSStruct;

#include "stdafx.h"
#include "Resource.h"
#include "PortPeDlg.h"

class CComPort
{
public:
	CComPort();
	~CComPort();
	LPCmdStruct pHeader,pTail;
	HANDLE m_hList;
	CPortPeDlg *dlg;

	//串口初始化函数
	BOOL InitComPort(TCHAR sComNo[]);
	BOOL TalkData(char sText[]);//一般数据,如AT,ATE等
	BOOL SendData(char sText[]);//一般数据,如AT,ATE等
	BOOL SendData(char sText[],int iLen);

private:
	void TextualSMS(char buf[]);
	//发送短信数据,使用PDU格式发送
	void TextualClassify(char buffer[]);
	//发送英文短信时转换成7进制编码,最多可发送160个字符
	//发送中文短信时转换成16进制编码,最多可发送70个汉字
	BOOL Encode16Text(TCHAR sText[],char *sDest);
	//解码收到的短信,把7进制编码转换成标准的8进制英文字符
	BOOL Decode7Text(char sText[],char *sDest);
	//解码收到的短信,把16进制编码转换成标准汉字
	BOOL Decode16Text(char sText[],char *sDest);

	//对收到的短信解析
	BOOL DecodeSMSBody(TCHAR sText[],LPTSTR sDest,LPTSTR sRevData);

public:
	void SystemVoice(BOOL bOnOff);
	void ReadData();
	//把短信内容打包
	BOOL EncodeSMSBody(TCHAR sText[],char sDest[],int iCode);
	void TextualData(char sbuf[]);
	HANDLE m_hComm;
	HANDLE m_RingEvent;
	HANDLE m_CmdFinish;
	char DataSaveBuff[2048];
	void SetList(int iType,char param[],int iLen=0);
	void LocalVoice(int iType);
	void Execute_Action(char Tel[],char strText[], char strDate[]);

private:
	void Decode8Text(char temp[],char *smstxt);
	int iRing;

	HANDLE hProcSend;
	HANDLE hProcAlarm;
	HANDLE hProcRing;

};



#endif // !defined(COMPORT_H_CREATE_AT_2004_11_26_INCLUDED_)

⌨️ 快捷键说明

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