NotifyType: 是以下位或位的组合, 表示产生了包含相应的事件:
EV_RXCHAR 收到数据
EV_TXEMPTY 数据已经发送完毕
EV_CTS 清除发送信号有变化 (CTS引脚电平有变化)
EV_DSR 数据设备就绪状态有变化 (DSR引脚电平有变化)
EV_RLSD 数据载波检测状态有变化 (DCD引脚电平有变化)
EV_RING 有振铃信号
EV_RXFLAG 收到可产生事件的字符, 可参考 API 函数 SetCommState
EV_RX80FULL 接收缓存已经达到 80% 的容量, 如果是通过 Modem 等设备进行通讯, 要及时通知对方暂停发送
EV_ERR 线路状态有错误, 包括 CE_FRAME, CE_OVERRUN 和 CE_RXPARITY.
由于 NotifyType 是位的组合, 可能同时含有两种以上的状态, 所以不能用 switch 判断, 只能用 & 判断位
void __fastcall TForm1::YbCommDevice1CommNotify(TObject *Sender, int NotifyType)
{
if(NotifyType & RXCHAR) //收到数据
{
}
if(NotifyType & TXEMPTY) //数据发送完成
{
}
}
--------------------next---------------------
阅读(1178) | 评论(0) | 转发(0) |