Функция позволяет уточнить текущее состояние
которых приведено в таблице:
Таблица 3-6. Кодирование состояния передачи в фоновом режиме
--------------------------------------------------------------------
Бит Число Симв. константа Значение
--------------------------------------------------------------------
0 SMODE_NONE Фоновая передача не активизирована
1 1 SMODE_EMPTY Буфер передачи пуст
2 2 SMODE_SOFT Ожидание сброса программной приостановки
передачи (XON)
3 4 SMODE_HARD Ожидание сброса аппаратной приостановки
передачи (CTS)
4 8 SMODE_RFLUSH Буфер передачи очищен дистанционно
--------------------------------------------------------------------
Описание
Функция позволяет уточнить текущее состояние процесса фоновой
передачи, в том числе, определить факт автоматической программной
приостановки передачи по получении XOFF-символа (до получения XON), а
также факт прекращения передачи по получении символа дистанционной
очистки буфера передачи.
Примечания
. Функция возвращает 0, если при вызове функции COM_OPEN() не был
включен фоновый режим (не задан размер буфера передачи).
Примеры
. Проверка освобождения буфера передачи порта 2:
IF ISBIT(COM_SMODE(2), 1)
? "Буфер передачи порта 2 пуст!"
ENDIF
. Ожидание получения XON-символа в течение 20 с:
WAITPERIOD(2000)
DO WHILE ISBIT(COM_SMODE(2), 2) .AND. WAITPERIOD()
*...
ENDDO
. Очистка буфера передачи при неполучении символа XON:
IF ISBIT(COM_SMODE(2), 2)
COM_SFLUSH(2) // Очистка буфера передачи
ENDIF
See Also: COM_HARD()
COM_REMOTE()
COM_SFLUSH()
COM_SOFT()
COM_SOFT()
Переключает режим автоматической программной приостановки передачи.