前段时间一直使用SPcomm组件对串口发送数据。可以最近遇到一点问题,数据开始发送后,利用其SendDataEmpty属性,判断数据是否发送完成,可是如果发送的数据较长时,SendDataEmpty属性能够反映出实际情况,发送数据较短时,SendDataEmpty属性总是表示数据未发送完成,致使程序无法知道什么时候发送结束了,没有时间去仔细研究的根源在哪里,所以决定改用其它通信组件来代替此组件。
经过一般时间上网,找到了ComPort 3.1组件,于是用ComPort 3.1试了一下,还可以,就用ComPort 3.1替换了spcomm组件,经过一试,又出现了其它问题:
我的程序要求:Button在OnMouseDown事件中发送一串字符,在OnMouseUp事件中发送另一串字符,可是如果ComPort 3.1在OnMouseDown事件中出现错误,没有打开串口,或者发送数据失败,则程序不响应OnMouseUp事件,致使程序出现逻辑混乱,不知如何是好。