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

📄 scom.h

📁 MDF监控源码2
💻 H
字号:
// SCom.h: interface for the CSCom class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SCOM_H__F2E85FA5_CAD6_4C96_A79A_F49002A8995A__INCLUDED_)
#define AFX_SCOM_H__F2E85FA5_CAD6_4C96_A79A_F49002A8995A__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

typedef struct {
	int iWriteState;
	DWORD tmSendOut;
} SMSSendStatus;



class __declspec(dllimport) CSerialComm  
{
public:
	CString GetPort();
	int Read(char* buf, int &len);
	int Write(char * buf , int len);
	ULONG			m_ulTime;				//串口等待时间
	ULONG			m_ulRate;				//串口频率
	UINT			iRecvLen;				//收到数据长度
	BOOL			m_bGsm ;				//GSM 串口标志
	UCHAR			ucRecvBuf[4096] ;		//缓存
	HANDLE			m_hEvent ;				//等待事件
	HANDLE			hWrite;					//写事件
	HANDLE			hShutDown;				//关闭线程事件
	CWinThread		*m_pReadThread ;		//负责即时读串口线程
	SMSSendStatus	smsStatus;
	

	//{{AFX_VIRTUAL(CDebugDlg)
	 int    Write(CString strSend);
	 int    Read(CString& strRead , int &nLength );
	 virtual void  DataProcess(UCHAR *buf,DWORD len);
	 BOOL   InitCom(CString strPort);
	 void   CloseCom();
	 BOOL   OpenCom(CString strPort);
	//}}AFX_VIRTUAL
	void Connfig();
	static UINT SCThd(LPVOID pPara);
	CSerialComm();
	~CSerialComm();
	BOOL			m_bOpen ;
	OVERLAPPED		m_ov;
	int				bExitRead;		//结束读线程

protected:
	
	//UINT m_unPort;			//通讯端口
	CString m_strPort ;			//通讯端口
	CRITICAL_SECTION	m_csCommunicationSync;

	BOOL m_bThread ;
	HANDLE	m_hCom ;
	HANDLE				m_hEventArray[3];
	int					iMaxReadSecond;			//毫秒

public:
	// 询问串口
	BOOL AskCom(char * cBuf, int iSend, CByteArray &btArray);
	void SetMaxReadSecond(int iSecond);
};

#endif // !defined(AFX_SCOM_H__F2E85FA5_CAD6_4C96_A79A_F49002A8995A__INCLUDED_)

⌨️ 快捷键说明

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