struktur SERIAL_COMMPROP (ntddser.h)

Struktur SERIAL_COMMPROP menentukan properti port serial.

Sintaks

typedef struct _SERIAL_COMMPROP {
  USHORT PacketLength;
  USHORT PacketVersion;
  ULONG  ServiceMask;
  ULONG  Reserved1;
  ULONG  MaxTxQueue;
  ULONG  MaxRxQueue;
  ULONG  MaxBaud;
  ULONG  ProvSubType;
  ULONG  ProvCapabilities;
  ULONG  SettableParams;
  ULONG  SettableBaud;
  USHORT SettableData;
  USHORT SettableStopParity;
  ULONG  CurrentTxQueue;
  ULONG  CurrentRxQueue;
  ULONG  ProvSpec1;
  ULONG  ProvSpec2;
  WCHAR  ProvChar[1];
} SERIAL_COMMPROP, *PSERIAL_COMMPROP;

Anggota

PacketLength

Ukuran, dalam byte, dari paket data yang dimulai dengan struktur ini dan yang berisi data properti yang diminta. Ukuran ini mencakup struktur SERIAL_COMMPROP dan elemen array ProvChar tambahan yang mengikuti struktur ini.

PacketVersion

Versi struktur ini. Nomor versi saat ini adalah 2.

ServiceMask

Bitmask yang menunjukkan layanan mana yang diterapkan oleh penyedia komunikasi ini. Anggota ini selalu diatur ke SERIAL_SP_SERIALCOMM oleh penyedia komunikasi serial, termasuk penyedia modem. Anggota ProvSubType menunjukkan jenis komunikasi serial tertentu yang diimplementasikan (misalnya, modem).

Reserved1

Tidak digunakan.

MaxTxQueue

Ukuran antrean transmisi maksimum. Ukuran maksimum, dalam byte, dari buffer output internal driver pengontrol serial. Nilai nol menunjukkan bahwa tidak ada nilai maksimum yang diberlakukan oleh penyedia serial.

MaxRxQueue

Ukuran antrean terima maksimum. Ukuran maksimum, dalam byte, dari buffer input internal driver pengontrol serial. Nilai nol menunjukkan bahwa tidak ada nilai maksimum yang diberlakukan oleh penyedia serial.

MaxBaud

Tingkat baud maksimum yang dapat diterima. Driver pengontrol serial berbasis ekstensi menetapkan anggota ini ke tingkat baud yang dinyatakan dalam bit per detik (bps). Misalnya, jika pengontrol serial mendukung tingkat baud maksimum 115.200 bps, driver menetapkan MaxBaud = 115200.

Namun, Serial.sys dan banyak driver pengontrol serial yang lebih lama mengatur MaxBaud ke salah satu bit bendera SERIAL_BAUD_XXX yang ditentukan dalam file header Ntddser.h. Nilai berikut didefinisikan untuk anggota ini.

Nilai Deskripsi
SERIAL_BAUD_075 75 bps
SERIAL_BAUD_110 110 bps
SERIAL_BAUD_134_5 134,5 bps
SERIAL_BAUD_150 150 bps
SERIAL_BAUD_300 300 bps
SERIAL_BAUD_600 600 bps
SERIAL_BAUD_1200 1.200 bps
SERIAL_BAUD_1800 1.800 bps
SERIAL_BAUD_2400 2.400 bps
SERIAL_BAUD_4800 4.800 bps
SERIAL_BAUD_7200 7.200 bps
SERIAL_BAUD_9600 9.600 bps
SERIAL_BAUD_14400 14.400 bps
SERIAL_BAUD_19200 19.200 bps
SERIAL_BAUD_38400 38.400 bps
SERIAL_BAUD_56K 56.000 bps
SERIAL_BAUD_57600 57.600 bps
SERIAL_BAUD_115200 115.200 bps
SERIAL_BAUD_128K 128.000 bps
SERIAL_BAUD_USER Tarif baud yang dapat diprogram tersedia.

