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 |