Конфігурування СОМ-портів.

Комп'ютер може мати до чотирьох послідовних портів СОМ1-З0М4, для машин класу AT типова наявність двох портів. Керування послідовним портом розділяється на два етапи — попереднє конфигурування (Setup) апаратних засобів порту і поточне (оперативне) переключення режимів роботи прикладним чи системним ПЗ. Конфігурування СОМ-порту залежить від його виконання. Порт на платі розширення конфігурується джамперами на самій платі. Порт на системній платі конфігурується через CMOS Setup.

Параметри конфігурування перераховані нижче.

 

· Базова адреса, що для портів СОМ 1-COM4 звичайно має значення 3F8h, 2F8h, 3E8h і 2E8h. При ініціалізації BIOS перевіряє наявність портів по адресах саме в цьому порядку і привласнює виявленим портам логічні імена З0М1, COM2, COM3 і COM4. Для портів COM3 і COM4 можливі альтернативні адреси 3E0h, 338h і 2E0h, 238h відповідно. Для PS/2 стандартними для портів З0МЗ-С0М8 є адреси 3220h, 3228h, 4220h, 4228h, 5220h і 5228h відповідно.

· Лінія запиту переривання. Для З0М1 і COM3 звичайно використовується лінія IRQ4 чи IRQ11, для COM2 і COM4 — IRQ3 чи IRQ10. У принципі номер переривання можна призначати в довільних сполученнях з базовою адресою (номером порту), але деякі програми і драйвери (наприклад, драйвери послідовної миші) набудовані на стандартні сполучення. Кожному порту, що бідує в апаратному перериванні, призначають окрему лінію, що не збігається з лініями запиту переривань інших пристроїв. Переривання необхідні для портів, до яких підключаються пристрої введення, UPS чи модеми. При підключенні принтера чи плотера перериваннями користаються тільки багатозадачні ОС (не завжди), і цей дефіцитний ресурс PC можна заощадити. Також перериваннями звичайно не користаються при зв'язку двох комп'ютерів нуль-модемним кабелем. Можливість поділу однієї лінії запиту декількома портами (чи портом і іншими пристроями) залежить від реалізації апаратного підключення і ПЗ. При використанні портів, установлених на шину ISA, поділювані переривання звичайно не працюють.

· Канал DMA (для UART 16450/16550, розташованих на системній платі) — дозвіл використання і номер каналу DMA. Режим DMA при роботі із Сомами-портами задіють рідко.

 

Режим роботи порту за замовчуванням (2400 біт/з, 7 біт даних, 1 стоп-битий і контроль парності), заданий при ініціалізації порту під час тесту POST системи BIOS, може змінюватися в будь-який момент при настроюванні комунікаційних програм або командою DOS MODE COMx: із указівкою параметрів. Можливі два варіанти синтаксису — короткий і довгий. Обов'язкові елементи виділені прописними буквами, хоча їх можна набирати і рядковими. У квадратні дужки укладені необов'язкові елементи (дужки в команді не набирають).

MODE COMn[:] [b[. р [, d [, s[,м]] ] ] ]

MODE COMn[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s] [RETRY=r]

Номер порту n повинний вказуватися обов'язково. Параметри можуть бути задані не всі, для пропущених діє останнє визначення. Команда без параметрів повідомляє поточне настроювання порту. У короткій формі пропущені параметри повинні відзначатися коми, оскільки всі параметри розпізнаються по своїй позиції. Значення параметрів перераховані нижче.

 

· BAUD=b — швидкість передачі:

11 - АЛЕ біт/з;

15-150 біт/з;

30 - 300 біт/з;

60 - 600 біт/з;

12-1200 біт/з;
24 - 2400 біт/з;

48 - 4800 біт/з;
96 - 9600 біт/з;

19 — 19,200 біт/з (підтримується не завжди).

· PARITY=p — контроль паритету: N (none) — ні, Е (even) — парність, 0 (odd) —
непарність, М (mark) — «1», S (space) — «0». За замовчуванням — Е; підтримка М и S реалізована не на всіх комп'ютерах.

· DATA=d — число біт даних (5-8), за замовчуванням 7. Значення d=5 і d=6 під­
держиваются не всіма комп'ютерами.

· STOP=s — довжина інтервалу стоп-бита: 1, 1,5 чи 2. Для швидкості ПО біт/із за замовчуванням s=2, для інших — 1. Значення s=1.5 підтримується не всіма комп'ютерами.

· RETRY=r — реакція на тайм-аути при висновку, коли командою MODE принтерний висновок перенаправляється на Сома-порт. Е — повідомлення «помилка», У – “зайнятий”, R – “готовий”, P – повторні спроби до успішного вивода, N – ніяких дій (за замовчуванням).