ProvSubType

Jenis penyedia komunikasi tertentu. Saat anggota ServiceMask diatur ke SERIAL_SP_SERIALCOMM, ProvSubType diatur ke salah satu nilai berikut.

Nilai Makna
SERIAL_SP_UNSPECIFIED Tidak disebutkan
SERIAL_SP_RS232 Port seri RS-232
SERIAL_SP_PARALLEL Port paralel
SERIAL_SP_RS422 Port seri RS-422
SERIAL_SP_RS423 Port seri RS-423
SERIAL_SP_RS449 Port seri RS-449
SERIAL_SP_MODEM Perangkat modem
SERIAL_SP_FAX Perangkat FAKS
SERIAL_SP_SCANNER Perangkat pemindai
SERIAL_SP_BRIDGE Jembatan jaringan yang tidak ditentukan
SERIAL_SP_LAT Protokol LAT
SERIAL_SP_TELNET Protokol TCP/IP TelnetĀ®
SERIAL_SP_X25 Standar X.25

ProvCapabilities

Kemampuan yang ditawarkan oleh penyedia. Anggota ini diatur ke nol atau ke bitwise-OR dari satu atau beberapa bit bendera berikut.

Nilai Deskripsi
SERIAL_PCF_DTRDSR DTR (terminal data siap) dan DSR (siap himpunan data) didukung.
SERIAL_PCF_RTSCTS RTS (permintaan untuk mengirim) dan CTS (jelas untuk dikirim) didukung.
SERIAL_PCF_CD CD (deteksi operator) didukung.
SERIAL_PCF_PARITY_CHECK Pemeriksaan paritas didukung.
SERIAL_PCF_XONXOFF Kontrol alur XON (transmisi aktif) dan XOFF (transmisi nonaktif) didukung.
SERIAL_PCF_SETXCHAR Karakter XON dan XOFF diatur.
SERIAL_PCF_TOTALTIMEOUTS Total waktu habis yang berlalu didukung.
SERIAL_PCF_INTTIMEOUTS Batas waktu interval didukung.
SERIAL_PCF_SPECIALCHARS Karakter khusus didukung.
SERIAL_PCF_16BITMODE Mode khusus 16-bit didukung.

SettableParams

Bitmask yang menunjukkan parameter komunikasi yang dapat diubah. Anggota ini diatur ke nol atau ke bitwise-OR dari satu atau beberapa bit bendera berikut.

Nilai Deskripsi
SERIAL_SP_PARITY Jenis paritas (genap atau ganjil)
SERIAL_SP_BAUD Laju baud
SERIAL_SP_DATABITS Bit data
SERIAL_SP_STOPBITS Bit berhenti
SERIAL_SP_HANDSHAKING Jabat tangan (kontrol alur)
SERIAL_SP_PARITY_CHECK Pemeriksaan paritas
SERIAL_SP_CARRIER_DETECT Deteksi operator

SettableBaud

Bitmask yang menunjukkan tingkat baud yang dapat digunakan. Untuk tabel yang menjelaskan bit bendera SERIAL_BAUD_XXX yang ditentukan untuk anggota ini, lihat deskripsi anggota MaxBaud . SettableBaud diatur ke nol atau ke bitwise-OR atau satu atau beberapa bit bendera ini.

Driver pengontrol serial mengatur bit bendera SERIAL_BAUD_USER dalam nilai bitmask SettableBaud untuk menunjukkan bahwa mereka mendukung laju baud yang lebih tinggi daripada yang dapat diekspresikan oleh bit bendera SERIAL_BAUD_XXX lainnya. Misalnya, driver yang mendukung tingkat baud 57600, 115200, 230400, dan 460800 bps set SettableBaud = (SERIAL_BAUD_57600 | SERIAL_BAUD_115200 | SERIAL_BAUD_USER).

SettableData

