📄 serialdriver.cpp
字号:
// SerialDriver.cpp: implementation of the SerialDriver class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "zhouwei.h"
#include "SerialDriver.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
SerialDriver::SerialDriver()
{
}
SerialDriver::~SerialDriver()
{
}
HANDLE SerialDriver::initCOM(int serialPort)
{
HANDLE serial_port; /* Handle to the serial port */
long baud_rate = 9600; /* Specified baud rate */
char COM1_name[] = "COM3:";
DCB properties; /* Properties of serial port */
serial_port = CreateFile(COM1_name, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
/* Make sure port was opened */
if (serial_port == INVALID_HANDLE_VALUE)
{
fprintf(stderr, "Error opening port\n");
CloseHandle(serial_port);
return (HANDLE)-1;
}
/* Get the properties */
GetCommState(serial_port, &properties);
/* Set the baud rate */
properties.BaudRate = CBR_9600;
/* Set the other properties */
properties.Parity = NOPARITY;
properties.ByteSize = 8;
properties.StopBits = ONESTOPBIT;
SetCommState(serial_port, &properties);
return serial_port;
}
void SerialDriver::closeCom(HANDLE serial_port)
{
CloseHandle(serial_port);
}
int SerialDriver::writeCom(HANDLE serial_port,unsigned char data[],int want,unsigned long *fact)
{
return WriteFile(serial_port, data, want, fact, NULL);
}
int SerialDriver::readCom(HANDLE serial_port,unsigned char data[],int want,unsigned long *fact)
{
return ReadFile(serial_port, (void *)data, want, fact, NULL);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -