Bagikan melalui


struktur SERIAL_HANDFLOW (ntddser.h)

Struktur SERIAL_HANDFLOW menentukan pengaturan jabat tangan dan kontrol aliran untuk port serial.

Sintaks

typedef struct _SERIAL_HANDFLOW {
  ULONG ControlHandShake;
  ULONG FlowReplace;
  LONG  XonLimit;
  LONG  XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;

Anggota

ControlHandShake

Bitmask yang menentukan garis kontrol yang digunakan port serial untuk kontrol alur. Anggota ini diatur ke nol atau ke bitwise-OR atau satu atau beberapa bendera berikut.

Nilai Deskripsi
SERIAL_DTR_CONTROL DTR (terminal data siap) diaktifkan.
SERIAL_DTR_HANDSHAKE DTR digunakan untuk kontrol aliran input.
SERIAL_CTS_HANDSHAKE CTS (clear to send) digunakan untuk kontrol aliran output.
SERIAL_DSR_HANDSHAKE DSR (siap himpunan data) digunakan untuk kontrol aliran output.
SERIAL_DCD_HANDSHAKE DCD (deteksi operator data) digunakan untuk kontrol aliran output.
SERIAL_DSR_SENSITIVITY Abaikan karakter yang tiba di port serial saat baris DSR tidak aktif.
SERIAL_ERROR_ABORT Batalkan operasi transmisi atau terima jika terjadi kesalahan.
 

SerCx2 mendukung bendera SERIAL_CTS_HANDSHAKE, dan mungkin atau mungkin tidak mendukung enam bendera lain yang ditentukan untuk anggota ini, tergantung pada driver pengontrol serial dan kemampuan perangkat keras pengontrol serial. SerCx hanya mendukung empat bendera pertama dalam tabel sebelumnya. Serial.sys mendukung semua bendera dalam tabel sebelumnya.

FlowReplace

Bitmask yang menentukan perilaku kontrol aliran. Anggota ini diatur ke nol atau ke bitwise-OR atau satu atau beberapa bendera berikut.

Nilai Deskripsi
SERIAL_AUTO_TRANSMIT Gunakan XON/XOFF untuk kontrol aliran data yang dikirimkan.
SERIAL_AUTO_RECEIVE Gunakan XON/XOFF untuk kontrol alur data yang diterima.
SERIAL_ERROR_CHAR Sisipkan karakter kesalahan ke dalam data yang diterima saat terjadi kesalahan. Untuk informasi selengkapnya, lihat deskripsi anggota ErrorChar di SERIAL_CHARS.
SERIAL_NULL_STRIPPING Secara otomatis menghapus karakter null dari data yang diterima.
SERIAL_BREAK_CHAR Sisipkan karakter pemisah ke dalam data yang diterima saat terjadi pemisahan. Untuk informasi selengkapnya, lihat deskripsi anggota BreakChar di SERIAL_CHARS.
SERIAL_RTS_CONTROL RTS (permintaan untuk mengirim) diaktifkan.
SERIAL_RTS_HANDSHAKE RTS digunakan untuk kontrol aliran output.
SERIAL_XOFF_CONTINUE Lanjutkan pengiriman setelah mengirim XOFF ke perangkat di ujung baris lainnya.
 

SerCx2 mendukung bendera SERIAL_RTS_CONTROL dan SERIAL_RTS_HANDSHAKE, tetapi biasanya tidak mendukung enam bendera lain yang ditentukan untuk anggota ini, tergantung pada driver pengontrol serial dan kemampuan perangkat keras pengontrol serial. SerCx hanya mendukung bendera SERIAL_RTS_CONTROL dan SERIAL_RTS_HANDSHAKE. Serial.sys mendukung semua bendera dalam tabel sebelumnya.

XonLimit

Batas XON. Ketika jumlah karakter dalam buffer penerima internal berada di bawah batas XON, driver pengontrol serial menggunakan sinyal kontrol alur untuk memberi tahu pengirim untuk melanjutkan pengiriman karakter.

XoffLimit

Batas XOFF. Ketika jumlah karakter dalam buffer penerima internal mencapai batas XOFF, driver pengontrol serial menggunakan sinyal kontrol aliran untuk memberi tahu pengirim untuk berhenti mengirim karakter.

Keterangan

Struktur ini digunakan oleh permintaan IOCTL_SERIAL_GET_HANDFLOW dan IOCTL_SERIAL_SET_HANDFLOW .

Setelah mengirim karakter XOFF (mentransmisikan), port serial segera berhenti mengirimkan, tanpa mengirim karakter lagi. Perilaku ini mendukung port serial yang menafsirkan karakter apa pun yang mengikuti XOFF sebagai XON tersirat (ditransmisikan).

SerCx2 dan SerCx hanya mendukung subset bendera yang ditentukan untuk anggota ControlHandShake dan FlowControl . Permintaan IOCTL_SERIAL_SET_HANDFLOW yang menentukan bendera yang tidak didukung diselesaikan dengan STATUS_NOT_IMPLEMENTED.

Persyaratan

Persyaratan Nilai
Header ntddser.h

Lihat juga

IOCTL_SERIAL_GET_HANDFLOW

IOCTL_SERIAL_SET_HANDFLOW