Очищает буфер передачи при работе
? COM_SETIRQ(3, "10") // .F. (десятичное 16)
See Also: COM_GETIO()
COM_GETIRQ()
COM_SETIO()
COM_SFLUSH()
Очищает буфер передачи при работе в фоновом режиме.
------------------------------------------------------------------------------
Синтаксис
COM_SFLUSH(<nComPort>) --> lDeleted
Параметры
<nComPort> - номер последовательного порта в диапазоне от 1 до 4.
Возвращаемое значение
lDeleted - логическое значение .T. при успешной очистке буфера
передачи, а иначе .F..
Описание
Функция позволяет прерывать сеанс передачи путем установки в 0
счетчика ожидающих передачи символов. Это используется при нарушениях
в процессе управления данными в режиме автоматической программной
приостановки передачи, например, в случае превышения на передающей
станции таймаута ожидания XON-символа (сброса приостановки передачи).
Примечания
. Функция оказывает действие только на открытый порт.
. Выполнение функции не зависит от наличия символов в буфере
передачи.
Примеры
. Очистка буфера передачи для прерывания сеанса при задержке
получения XON-символа более 30 с:
nStart := SECONDS() // Момент начала передачи
COM_SEND(2, cSendText)
IF ISBIT(COM_SMODE(2), 2) // Ожидание XON
IF SECONDS() - nStart > 30 // Задержка >30с?
COM_SFLUSH(2) // Очистка буфера передачи
ENDIF
ENDIF
See Also: COM_SCOUNT()
COM_SMODE()
COM_SKEY()
Инсталлирует коды для отслеживания фоновой передачи.
------------------------------------------------------------------------------
Синтаксис
COM_SKEY([<nComPort>], [<nKeyValue1|cKeyValue1>],
[<nKeyValue2|cKeyValue2>]) --> lActive