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

📄 comstatus.h

📁 和基恩士对接的串口程序
💻 H
字号:
#if !defined(_COMM_ACCESS_FUNCTIONS_AND_DATA)
#define _COMM_ACCESS_FUNCTIONS_AND_DATA

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define EVENTCHAR               0x0d
#define MAXBLOCKLENGTH          59//130


// Flow control flags以下是一些流控制标志 

#define FC_DTRDSR       0x01
#define FC_RTSCTS       0x02
#define FC_XONXOFF      0x04


// ascii definitions // ascii  码的定义

#define ASCII_XON       0x11
#define ASCII_XOFF      0x13

class CComStatus
{
public:
	BOOL AutoZero(int outID=1);
	int ReadCommBlock(LPSTR lpszBlock, int nMaxLength );
	BOOL WriteCommBlock(LPSTR lpByte,DWORD dwBytesToWrite );
	float ReadOutValue(int outID=1);

	BOOL InitialCom();
	char HexChar(char c);
	int Str2Hex(CString str, char *data);
	//串口共用句柄
	HANDLE m_hCom;
	BYTE m_bComId;

	//串口的一些配置参数
	BYTE m_bByteSize;
	BYTE m_bStopBits;
	BYTE m_bParity;
	DWORD m_dwBaudRate;
	char m_bEvtChar;
	DWORD m_fBinary;

	//当前的一些状态信息
	BOOL m_bConnected;
	BOOL m_fXonXoff;
	BOOL m_bFlowCtrl;

	//重叠读写
	OVERLAPPED	m_rdos;
	OVERLAPPED  m_wtos;

	

	CComStatus();
	void Set(BYTE bComId=1,BYTE bByteSize=8,BYTE bStopBits=ONESTOPBIT,BYTE bParity=NOPARITY,DWORD dwBaudRate=9600,char bEvtChar=EVENTCHAR,DWORD fBinary=1);
	BOOL OpenConnection();   //打开串口
	BOOL CloseConnection();  //关闭串口
	BOOL SetupConnection();  //设置串口参数
	BOOL IsConnected();      //串口是否打开


  }; 
/******************************************************
GLOBAL FUNCTIONS
******************************************************/
//全局函数
//写串口数据函数
BOOL WriteCommBlock( CComStatus& comDev, LPSTR lpByte , DWORD dwBytesToWrite);
//读串口数据函数
int ReadCommBlock(CComStatus& comDev,LPSTR lpszBlock, int nMaxLength );

#endif

⌨️ 快捷键说明

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