介绍FT_GetModemStatus函数的用法、参数、返回值、注意事项、适用的操作系统环境、调用代码示例等。
支持的操作系统
Linux
Mac OS X 10.4 以上版本
Windows 2000 以上版本
Windows CE 4.2以上版本
概述
FT_GetModemStatus函数读取modem的状态和线路状态。
定义
FT_STATUS FT_GetModemStatus (FT_HANDLE ftHandle, LPDWORD lpdwModemStatus)
参数说明
ftHandle—设备句柄。
lpdwModemStatus—指向DWORD类型变量地址的指针,该变量 接收modem状态和线路状态。
返回值
成功则返回FT_OK,如果失败则根据错误返回特定错误码(FT_*).
备注
参数 lpdwModemStatus 中最低位字节值 存储modem的状态. 在 Windows 和 Windows CE系统中, 线路状态在第二个字节中存储。
modem 状态是一个位图,每一位的含义如下:
Clear To Send (CTS) = 0x10,
Data Set Ready (DSR) = 0x20,
Ring Indicator (RI) = 0x40,
Data Carrier Detect (DCD) = 0x80。
线路状态也是一个位图,每一位的含义如下:
Overrun Error (OE) = 0x02,
Parity Error (PE) = 0x04,
FramingError (FE) = 0x08,
Break Interrupt (BI) = 0x10。
代码示例
FT_HANDLE ftHandle;
FT_STATUS ftStatus;
DWORD dwModemStatus = 0;
DWORD dwLineStatus = 0;
ftStatus = FT_Open(0, &ftHandle);
if(ftStatus != FT_OK) {
// FT_Open failed
return;
}ftStatus = FT_GetModemStatus(ftHandle, &dwModemStatus);
if (ftStatus == FT_OK) {
// FT_GetModemStatus OK
// Line status is the second byte of the dwModemStatus value
dwLineStatus = ((dwModemStatus >> 8) & 0x000000FF);
// Now mask off the modem status byte
dwModemStatus = (dwModemStatus & 0x000000FF);
}
else {
// FT_GetModemStatus failed
}
FT_Close(ftHandle);
暂无评论内容