📄 com_control.h
字号:
#ifndef _COM_CONTROL_H_
#define _COM_CONTROL_H_
#include<iostream>
#include "afxmt.h"
#include <string.h>
using namespace std;
#define PACKAGE_BUFFER_SIZE sizeof(PACKAGE)
#define BUFFER_SIZE 1024
#define FILENAMELENGTH 20
#define NORMAL_MESSAGE 0
#define FILE_PACKAGE 1
#define FILE_BEGINNING 2
#define FILE_MIDDLE 3
#define FILE_ENDING 4
#define file_both 5
// 传输数据包
class PACKAGE{
public:
int iPckType;
char iPckName[FILENAMELENGTH];
int iType;
int iDataLen;
char pData[BUFFER_SIZE];
PACKAGE(){
Clear();
}
void Clear()
{
iDataLen = 0;
iType = 0;
ZeroMemory(pData, sizeof(*pData));
ZeroMemory(iPckName, sizeof(*iPckName));
}
void SetPck(int Pcktype,char *pckname,int type,char *DataBuffer,int DataLen){
iPckType=Pcktype;
if(pckname!=NULL)
strcpy(iPckName,pckname);
if (type!=0)
iType=type;
iDataLen=DataLen;
memcpy(pData,DataBuffer,BUFFER_SIZE);
}
};
class _COM
{
private:
HANDLE hCreate; // 创建串口的句柄;
BOOL Success; // 存储调用函数返回值,用来判断是否正确
PACKAGE RecvPck, Sendpck;
ULONG RecvPTR;
CEvent SendEvent; //(0,true,0,0);
CEvent RecvEvent; //(0,true,0,0);
OVERLAPPED SendOV,RecvOV;
public:
_COM(); // 构造
~_COM();
int ComInitial( char *ComName );
PACKAGE *ReadCom( void );
int WriteCom(PACKAGE pck );
int CloseCom( void );
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -