小弟用到两个RS485通讯的激光测距传感器,我用沃仕达的RS485转RS232的接口接到了电脑的RS232接口上,软件我是根据串口调试助手改写的,单个激光的控制和数据的读取可以,但是怎么实现两个激光同时的控制和数据读取?激光传感器是有地址的

解决方案 »

  1.   

    void SCOMM::OnCheckAutosend()
    {
    // TODO: 在此添加控件通知处理程序代码
    m_bAutoSend=!m_bAutoSend;
    if(m_bAutoSend)
    {
    SetTimer(156,3000,NULL);
    }
    else
    {
    KillTimer(156);
    }
    }void SCOMM::OnTimer(UINT_PTR nIDEvent)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
         UpdateData();
    if(nIDEvent==156)
    {
           OnBnClickedOne();
       Sleep(1000);
           OnBnClickedOne2();
    }
        UpdateData(0);
    CDialog::OnTimer(nIDEvent);
    }
      

  2.   

    OnBnClickedOne()是给激光1发送单次测量指令,OnBnClickedOne2()是给激光2发送单次测量指令。然后在界面上选中自动测量后,执行函数OnCheckAutosend(),用OnTimer每3s执行测量指令一次.这一块现在没问题。
    我现在的问题是,两个激光测量的返回值无法分开,我是想把激光测测量值获取到