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

📄 comm.cpp

📁 向串口发送数据
💻 CPP
字号:
//COM.cpp
CCOM::CCOM()
{
}

CCOM::~CCOM()
{
}

BOOL CCOM::InitCOM()//弶巒壔孁岥
{
	DCB dCB;
	COMMTIMEOUTS ct;

	//摼摓懪?孁岥丆涹摼摓孁岥嬪暱
	hCOM = CreateFile( "COM1", GENERIC_READ | GENERIC_WRITE,
		0, NULL, OPEN_EXISTING, 0, NULL);
	if(hCOM == INVALID_HANDLE_VALUE)
		return FALSE;

	//弶巒壔孁岥丆READBUFFER榓WRITEBUFFER惀梡?帺屓掕?揑?槩岹
	SetupComm(hCOM, READBUFFER, WRITEBUFFER);
	PurgeComm(hCOM, PURGE_TXCLEAR|PURGE_RXCLEAR);

	//?抲DCB??
	if(!GetCommState(hCOM, &dCB))
	{
		CloseHandle(hCOM);
		return FALSE;
	}
	dCB.BaudRate = 38400;
	dCB.ByteSize = 8;
	dCB.Parity = NOPARITY;
	dCB.StopBits = ONESTOPBIT;
	if(!SetCommState(hCOM, &dCB))
	{
		CloseHandle(hCOM);
		return FALSE;
	}

	//?抲挻??
	ct.ReadIntervalTimeout = MAXDWORD;
	ct.ReadTotalTimeoutConstant = 0;
	ct.ReadTotalTimeoutMultiplier = 0;
	ct.WriteTotalTimeoutConstant = 0;
	ct.WriteTotalTimeoutMultiplier = 0;
	if(!SetCommTimeouts(hCOM, &ct))
	{
		CloseHandle(hCOM);
		return FALSE;
	}
	return TRUE;
}

BOOL CCOM::SendCOMCode(unsigned _int8 chCode[], int nNum)//幨孁岥
{
	DWORD dwWritenNum;
	return WriteFile(hCOM, chCode, nNum, &dwWritenNum, NULL);
}

DWORD CCOM::GetCOMData(unsigned char *pchBuffer)//?孁岥
{
	DWORD dwReadNum;
	ReadFile(hCOM, pchBuffer, READBUFFER, &dwReadNum, NULL);
	return dwReadNum;
}

void CCOM::CloseCOM()
{
	CloseHandle(hCOM);
}

⌨️ 快捷键说明

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