Jumlah bit data yang dapat diatur. Anggota ini diatur ke nol atau ke bitwise-OR dari satu atau beberapa bit bendera berikut.

Nilai Deskripsi
SERIAL_DATABITS_5 5 bit data
SERIAL_DATABITS_6 6 bit data
SERIAL_DATABITS_7 7 bit data
SERIAL_DATABITS_8 8 bit data
SERIAL_DATABITS_16 16 bit data
SERIAL_DATABITS_16X Jalur lebar khusus melalui garis perangkat keras serial

SettableStopParity

Pengaturan stop-bit dan paritas yang dapat dipilih. Anggota ini diatur ke nol atau ke bitwise-OR dari satu atau beberapa bit bendera berikut.

Nilai Deskripsi
SERIAL_STOPBITS_10 Satu stop bit.
SERIAL_STOPBITS_15 Satu setengah bit berhenti.
SERIAL_STOPBITS_20 Dua bit berhenti.
SERIAL_PARITY_NONE Tidak ada bit paritas yang digunakan.
SERIAL_PARITY_ODD Paritas aneh. Bit paritas adalah 1 jika jumlah 1 dalam nilai karakter merata. Jika tidak, bit paritas adalah 0.
SERIAL_PARITY_EVEN Bahkan paritas. Bit paritas adalah 1 jika jumlah 1 dalam nilai karakter ganjil. Jika tidak, bit paritas adalah 0.
SERIAL_PARITY_MARK Bit paritas selalu diatur ke 1.
SERIAL_PARITY_SPACE Bit paritas selalu diatur ke 0.

CurrentTxQueue

Mengirimkan ukuran antrean. Anggota ini menentukan ukuran, dalam byte, dari buffer output internal driver pengontrol serial. Nilai nol menunjukkan bahwa ukuran buffer tidak tersedia.

Untuk SerCx2 dan SerCx, driver pengontrol serial terkait biasanya mengatur anggota ini ke nol. Serial.sys menetapkan anggota ini ke nilai bukan nol yang menunjukkan ukuran buffer output.

CurrentRxQueue

Menerima ukuran antrean. Anggota ini menentukan ukuran, dalam byte, dari buffer input internal driver pengontrol serial. Nilai nol menunjukkan bahwa ukuran buffer tidak tersedia.

Untuk SerCx2 dan SerCx, anggota ini diatur oleh driver pengontrol serial terkait. Untuk SerCx2, driver biasanya menetapkan anggota ini ke nol. Untuk SerCx, driver biasanya mengatur anggota ini ke ukuran buffer cincin yang digunakan SerCx untuk buffer data yang diterima. Driver ini dapat memanggil metode SerCxGetRingBufferUtilization untuk mendapatkan ukuran buffer cincin dari SerCx.

Serial.sys menetapkan anggota ini ke nilai bukan nol yang menunjukkan ukuran buffer input.

ProvSpec1

Data khusus penyedia. Aplikasi harus mengabaikan anggota ini kecuali data khusus penyedia tentang format data yang diperlukan oleh port serial tersedia.

ProvSpec2

Data khusus penyedia. Aplikasi harus mengabaikan anggota ini kecuali data khusus penyedia tentang format data yang diperlukan oleh port serial tersedia.

ProvChar[1]

Data khusus penyedia. Aplikasi harus mengabaikan anggota ini kecuali data khusus penyedia tentang format data yang diperlukan oleh port serial tersedia. Anggota ini adalah elemen pertama dalam array karakter lebar dari satu atau beberapa elemen. Elemen tambahan apa pun segera mengikuti anggota ini. Anggota PacketLength menentukan ukuran struktur SERIAL_COMMPROP ditambah elemen array ProvChar tambahan yang mengikuti struktur ini.

Keterangan

Struktur ini digunakan oleh permintaan IOCTL_SERIAL_GET_PROPERTIES .

Persyaratan

Persyaratan Nilai
Header ntddser.h

Lihat juga

IOCTL_SERIAL_GET_PROPERTIES