Transmit binary byte on serial port ?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • QuangPK

    #1

    Transmit binary byte on serial port ?

    we have a project to transmit and receive data on serial port (i modify it
    from VCTERM on MSDN). To transmit text byte I use :
    void CMainFrame::TxS tring(CString str)
    {
    CString s;
    VARIANT vCommOut;
    vCommOut.vt = VT_BSTR;
    vCommOut.bstrVa l = str.AllocSysStr ing();
    mCommCtrl.SetOu tBufferCount(0) ;
    mCommCtrl.SetOu tput(vCommOut);
    SysFreeString(v CommOut.bstrVal );

    while(mCommCtrl .GetOutBufferCo unt()>0)
    DoEvents();
    }

    it run OK, unless the byte that has value 0x00.

    to resolve that, I use :
    void CMainFrame::TxB yte(unsigned char ch)
    {
    VARIANT vCommOut;
    vCommOut.vt = VT_UI1;
    vCommOut.bVal = ch;
    mCommCtrl.SetOu tBufferCount(0) ;
    mCommCtrl.SetOu tput(vCommOut);

    while(mCommCtrl .GetOutBufferCo unt()>0)
    DoEvents();
    }

    when I run it, system gives error message "invalid value" at line:
    mCommCtrl.SetOu tput(vCommOut);

    Please give me a solution to transmit binary byte.
    Thank regard !
Working...