我用串口通信!如果串口回我'ok',则我触发一个事件!若是没有回我东西!则触发另一个事件! 但是第一次发给我'ok'后,就一直发给我ok,导致不能触发另一事件!考虑应该是缓冲区没有释放!可是我用控件打开关闭!还是不行!用函数清空好象也不行!用spcomm控件或mscomm控件都行!请各位高手多多指教!很急!所以先谢谢大家了!

解决方案 »

  1.   

    在SPcomm的OnReceviceData响应接收事件,
    Comm1ReceiveData(Sender: TObject; Buffer: Pointer;  BufferLength: Word)
    buffer是数据,如果buffer中是'ok'用PostMessage发送一个消息,如果不是用PostMessage发送另一个消息,如果嫌消息方式处理慢可以另外开一个线程监视收到的数据
      

  2.   

    getit___你的答复让我很佩服!我就按你的方法先做!太感谢你了!
    那我再问一个问题!我向串口发一字符串!如何做到累加异或和呢?
    我现在加码头和发数据,都没问题!我可以做累加和!但是做不了异或和!请高手多多帮忙!
    给我细细讲讲!小弟有礼了!