问题描述
- C++如何接受串口返回的数据
-
void CNewTestDlg::OnStart()
{
// 55 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF 03 FD D4 14 01 17 00
CByteArray SendTemp,hexdata;
COleSafeArray safearray_inp;
CString strtemp;
SendTemp.SetSize(24);
SendTemp.SetAt(0,0x55);
SendTemp.SetAt(1,0x55);
SendTemp.SetAt(2,0x00);
SendTemp.SetAt(3,0x00);
SendTemp.SetAt(4,0x00);
SendTemp.SetAt(5,0x00);
SendTemp.SetAt(6,0x00);
SendTemp.SetAt(7,0x00);
SendTemp.SetAt(8,0x00);
SendTemp.SetAt(9,0x00);
SendTemp.SetAt(10,0x00);
SendTemp.SetAt(11,0x00);
SendTemp.SetAt(12,0x00);
SendTemp.SetAt(13,0x00);
SendTemp.SetAt(14,0x00);
SendTemp.SetAt(15,0x00);
SendTemp.SetAt(16,0xFF);
SendTemp.SetAt(17,0x03);
SendTemp.SetAt(18,0xFD);
SendTemp.SetAt(19,0xD4);
SendTemp.SetAt(20,0x14);
SendTemp.SetAt(21,0x01);
SendTemp.SetAt(22,0x17);
SendTemp.SetAt(23,0x00);
m_ctrlComm.SetOutput(COleVariant(SendTemp));
}然后怎么写才能接收串口返回的数据?本人小白,谢谢各位大神了
解决方案
C++如果数据的个数确定,建议使用数组,比较方便。
要接收数据,一般要使用线程。将接收到的数据放到接收缓冲中,再通知 UI 来读取刷新。使用 MSCOMM 控件,接收的处理可能简单一些,但你也需要调用接收的方法。
时间: 2024-09-13 09:41:09