串口通讯COleSafeArray和VARIANT怎么用,接收单片机数据这两个类型怎么用 5C

void CProp1::OnBtnChange()
{
// TODO: Add your control notification handler code here
CByteArray Send_Date_OK;
Send_Date_OK.SetSize(5);
Send_Date_OK[0]=0xaa;
Send_Date_OK[1]=0x1e;
Send_Date_OK[2]=0x02;
Send_Date_OK[3]=0x12;
Send_Date_OK[4]=0xc0;
m_Comm1.SetOutput((COleVariant)Send_Date_OK);

    m_Comm1.SetInputLen(1);
    VARIANT V1=m_Comm1.GetInput();

    COleSafeArray C1;
    C1=V1;
    BSTR m_V1;
    m_V1=C1.bstrVal;
    BOOL operator ==( const COleSafeArray& C1 ) const
    {
        if(m_V1==SysAllocString("BUD_READY"))
        return TRUE;
    }
 代码如上  我用的是MSComm控件编的串口程序,要接收单片机发来的数据然后对比如果是BAUD_READY就发送“接收成功”给上位机,可是怎么接收单片机的数据然后确认是BAUD_READY啊,不懂啊,各位大神给解答一下吧~

1个回答

对于串口来说,数据只有字节数组的概念。没有字符串

xc301321
xc301321 单片机不能发字符串?我能接受到他的字符串显示出来,但是不想显示这个,所以要转换一下。关键是判断的过程不会做
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问