Методическое пособие 390
.pdfWCHAR wcProvChar[1]; // специальные данные устройства
} COMMPROP;
dwMaxBaud может принимать следующие значения:
BAUD_075 |
75 bps |
BAUD_110 |
110 bps |
BAUD_134_5 |
134.5 bps |
BAUD_150 |
150 bps |
BAUD_300 |
300 bps |
BAUD_600 |
600 bps |
BAUD_1200 |
1200 bps |
BAUD_1800 |
1800 bps |
BAUD_2400 |
2400 bps |
BAUD_4800 |
4800 bps |
BAUD_7200 |
7200 bps |
BAUD_9600 |
9600 bps |
BAUD_14400 |
14400 bps |
BAUD_19200 |
19200 bps |
BAUD_38400 |
38400 bps |
BAUD_56K |
56K bps |
BAUD_57600 |
57600 bps |
BAUD_115200 |
115200 bps |
BAUD_128K |
128K bps |
BAUD_USER |
Programmable baud rates available |
dwProvSubType может принимать следующие значения:
PST_FAX |
FAX |
PST_LAT |
LAT-протокол |
PST_MODEM |
модем |
PST_NETWORK_BRIDGE |
сетевой мост |
PST_PARALLELPORT |
параллельный порт |
PST_RS232 |
RS-232 |
PST_RS422 |
RS-422 |
PST_RS423 |
RS-423 |
PST_RS449 |
RS-449 |
PST_SCANNER |
сканер |
PST_TCPIP_TELNET |
протокол TCP/IP Telnet® |
111
PST_UNSPECIFIED |
не определено |
PST_X25 |
стандарты X.25 |
В битовой маске dwProvCapabilities могут быть установлены: |
|
PCF_16BITMODE |
специальный 16-битовый режим |
CF_DTRDSR |
сигналы DTR (data-terminal-ready) |
|
/DSR (data-set-ready) |
PCF_INTTIMEOUTS |
временные интервалы при |
передачи |
|
PCF_PARITY_CHECK |
проверка паритета |
PCF_RLSD |
сигнал RLSD |
|
(receive-line-signal-detect) |
PCF_RTSCTS |
сигналы RTS (request-to-send) |
|
/CTS (clear-to-send) |
PCF_SETXCHAR |
возможность установки |
XON/XOFF |
|
PCF_SPECIALCHARS |
поддержка специальных устройств |
PCF_TOTALTIMEOUTS |
ограничение общего времени |
|
передачи данных |
PCF_XONXOFF |
управление XON/XOFF |
В битовой маске dwSettableParams могут быть установлены: |
|
SP_BAUD |
скорость обмена |
SP_DATABITS |
количество информационных битов |
SP_HANDSHAKING |
режим Handshake |
SP_PARITY |
паритет |
SP_PARITY_CHECK |
проверка паритета |
SP_RLSD |
RLSD (receive-line-signal-detect) |
SP_STOPBITS |
количество стоповых битов |
Вбитовой маске dwSettableBaud могут быть установлены такие же значения, какие может принимать поле dwMaxBaud.
Вбитовой маске wSettableData могут быть установлены: DATABITS_5 5 информационных бит DATABITS_6 6 информационных бит DATABITS_7 7 информационных бит DATABITS_8 8 информационных бит
112
DATABITS_16 |
16 информационных бит |
|
DATABITS_16X |
специальное количество информационных бит |
|
В битовой маске wSettableStopParity могут быть установлены: |
||
STOPBITS_10 |
|
1 стоповых битов |
STOPBITS_15 |
|
1.5 стоповых битов |
STOPBITS_20 |
|
2 стоповых битов |
PARITY_NONE |
|
без паритета |
PARITY_ODD |
|
случайный паритет |
PARITY_EVEN |
|
паритет события |
PARITY_MARK |
|
маркированный паритет |
PARITY_SPACE |
|
пространственный паритет |
|
Структура DCB |
|
DCB структура, отображающая свойства текущего сеанса. |
||
typedef struct _DCB { |
|
|
DWORD DCBlength; |
|
// размер структуры DCB |
|
|
[sizeof(DCB)] |
DWORD BaudRate; |
|
// текущая скорость передачи в bps |
DWORD fBinary: 1; |
|
// бинарный режим (true/false) |
DWORD fParity: 1; |
|
// возможность проверки паритета |
|
|
(true/false) |
DWORD fOutxCtsFlow:1; |
// сигнал CTS управляет передачей |
|
|
|
(true/false) |
DWORD fOutxDsrFlow:1; |
// сигнал DSR управляет передачей |
|
|
|
(true/false) |
DWORD fDtrControl:2; |
|
// способ управления сигналом DTR |
DWORD fDsrSensitivity:1; |
// чувствительность к сигналу DSR |
|
|
|
(true/false) |
DWORD fTXContinueOnXoff:1; // продолжение передачи при |
||
|
|
сигнале XOFF (true/false) |
DWORD fOutX: 1; |
|
// возможность остановки передачи |
|
|
сигналом ХOFF (true/false) |
DWORD fInX: 1; |
|
// возможность остановки приема |
|
|
сигналом ХOFF (true/false) |
DWORD fErrorChar: 1; |
|
// возможность замещения символов |
113
|
при ошибке (true/false) |
DWORD fNull: 1; |
// возможность отбрасывания нулей |
|
(true/false) |
DWORD fRtsControl:2; |
// способ управления сигналом RTS |
DWORD fAbortOnError:1; |
// остановка обмена при ошибке |
|
(true/false) |
DWORD fDummy2:17; |
// зарезервировано, не используется |
WORD wReserved; |
// зарезервировано, не используется |
WORD XonLim; |
/* максимальное количество байт во |
|
входном буфере для выставления |
|
сигнала XON */ |
WORD XoffLim; |
/* минимальное количество байт во |
|
входном буфере для выставления |
|
сигнала XOFF */ |
BYTE ByteSize; |
// количество информационных |
битов |
|
|
в байте 5-8 |
BYTE Parity; |
// паритет 0-4=no,odd,even,mark,space |
BYTE StopBits; |
// количество стоповых битов 0,1,2 = |
|
1, 1.5, 2 |
char XonChar; |
// символ XON для приема и |
передачи |
|
char XoffChar; |
// символ XOFF для приема и |
|
передачи |
char ErrorChar; |
// символ, замещающий байты при |
|
ошибке |
char EofChar; |
// символ "конец вводимых данных" |
char EvtChar; |
// символ "событие" |
WORD wReserved1; |
// зарезервировано, не используется |
} DCB; |
|
BaudRate может принимать следующие значения:
CBR_110
CBR_300
CBR_600
CBR_1200
CBR_2400
CBR_4800
114
CBR_9600
CBR_14400
CBR_19200
CBR_38400
CBR_56000
CBR_57600
CBR_115200
CBR_128000
CBR_256000
fDtrControl может принимать следующие значения:
DTR_CONTROL_DISABLE - отключено;
DTR_CONTROL_ENABLE - включено; DTR_CONTROL_HANDSHAKE - режим handshake функцию,
EscapeCommFunction нельзя использовать.
fRtsControl может принимать следующие значения:
RTS_CONTROL_DISABLE - отключено;
RTS_CONTROL_ENABLE - включено; RTS_CONTROL_HANDSHAKE - режим handshake, функцию
EscapeCommFunction нельзя использовать.
RTS_CONTROL_TOGGLE - переключающийся режим (RTS включен, когда есть что передавать)
Parity может принимать следующие значения:
NOPARITY |
нет паритета |
ODDPARITY |
случайный паритет |
EVENPARITY |
паритет события |
MARKPARITY |
маркированный паритет |
SPACEPARITY |
пространственный паритет |
StopBits может принимать следующие значения:
ONESTOPBIT 1 стоповый бит
ONE5STOPBITS 1.5 стоповых бита
TWOSTOPBITS 2 стоповых бита
Сигнал XOFF поступает на принимающую сторону при переполнении буфера принимающего устройства и
115
приостанавливает передачу, а XON поступает на принимающую сторону при освобождении буфера принимающего устройства и возобновляет передачу.
Возможны следующие комбинации информационных и стоповых битов: 5 - 1; 5 - 1.5; 6 - 1; 6 - 2; 7 - 1; 7 - 2; 8 - 1; 8 - 2.
116
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ............................................................................. |
3 |
1.ФАЙЛОВАЯ И ДИСКОВАЯ СИСТЕМЫ...…………..... 4
1.1.Размещение файлов. Правила именования файлов. 4
1.2.Функции Win32 API получения информации
офайлах и дисках ………………………………….. 6
1.3.Управляющие функции файловой системы...…….. 18
1.4Вспомогательные функции. Связь всех видов функций………………………………..…………….. 27
2.УСТРОЙСТВА РУЧНОГО ВВОДА …….……………... 28
2.1. Назначение устройств ручного ввода и их виды … 28
2.2.Функции Win32 API для клавиатуры и мыши ….... 29
3.ВИДЕОСИСТЕМА …………………………………….... 43
3.1.Основное функциональное назначение видеосистемы ………………………………....……. 43
3.2.Функции Win32 API для видеосистемы …………... 44
4.ОРГАНИЗАЦИЯ СВЯЗИ С ПРИНТЕРОМ
ПО ПАРАЛЛЕЛЬНОМУ НТЕРФЕЙСУ.....…………….. 62 4.1. Назначение печатающих устройств…………….…. 62
4.2Функции Win32 API для печатающих устройств…. 63
5.ОРГАНИЗАЦИЯ СВЯЗИ
ПО ПОСЛЕДОВАТЕЛЬНОМУ ИНТЕРФЕЙСУ……….. 80
5.1.Назначение обмена данными и способы обмена…. 80
5.2.Функции Win32 API для обмена данными
по RS-232……….………………………………….... 82
6.ВЫПОЛНЕНИЕ КУРСОВОЙ РАБОТЫ……………….. 92
Заключение………………………………………………. 98
Библиографический список ……………………………. 99 Приложение. Структуры данных…...………………... 100
117
Учебное издание
Питолин Андрей Владимирович
РАЗРАБОТКА ПРОГРАММНЫХ СРЕДСТВ ИНФОРМАЦИОННОГО ВЗАИМОДЕЙСТВИЯ ТЕХНИЧЕСКИХ СРЕДСТВ САПР
Компьютерная верстка А.В. Питолина
Подписано к изданию 10.09.2018.
Объем данных 948 Кб.
ФГБОУ ВО «Воронежский государственный технический университет»
394026 Воронеж, Московский просп., 14