串口发送字符
时间: 2023-07-28 20:06:38 浏览: 89
在 C++ 中,可以使用串口库来进行串口通信。以下是一个简单的示例代码,发送字符 'a' 到串口:
```c++
#include <iostream>
#include <Windows.h> // Windows系统下的串口库头文件
int main()
{
HANDLE hCom; // 串口句柄
char szBuff[] = "a"; // 要发送的字符
DWORD dwBytesWritten; // 实际发送的字节数
// 打开串口
hCom = CreateFile("COM1", GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
if (hCom == INVALID_HANDLE_VALUE) {
std::cout << "Failed to open serial port!" << std::endl;
return 1;
}
// 设置串口参数
DCB dcb;
GetCommState(hCom, &dcb);
dcb.BaudRate = CBR_9600; // 波特率为9600
dcb.ByteSize = 8; // 数据位为8
dcb.Parity = NOPARITY; // 无校验位
dcb.StopBits = ONESTOPBIT; // 停止位为1
SetCommState(hCom, &dcb);
// 发送数据
if (!WriteFile(hCom, szBuff, strlen(szBuff), &dwBytesWritten, NULL)) {
std::cout << "Failed to send data!" << std::endl;
CloseHandle(hCom);
return 1;
}
std::cout << "Sent " << dwBytesWritten << " bytes!" << std::endl;
// 关闭串口
CloseHandle(hCom);
return 0;
}
```
需要注意的是,串口的设置参数需要与接收方一致,否则可能会导致无法正常通信。
阅读全文