ПАРАЛЕЛЬНІ ПОРТИ
Н
авіть після більш ніж двох десятиріч інтенсивного розвитку обчислювальної техніки паралельний порт (інші назви – принтерний порт, порт «Centronics») залишається найбільш функціональним і таким, що заслуговує на довіру, інтерфейсом підключення принтерів. Оскільки із комп’ютера в принтер надсилається відразу цілий байт, а передача потоку даних керується спеціальними сигналами підтвердження, необхідність в схемі, що розділяє дані, які передаються, і сигнали синхронізації, практично виключена. Довге життя паралельному порту забезпечили його простота і непогана перепускна здатність, але навіть сучасні реалізації паралельного порту не є незахищеними від збоїв. Несправність кабелю, пошкодження, викликані дією статичної електрики і випадкові збої обладнання можуть легко порушити обмін даними з принтером. Неполадки можуть виникнути при використанні сучасних високопродуктивних принтерів та інших пристроїв, що підключаються до паралельного порту, а також при наданні загального доступу до цього порту. В цій главі описується призначення окремих контактів роз’єму паралельного порту, розповідається про вдосконалення, зроблені в його конструкції та роботі, і наводяться процедури пошуку і усунення неполадок.
Освоюємо паралельний порт
Інтерфейс паралельного порту — один з найбільш простих і відкритих для розуміння ланцюгів, які ви можете знайти в комп’ютері. На рис. 6.1 показана блок-схема типового двонаправленого паралельного порту. Паралельний порт складається з трьох окремих регістрів: регістра даних, регістра стану і регістра керування. Адреса, що подається на шини АО-А9, декодується, щоб визначити, до якого з трьох регістрів у даний момент відбувається звертання. У залежності від стану сигналів I/OR і -I/OW відбувається читання з відповідного регістру або запис у нього. Коли порт готовий прийняти черговий байт, схема керування виставляє сигнал запиту переривання, щоб сигналізувати про свою готовність.
Серцем паралельного порту є регістр даних. В старих моделях комп’ютерів в регістр даних можна було тільки записувати дані — порт був однонаправленим. Але практично у всіх комп’ютерах, починаючи з моделей на базі процесора 80386, вміст регістра даних можна як записувати, так і читати — порт став двонаправленим. Щоб передати сигнал на принтер, процесор просто завантажує потрібне значення в регістр даних. Двонаправлений регістр керування керує поведінкою порту і визначає умови, при яких у процесора повинний бути запитаний наступний символ. Наприклад, зазвичай цей регістр налаштовується так, щоб формувати запит переривання, коли принтер готовий прийняти наступний символ (наприклад, IRQ7 для LPT1 і IRQ5 для LPT2). Останній регістр — регістр стану — доступний тільки для читання, щоб можна було визначити стан принтера. Його вміст формується на підставі сигналів на декількох лініях, що встановлюються принтером. Як роз’єм паралельного порту використовується 25-контактний роз’єм-гніздо.
Адреси і переривання
Як уже згадувалося, звичайний паралельний порт виконаний в вигляді набору трьох регістрів. Один регістр є буфером для восьми ліній передачі даних, інші два обробляють сигнали, що посилаються принтером. У той час як у старих комп’ютерах підтримувалися тільки два чи три паралельних порти, в сучасні моделі вбудована підтримка чотирьох паралельних портів, що позначаються як LPT1, LPT2, LPT3 і LPT4. Цим портам призначаються адреси 0378h (LPT1), 0278h (LPT2), 03ВСh (LPT3) і 02ВСh (LPT4). Ці адреси належать регістру даних. Регістр стану має адресу, більшу на одиницю (тобто 0379h, 0279h, 03BDh і 02BDh), а регістр керування — на два (тобто 037Ah, 027Ah, 03ВЕh і 02BEh).
Під час ініціалізації наявність портів перевіряється в наступному порядку: 03ВСh, 0378h, 0278h і 02BCh. Зв’язок з номером LPT встановлюється відповідно до того, які порти знайдені, тому майте на увазі, що адреси портів можуть залежати від конкретної моделі комп’ютера. Адреси портів вводу-виводу зберігаються в області даних BIOS, починаючи з адреси 0408h. Одна базова адреса може бути присвоєна тільки одному паралельному порту. Якщо та ж адреса присвоєна двом або більше портам, в роботі системи практично напевне виникнуть збої.
Використання переривань зрозуміти складніше. Існує два основних способи визначити, чи готовий принтер прийняти новий символ: опитуванням або формуванням запиту переривання. Найбільш розповсюджений спосіб — опитування — коли програма BIOS опитує (або перевіряє) регістри стану портів, щоб визначити, чи готовий порт прийняти черговий символ, при цьому нормальна робота програми не переривається. Формування запитів переривання набагато ефективніше, але під час друку може загальмувати виконання інших операцій.
Тим, хто працює зі старими моделями комп’ютерів, варто пам’ятати, що адреса 03ВСh спочатку була зарезервована за паралельним портом, розташованим на платі монохромного відеоадаптера (MDA). Якщо ви обслуговуєте таку модель, що не має відеоадаптера, вбудованого в системну плату, то враховуйте, що адреса 03ВСh може виявитися зарезервованою, якщо з якихось причин ви встановите відеоадаптер MDA. На більш нових моделях з відеоадаптером, вбудованим в системну плату, адреса 03ВСh звичайно приділяється паралельному порту.
Завжди починайте вивчення комп’ютера з визначення кількості наявних паралельних портів. Їхнє додавання шляхом встановлення різних плат розширення відбувається настільки просто, що легко перевищити припустиму межу в чотири встановлених порти. Таке перевищення приведе до виникнення конфлікту між пристроями, здатного порушити роботу комп’ютера, і вам доведеться відключити чи видалити зайві порти.
Сигнали паралельного порту
У IBM-сумісних комп’ютерах паралельний порт виконується в вигляді 25-контактного роз’єму-гнізда, подібного до показаного на рис. 6.2. На принтерах встановлений 36-контактний роз’єм «Centronics». Чому колись був використаний саме цей конкретний роз’єм, незрозуміло, адже одинадцять контактів на ньому залишилися невикористаними. Паралельний порт використовує три види ліній: сигнальні, керуючі і лінії землі, тобто нульового рівня. Нижче описується призначення кожної з них. В паралельному порті використовуються стандартні рівні сигналів TTL.
Примітка. Сигнали, позначені як З0...З3, відносяться до регістру керування (Control). Сигнали, позначені як S3...S7, відносяться до регістра стану (State).
Лінії передачі даних
Лінії передачі даних — це проводи, по яких дані передаються між паралельним портом і принтером чи іншим пристроєм. Усього є вісім ліній передачі даних (D0-D7), підключених до контактів від другого до дев’ятого. Щоб зменшити вплив перешкод, кожній лінії даних відповідає свій провід землі, так званий зворотний сигнальний провід (контакти від 20 до 27). Земляні проводи забезпечують електричний зв’язок між комп’ютером і периферійним пристроєм. Інші проводи забезпечують передачу керуючих сигналів.
Скидання і вибір пристрою
Щоб забезпечити початок роботи принтера з визначеного, заздалегідь відомого стану, використовується сигнал ініціалізації або скидання (-INI, контакт 16), що посилається від комп’ютера до принтера. Скидання периферійного пристрою має таку ж дію, як його вимикання і вмикання знову. Сигнал скидання подається рівнем логічного нуля, тому появу такого рівня на лінії принтер має сприймати як сигнал скидання.
Сигнал «вибір» повідомляє комп’ютеру, що периферійний пристрій знаходиться в робочому стані і готовий прийняти дані. Сигнал передається високим рівнем (логічною одиницею). Низький рівень (логічний нуль) означає, що принтер не готовий прийняти дані. Визначити, що сигнал має високий рівень, звичайно можна по індикатору «готовий» (on-line), що світиться, на принтері.
Сигнали «стробування», «зайнято» і «підтвердження»
Після того, як комп’ютер виставить восьмибітовий сигнал на лінії даних, необхідно повідомити периферійному пристрою, що він може одержати ці дані. Сигнал «стробування» (-STR нa контакті 1) встановлюється комп’ютером для периферійного пристрою після видачі сигналу на лінії даних. Це сигнал для периферійного пристрою прийняти байт даних і помістити його у внутрішній буфер для наступної обробки.
В ідеалі паралельний порт може забезпечити передачу даних зі швидкістю до 500000 байт в секунду. При такій швидкості обміну даними необхідно використовувати які-небудь засоби для координації передачі — комп’ютер не повинен посилати новий байт, поки принтер не буде в змозі його прийняти. Щоб змусити комп’ютер відкласти передачу, принтер використовує сигнал «зайнято» (BSY на контакті 11). Він виставляється в одиницю щоразу, коли принтер одержує сигнал «стробування», і залишається в цьому стані доти, поки принтер не буде готовий до прийому наступного байта. Важливо відзначити, що сигнал «зайнято» може викликати як завгодно тривалу затримку, якщо в роботі периферійного пристрою відбувся збій (наприклад закінчився чи зам’явся папір).
Після того, як периферійний пристрій обробив прийнятий байт, він повинен запросити в комп’ютера наступний байт. Принтер знімає сигнал з лінії «зайнято» і формує короткий імпульс сигналу «підтвердження» (-АСК на контакті 10). Цей сигнал має низький логічний рівень, його тривалість звичайно складає 8 мкс. Таким чином, сукупність сигналів даних, «стробування», «зайнято» і «підтвердження» забезпечує передачу через паралельний порт великих обсягів інформації.
Автоматична подача
Деякі принтери при одержанні символу «повернення каретки» автоматично переміщають папір, щоб почати друк нового рядка, тоді як інші принтери в цьому випадку просто повертають каретку в початок поточного рядка. У багатьох принтерів цю поведінку можна змінити встановленням перемикача, але комп’ютер також може керувати ним за допомогою сигналу «повернення каретки» (-AF на контакті 14). Рівень логічного нуля, що подається комп’ютером, змушує принтер переводити рядок щораз, коли він одержує символ «повернення каретки». Якщо сигнал дорівнює логічній одиниці, то для переводу рядка принтер має одержати символ «перевід рядка». В більшості випадків паралельні порти подають на цей контакт логічний нуль.
Вибір пристрою
Сигнал «вибір пристрою» (-DSL, контакт 17) дає можливість комп’ютеру переводити принтер у режим готовності (online) і виводити його з цього режиму. В більшості паралельних портів цей сигнал постійно дорівнює логічному нулю, і обмін даними залежить тільки від стану периферійного пристрою. Подача на цей контакт логічної одиниці припиняє роботу принтера.
Помилка
Сигнал «помилка» (-ERROR, контакт 15) формується принтером (або іншим периферійним пристроєм), щоб повідомити комп’ютеру про порушення роботи пристрою, але не містить ніякої інформації про причини збою. Він може з’явитися через безліч різних причин — їхній перелік залежить від конкретного пристрою. Наприклад, його можуть викликати відсутність паперу або ручний переклад принтера в стан неготовності. Цей сигнал використовує низький логічний рівень, тому при нормальному стані принтера він дорівнює логічній одиниці.
Функціонування порту
У цьому розділі описуються стандартні послідовності станів паралельного порту, що відповідають окремим операціям. Передача даних може початися, якщо принтер знаходиться в стані готовності. Сигнали «стробування» і «підтвердження» повинні бути виставлені в 1, а сигнал «зайнято» - скинутий у 0. При цьому периферійний пристрій готовий прийняти байт даних. Коли починається спроба друку, процесор опитує необхідний паралельний порт і перевіряє його регістр стану. Якщо порт знаходиться в стані готовності, байт даних записується в регістр даних і потім передається в периферійний пристрій.
Стан шини даних має встановитись не менше, ніж за 0,5 мкс до того, як комп’ютер встановить в 0 сигнал «стробування». У відповідь принтер встановлює в 1 сигнал «зайнято», що призводить до зміни стану порту. Наступний запит регістра стану покаже, що порт зайнятий. Сигнал «стробування» повинний мати тривалість не менше 1 мкс. Дані повинні знаходитися на шині даних ще принаймні 0,5 мкс після закінчення імпульсу «стробування». Ці затримки надають паралельному порту досить часу, щоб прийняти дані. Обробка отриманого байта може зайняти 1 мс, якщо буфер принтера не заповнений. Якщо буфер заповнений, обмін даними може призупинитися на півсекунди і більше. Після того як байт даних оброблений, сигнал «зайнято» скидається в 0 і принтер посилає імпульс «підтвердження» з рівнем 0 і тривалістю 5 мкс, щоб запросити наступний байт даних у комп’ютера, що очікує. Після того, як сигнал «підтвердження» повернеться в стан 1, інтерфейс готовий до початку передачі чергового байта. Тепер при черговому запиті регістр стану покаже, що порт знаходиться в стані готовності і можна передавати новий байт. На рис. 6.3 показані часові діаграми — один повний цикл передачі даних може зайняти дещо більше за 1 мс.

Рис. 6.3. Типова часова діаграма роботи паралельного порту
Вдосконалені паралельні порти
Легко зрозуміти, чому паралельний порт виявився привабливим для розробників устаткування. У той час як пристрої з послідовним інтерфейсом повинні «боротися» зі швидкістю передачі даних, стартовим і стоповим бітами, парністю даних (проблеми, не до кінця переборені і зараз), пристрої з паралельним інтерфейсом досить підключити — і вони готові до використання. Паралельний порт здійснив принцип «підключи і працюй» задовго до того, як цей термін став популярним. Але хоча паралельний порт був основним пристроєм для обміну даними між комп’ютером і периферійними пристроями, він не залишався незмінним. Якщо в останні роки ви купували новий комп’ютер або плату вводу-виводу, то, напевно, звернули увагу на терміни «поліпшений паралельний порт» (ЕРР — enhanced parallel port) і «порт із розширеними можливостями» (ЕСР — enhanced capabilities port), що відносяться до паралельного порту. Після розробки стандарту IEEE 1284 відбулося перетворення паралельного порту «класичної» архітектури в дійсно поліпшений паралельний порт. У цьому розділі описуються різні режими роботи паралельного порту.
Однонаправлені порти
Найперший комп’ютер IBM PC використовував однонаправлений паралельний порт. Тобто дані могли передаватися тільки в одному напрямку (від комп’ютера до периферійного пристрою, яким майже завжди був принтер). У той час передача інформації в одну сторону цілком відповідала ідеї комп’ютера загального призначення і вираз «паралельний порт» було практично синонімом терміна «принтерний порт». Однонаправлений порт панував на ринку до 1987 року, поки не з’явилися комп’ютери на базі процесора 80386.
Двонаправлені порти типу 1
У 1987 році IBM запустила у виробництво серію комп’ютерів PS/2. Серед нововведень, що з’явилися в цій серії, був і двонаправлений паралельний порт. Двонаправлений порт не був технологічним проривом (деякі більш старі аматорські комп’ютери інших сімейств використовували подібні порти), але IBM першою використала його в масових моделях. Двонаправлений порт працював не швидше однонаправленого, але здатність передавати дані назад в комп’ютер відкрила можливості підключення до такого порту й інших пристроїв крім принтерів (наприклад, накопичувачів на магнітній стрічці і т.п.). Інші виробники підхопили це нововведення, і двонаправлений порт став використовуватися практично завжди.
Двонаправлені порти типу 3
Однією з проблем двонаправлених паралельних портів було інтенсивне використання процесора, що викликало велике навантаження на процесор при передачі даних. У більш пізніх моделях PS/2 (57, 90 і 95) була зроблена спроба збільшити пропускну здатність паралельного порту шляхом використання прямого доступу до пам’яті (DMA). У цьому режимі процесор вказує блок пам’яті, який має бути переданий. А самою передачею даних керує контролер DMA, не вимагаючи втручання процесора — це звичайно приводить до більш швидкої передачі даних. Цей же режим використовується і при прийомі даних. Однак цей тип двонаправленого порту використовувався досить рідко, оскільки сучасні процесори забезпечують більш швидку передачу даних, ніж у режимі DMA.
Стандарт IEEE 1284
Наприкінці 1980-х років стало зрозуміло, що традиційні двонаправлені паралельні порти недостатньо відповідають новим поколінням швидких периферійних пристроїв, що підключаються до паралельного порту (таким як дисководи CD-ROM, накопичувачі на магнітних стрічках і лазерні принтери). Швидкість передачі даних 150 Кбайт/с, що раніше вважалася високою, тепер стала обмежувати продуктивність нових пристроїв. У 1991 році кілька виробників устаткування — IBM, Lexmark і Texas Instruments — організували об’єднання мережевого друку (Network Printing Alliance — NPA), щоб спробувати розробити нову архітектуру паралельного порту. У 1994 році IEEE (разом з цим об’єднанням) оголосив про випуск стандарту IEEE 1284, що описує стандартний метод передачі сигналів для двонаправленого паралельного периферійного інтерфейсу.
Стандарт IEEE 1284 не був обмежений єдиним підходом до рішення проблеми — він містив описи п’яти різних режимів роботи паралельного порту: режим сумісності, режим передачі напівбайтів (nibble mode), режим передачі байтів, режими ЕСР і ЕРР. Усі п’ять режимів володіли (але в різній мірі) можливістю двонаправленої передачі даних (у стандарті використовувався термін «канал зворотної передачі» — back channel communication). При ініціації паралельного порту, що відповідає зазначеному стандарту, перевіряється, який режим роботи є найбільш придатним.
В даний час вбудованою підтримкою стандарту IEEE 1284 володіють операційні системи Microsoft Windows 95 і вище, Sun Solaris, Linux. Вони можуть забезпечувати узгодження режимів роботи порту з периферійним пристроєм і швидким друком в режимі ЕСР. Щоб використовувати цей режим, принтер і паралельний порт повинні його підтримувати. Крім того, у диспетчері пристроїв Windows паралельний порт повинний, бути сконфігурований як «паралельний порт ЕСР» з виділенням йому лінії запиту переривання і каналу DMA. Визначити поточну конфігурацію паралельного порту можна в тому ж диспетчері пристроїв (див. рис. 6.4). Якщо порт сконфігурований не як порт ЕСР (але використовується ЕСР-сумісний принтер), драйвер перейде в режим «швидкий Centronics». Якщо не виконується жодна з цих умов, драйвер переводить порт у «старий», повільний режим роботи.
Режим сумісності
Цей режим описує основний протокол, що використовується більшістю комп’ютерів для передачі даних звичайному принтеру. Його часто називають режимом Centronics, і цей режим звичайно використовується в стандартному паралельному порті. У цьому режимі дані поміщаються на шину даних, опитується стан принтера, щоб переконатися в його готовності і відсутності помилок, потім програмно генерується сигнал стробу, що передає дані на принтер. Щоб передати один байт даних, в цьому режимі потрібно виконати чотири команди вводу-виводу (і безліч додаткових команд). При цьому швидкість передачі даних обмежена величиною 150 Кбайт/с. Цієї швидкості цілком достатньо для передачі даних на матричні, струменеві і старі лазерні принтери, але вона є серйозним обмежуючим фактором при роботі з мережевими адаптерами, дисковими пристроями і сучасними лазерними принтерами. Багато які з сучасних контролерів вводу-виводу, виконані за стандартом IEEE 1284 і вбудовані в системну плату, використовують в цьому режимі для передачі даних буфери «першим прийшов — першим пішов» (FIFO). Цей режим називається «швидкий Centronics» чи «режим FIFO». При використанні буферів при передачі даних у принтер використовуються апаратне формування сигналів синхронізації і керування. Оскільки затримки між послідовними передачами даних при цьому мінімальні і не потрібно програмного втручання в цей процес, швидкість передачі даних може досягати 500 Кбайт/с. Пам’ятайте, однак, що цей режим не описаний стандартом IEEE 1284.
Режим передачі напівбайтів
Режим передачі напівбайтів — це найбільш розповсюджений метод передачі даних від принтера чи іншого периферійного пристрою назад до комп’ютера. Цей режим звичайно використовується разом з режимом сумісності або спеціальним фірмовим режимом прямої передачі даних для створення двонаправленого каналу між комп’ютером і пристроєм. Усі стандартні паралельні порти мають п’ять ліній для передачі сигналів стану від принтера до комп’ютера. Використовуючи ці лінії, периферійний пристрій може передати байт даних (8 біт), розділивши його на два напівбайти (nibbles, буквально — шматочки).
Подібно режиму сумісності, режим передачі напівбайтів вимагає програмного керування процедурою передачі даних. З усіх режимів зворотної передачі режим напівбайтів найбільшою мірою навантажує процесор. З цієї причини на швидкість передачі накладається дуже суворе обмеження 50 Кбайт/с. Головною перевагою цього методу є його здатність працювати на будь-яких комп’ютерах, що мають паралельний порт. Обмеження швидкості передачі практично не впливає на низькошвидкісні пристрої, такі як принтери, але може бути неприпустимим для інших типів периферійних пристроїв.
Режим передачі байтів
У більш пізніх реалізаціях (починаючи із сімейства IBM PS/2) апаратура паралельного порту була змінена таким чином, що станом ліній даних міг керувати і принтер, тобто паралельний порт міг перетворюватися в порт прийому даних. Це дає можливість периферійним пристроям відправляти в комп’ютер по байту даних за цикл передачі завдяки використанню восьми ліній даних (в режимі передачі напівбайтів для цього потрібно два цикли). При такому підході канал зворотної передачі даних у комп’ютер працює з такою ж швидкістю, як і канал передачі даних від комп’ютера в режимі сумісності. Порт такого типу іноді називається поліпшеним двонаправленим портом, і його часто плутають з поліпшеним паралельним портом (ЕРР), хоча два цих типи порту — не те саме.
Режим ЕСР
Протокол роботи порту з розширеними можливостями (ЕСР) був запропонований компаніями Hewlett-Packard і Microsoft як поліпшений режим обміну даними з принтерами і пристроями типу сканерів. Подібно протоколу ЕРР, описаному нижче, ЕСР забезпечує високошвидкісний двосторонній обмін між комп’ютером і периферійним пристроєм. Разом із пропозицією нового протоколу були запропоновані і зміни в складі регістрів порту (опис можна знайти в документі Microsoft «Протокол роботи порту з розширеними можливостями IEEE 1284 і стандарт інтерфейсу ISA»).
Серед багатьох можливостей ЕСР - стиск даних, переданих через паралельний порт, методом RLE, буфери FIFO і для прямого, і для зворотного каналу передачі даних, використання як програмного вводу-виводу (РІО), так і прямого доступу до пам’яті (DMA). За методом RLE коефіцієнт стиску може досягати 64:1, що, зокрема, виявляється корисним для принтерів і сканерів, що передають величезні кількості даних, які містять ділянки, що повторюються. Щоб стиск міг використовуватися, його повинні підтримувати як передаючий, так і приймаючий пристрій.
Адресація каналів — це схема, що використовує адресацію декількох логічних пристроїв всередині одного фізичного пристрою. У багатофункціональних пристроях, що поєднують, наприклад, принтер, факс і модем, до того самого порту підключено відразу три пристрої. При використанні адресації каналів для доступу до кожного з цих пристроїв ви можете одержувати дані від модему в той час, коли канал принтера зайнятий виводом інформації, що друкується. В режимі сумісності, якщо принтер завантажений потоком даних, то інші пристрої не зможуть одержувати чи приймати дані, в той час як у режимі ЕСР інший пристрій може продовжувати обмін даними по своєму каналу.
За протоколом ЕРР, описаним нижче, драйвер порту може комбінувати операції запису в порт і читання з порту без небезпеки втрати даних чи порушення синхронізації. За протоколом ЕСР, однак, зміна напрямку передачі даних повинна щораз узгоджуватися з периферійним пристроєм. Для одержання даних комп’ютер повинний запросити в пристрою виконання операції «зворотна передача даних» і дочекатися, поки пристрій видасть підтверджуючий сигнал. Тільки після цього стане можливою передача самих даних. Оскільки пряма передача даних може відбуватися в режимі прямого доступу до пам’яті, то для одержання даних програма повинна дочекатися закінчення попередньої передачі, потім дочекатися спустошення буфера (щоб визначити точну кількість переданих байтів) і тільки після цього запросити зворотну передачу даних.
Режим ЕРР
Протокол ЕРР спочатку був розроблений компаніями Intel, Xircom і Zenith Data Systems, щоб забезпечити високошвидкісну передачу даних через паралельний порт, який, проте, мав був бути сумісним зі звичайним паралельним портом. Вперше цей протокол був реалізований у наборі мікросхем Intel 386SL (мікросхема вводу-виводу 82360). Це відбулося ще до створення комітету IEEE 1284 і початку роботи над відповідним стандартом. Протокол ЕРР мав багато переваг і став підтримуватися багатьма виробниками устаткування як додатковий метод передачі даних. Для розвитку і поширення протоколу ЕРР була створена відкрита асоціація з приблизно 80 виготовлювачів устаткування. Ця асоціація пізніше перетворилася в комітет ЕРР, що забезпечив включення протоколу ЕРР в стандарт IEEE 1284 як розширеного режиму роботи порту. Оскільки виробництво портів ЕРР почалося до виходу стандарту IEEE 1284, між першими і наступними варіантами порту є невелика різниця.
Одна з найбільш важливих можливостей протоколу, яку слід зазначити — це забезпечення передачі даних за один цикл вводу-виводу по шині ISA. В результаті при використанні протоколу ЕРР швидкість обміну даними могла складати від 500 Кбайт/с до 2 Мбайт/с. Це означає, що паралельний порт міг працювати зі швидкістю, порівнянною зі швидкістю інших пристроїв, підключених до цієї шини (висока продуктивність паралельного порту — одна з найбільш важливих особливостей протоколу ЕРР). Передача даних відбувається зі швидкістю роботи найбільш повільного пристрою в парі порт — периферійний пристрій, але можливість підстроювання швидкості забезпечила відсутність перешкод нормальній роботі обох пристроїв через розбіжність швидкостей. При необхідності контролер порту ЕРР формує необхідні сигнали для функціонування порту в точній відповідності зі стандартним паралельним портом.
Здатність передавати дані від комп’ютера або до нього після виконання всього однієї команди дозволяє порту ЕРР працювати з тією же швидкістю, що і шина ISA. Замість того, щоб інтенсивно використовувати програмні цикли, цілі блоки даних можуть бути передані однією командою. В залежності від реалізації порту і можливостей периферійного пристрою, порт ЕРР може обмінюватися даними зі швидкістю від 500 Кбайт/с до майже 2 Мбайт/с. Такої швидкості більш ніж досить для пристроїв з інтенсивним обміном даними, такими як мережні адаптери, дисководи CD-ROM, стрічкові накопичувачі й інші пристрої. Протокол ЕРР забезпечує високий ступінь сполучення між драйвером периферійного пристрою і самим цим пристроєм, під цим мається на увазі, що драйвер в будь-який момент може визначити стан периферійного пристрою і керувати ним. При цьому можна комбінувати операції читання і запису, а також здійснювати блокову передачу даних.
Якість кабелів для портів ЕСР/ЕРР
При використанні стандартних паралельних портів довжина кабелю обмежується трьома метрами. При перевищенні цієї межі перехресні перешкоди між проводами можуть привести до виникнення помилок при передачі. Високоякісні кабелі з добрим екрануванням можуть мати довжину і більше, але широко розповсюджені дешеві кабелі, які легко знайти в магазинах, звичайно працездатні при довжині не більш двох метрів. Щоб забезпечити високошвидкісний обмін, передбачений стандартом IEEE 1284, була придумана і нова конструкція кабелю. Це не було простою задачею, з огляду на те, що за IEEE 1284 відстань між комп’ютером і периферійним пристроєм може становити до десяти метрів. Тому при переводі паралельного порту в режими ЕСР чи ЕРР переконайтеся, що використовується кабель належної якості.
Особливості використання IEEE 1284
На жаль, хоча можливості, які обіцяє IEEE 1284, виглядають дуже заманливо, необхідно враховувати умови, у яких йому доведеться працювати. Для повного використання всіх можливостей стандарту повинний використовуватися не тільки відповідний паралельний порт, але і відповідні кабель і периферійний пристрій — принтер, стрічковий накопичувач, жорсткий диск і т.д.
Встановити порт стандарту IEEE 1284 нескладно — практично всі сучасні системні плати і плати вводу-виводу містять саме такі порти. Складність в тому, що при використанні принтерного кабелю за п’ять доларів і старого матричного принтера Panasonic KX-P1124 ви не отримаєте від нового порту ніяких переваг. Для цього буде потрібно новий кабель стандарту IEEE 1284 і пристрій з достатнім обсягом пам’яті (наприклад, лазерний принтер). При цих умовах ви помітите збільшення швидкості, але вона усе ще буде далека від запроектованих величин. Для забезпечення максимальної швидкості необхідно встановити периферійний пристрій стандарту IEEE 1284, що може повідомити порту свій ідентифікатор і забезпечити оптимальну продуктивність.

Усунення несправностей і вирішення труднощів
Хоча звичайний паралельний порт є достатньо простим пристроєм вводу-виводу, він може викликати у техніків деякі труднощі. В перших моделях комп’ютерів паралельні порти були виконані у вигляді восьмирозрядної плати розширення. Якщо порт виходив з ладу, можна було просто замінити цю плату. Зараз практично всі комп’ютери мають паралельний порт, вбудований в системну плату, звичайно у складі системного чіпсету. І якщо в такому вбудованому порті виявляються неполадки, технік частіше за все повинен вибрати між одним з трьох варіантів.
? Замінити мікросхему південного моста, яка обслуговує паралельний порт. Для цього необхідна наявність спеціальної паяльної станції і справної мікросхеми для заміни, що може бути доцільним при достатньо великих об’ємах ремонту. Але це вельми непрактичне рішення для звичайного користувача.
? Відключити паралельний порт, що вийшов з ладу, перемикачами на системній платі (якщо це можливо), і вставити в роз’єм розширення плату вводу-виводу, що містить паралельний порт. Для цього необхідно мати вільний роз’єм розширення. При цьому займається один з роз’ємів, але це спосіб швидко і недорого виправити стан. Тільки не забудьте відключити на платі вводу-виводу порти, які не використовуються.
? Замінити системну плату. Це просте рішення, яке не вимагає спеціального устаткування, проте, це недешево - розглядайте його як крайній випадок.
Усунення несправностей
Паралельні порти, загалом, нескладні пристрої, але деякі неполадки виникають в них достатньо регулярно. Перш ніж звірятися з ознаками, описаними нижче, перевірте наступне.
? Кабель. Ви здивуєтеся, дізнавшись, наскільки часто неполадки в роботі паралельного порту викликаються погано сполученим, пошкодженим або просто дешевим сполучним кабелем. Переконайтеся, що кабель має в довжину не більше два метри і що обидва кінці добре закріплено на роз’ємах. Спробуйте замінити кабель на інший, явно справний. У багатьох випадках використання якісного кабелю може вирішити вашу проблему.
? Режим роботи порту. Пам’ятайте, що сучасний паралельний порт може працювати в декількох різних режимах, таких як режим сумісності, ЕСР або ЕРР. Якщо виникають неполадки в роботі принтера або інших пристроїв, підключених до паралельного порту, спробуйте перевести порт в режим сумісності (стандартний режим) в системних настройках комп’ютера (BIOS). В інших випадках може, навпаки, потребуватись перевести порт в режим ЕСР або ЕРР, щоб забезпечити нормальну роботу високошвидкісного принтера або багатофункціонального пристрою, підключеного до паралельного порту.
? Конфлікти устаткування. Паралельні порти використовують IRQ 5 і 7. Звичайно другий порт (LPT2) використовує IRQ 5, що служить джерелом конфліктів із звуковими платами, що часто використовують саме це переривання. Якщо вам необхідно використовувати два або більше паралельних порти, може бути потрібно переконфігурувати звукову плату, щоб вона використовувала інше переривання, або навіть взагалі її видалити.
? Конфлікти драйверів порту принтера. Ця проблема часто виникає при підключенні до паралельного порту таких пристроїв, як Iomega Zip або SyQuest SyJet. Їхні драйвери можуть посилати в порт принтера спеціальні недруковані символи, щоб дати сигнал пристрою, що подальші дані призначаються саме пристрою, а не принтеру. Кольорові принтери і принтери з великою кількістю вбудованих шрифтів також можуть використовувати деякі з цих спеціальних символів для своїх цілей. Така ситуація може викликати конфлікт між двома драйверами, що приводить до того, що система вважатиме і порт, і пристрій працюючими неправильно. Багато виробників принтерів, наприклад, Hewlett-Packard, останнім часом переписують драйвери, щоб виключити використання таких недрукованих символів для управління принтером, але ще є драйвери, що їх не використовують, і викликають тим самим нерозв’язні конфлікти. Єдине рішення цієї проблеми полягає у використанні різних портів для принтера і іншого пристрою (або встановлення перемикача, що підключає до паралельного порту тільки один пристрій). Щоб перевірити, чи існує новий драйвер, що не взаємодіє з «чужим» пристроєм, зв’яжіться з виробником принтера.
? Програми стеження за паралельним портом. Іншою причиною конфлікту можуть бути програми, що стежать за станом принтера. Деякі компанії, наприклад Hewlett-Packard, комплектують принтери програмами, що відстежують їхній стан. Якщо ви підключаєте принтер не безпосередньо до паралельного порту, а через інший пристрій, такі програми стеження повинні бути відключені. Вони можуть викликати пошкодження передаваних даних або привести до збоїв в роботі системи. Відключення таких програм не вплине на сам друк.
Вирішення труднощів з конфігурацією Windows
Windows давно стала домінуючою операційною системою для персональних комп’ютерів, витіснивши DOS, тому більшість неполадок з принтерами і іншими пристроями, підключеними до паралельного порту, відбуваються саме при роботі в Windows. В цьому розділі перераховані найтиповіші проблеми з конфігурацією таких пристроїв в Windows. Звичайно проблеми попадали в одну з наступних категорій.
? Проблеми з підключенням. Переконайтеся, що для підключення пристрою до паралельного порту ви використовуєте відповідний кабель. Якщо між портом і пристроєм стоїть перемикач, спробуйте підключити пристрій безпосередньо до порту. Якщо між портом і принтером підключений ще якийсь пристрій, розгляньте питання про встановлення в комп’ютер додаткового паралельного порту, щоб до кожного порту був підключений лише один пристрій.
? Порт відключений або переривання зарезервовано. Перезавантажте комп’ютер і перевірте настройки BIOS для паралельного порту. Переконайтеся, що порт не відключений. Перевірте переривання, призначені портам (наприклад, IRQ 7 для LPT1 і IRQ 5 для LPT2) - деякі версії BIOS можуть автоматично зарезервувати ці переривання.
? Порт неправильно сконфігурований. Поки ви не вийшли з настройок BIOS, перевірте, в якому режимі працює паралельний порт. В більшості випадків режим сумісності (стандартний режим) цілком задовільний для простих принтерів, але високопродуктивні принтери і інші пристрої, що підключаються до паралельного порту, можуть для своєї роботи зажадати режим ЕСР або ЕРР. В деяких комп’ютерах можуть також існувати нестандартні або спеціальні режими роботи паралельного порту, несумісні з підключеним пристроєм.
? Відключіть програми стеження за станом принтера. Програми стеження за станом принтера і деякі резидентні програми, працюючі з принтером, сумно відомі тим, що сприяють взаємному впливу пристроїв і їхніх драйверів один на одного. Відключіть або видаліть всі програми цього типу. Перевірте папку «Автозавантаження» і стан автоматичного пропуску драйверів в інформації про систему, щоб взнати, що саме запускається при завантаженні системи. Резидентні програми для DOS і інші драйвери реального режиму можуть бути відключені доданням до відповідного рядка у файлах CONFIG.SYS або AUTOEXEC.BAT префікса REM.
? Пристрій, підключений до паралельного порту, включений не в той режим. Перевірте, що принтер або інший пристрій (наприклад, дисковий накопичувач SyQuest) не включений в режим РnР. Перевірте документацію до пристрою, щоб взнати, чи немає у нього іншого режиму роботи (наприклад, традиційного - legacy), в який його можна було б перемкнути.
? Перевірте наявність конфліктів переривань і усуньте їх. Відкрийте диспетчер пристроїв і переконаєтеся, що жоден інший пристрій не використовує переривання, виділені паралельним портам. Звичайно не буває проблем з IRQ 7, але звукові плати часто використовують IRQ 5. Переконфігуруйте або видаліть пристрій, через який виникає конфлікт. Для прикладу розглянемо дисковий накопичувач SyQuest. Якщо в списку пристроїв відсутній контролер SCSI (або в списку таких контролерів пристрій «SyQuest Parallel Port Drive» помічено жовтим значком), це звичайно означає, що через конфлікт переривань драйвер SyQuest не зміг завантажитися.
? Перевірте наявність і видаліть схожі драйвери. Якщо ви встановили нову модель або інший тип пристрою, що підключається до паралельного порту, в системі могли залишитися старі драйвери, що впливають на роботу нових драйверів. Наприклад, якщо в Windows є драйвери стрічкового накопичувача, що підключається до паралельного порту, то ці драйвери можуть конкурувати в доступі до паралельного порту з драйверами SyQuest і, тим самим, не дати Windows розпізнати цей пристрій. Витратьте час на видалення або відміну встановлення драйверів і програмного забезпечення від старих пристроїв, а потім, якщо необхідно, перевстановіть драйвери нового пристрою.
Симптоми
Симптом 6.1. При включенні комп’ютера ви чуєте звуковий сигнал про помилку в паралельному порті або бачите на екрані повідомлення про таку помилку
Процедура самоперевірки комп’ютера (POST) при цьому може виконуватися далі, а може зупинитися, в залежності від того, як написаний код самоперевірки в BIOS. Неможливість ініціювати порт звичайно сигналізує про неполадки в роботі компонентів комп’ютера. Якщо по звуковому сигналу важко визначити вид помилки, спробуйте перезавантажити комп’ютер зі встановленою платою POST-діагностики. Індикатори на платі висвітять деякий код, значення якого пояснюється в документації до плати. Після того, як ви ідентифікували, що це сигнал про порушення роботи паралельного порту, можна приступити до процедури усунення неполадок.
Почніть з видалення всіх плат розширення, що містять паралельні порти. Якщо після видалення певної плати повідомлення про помилку зникне, значить плата, схоже, несправна. Ви можете замінити її такою ж новою платою або спробувати відремонтувати. Якщо в комп’ютері тільки один паралельний порт, то він, швидше за все, вбудований в системну плату.
В старих комп’ютерах може бути несправна одна з мікросхем вводу-виводу . В цьому випадку потрібно по принциповій схемі системної плати встановити, через які деталі проходить сигнал і де ці деталі розташовані. В більш нових системних платах використовуються мікросхеми великого і надвеликого ступеня інтеграції, тому паралельний порт виявляється лише невеликою частиною мікросхеми (звичайно це мікросхема південного моста). Можливо, вдасться прослідити по схемі шлях сигналу, але скоріше за все, ви виявите, що паралельний порт підключений безпосередньо до виводів цієї мікросхеми. Замініть несправну мікросхему або цілком системну плату.
Симптом 6.2. На комп’ютері XT або перших моделях AT висвічується повідомлення про помилку 9хх
Програма BIOS не виявила помилок при ініціалізації паралельного порту, але не змогла призначити йому системне ім’я LPT. Також як і в симптомі 6.1, група помилок 9хх свідчить про несправності устаткування комп’ютера. Щоб виявити і усунути несправність, дійте так само, як і у випадку симптому 6.1, або замініть системну плату.
Симптом 6.3. Комп’ютер завантажується нормально, але периферійний пристрій (принтер) не працює
Програми можуть повідомляти про перевищення часу очікування відповіді принтера або про загальну помилку принтера. Перш ніж діставати інструменти, потрібно з’ясувати, де криється неполадка - в комп’ютері або в периферійному пристрої. Якщо принтер перестав працювати, запустіть вбудовану в нього процедуру самотестування, щоб переконатися, що сам принтер справний. Перевірте, що кабель, що сполучає принтер і комп’ютер, не пошкоджений і акуратно приєднаний до роз’ємів (можна спробувати інший кабель). Якщо у пристрою є декілька різних інтерфейсів, наприклад паралельний і послідовний, переконайтеся, що пристрій використовує саме паралельний інтерфейс. Переконайтеся, що програмне забезпечення (текстовий або графічний редактор, програма діагностики та ін..) налаштовано саме на цей принтер. Переконайтеся, що програма звертається саме до того порту, до якого підключений принтер, і що вибраний належний драйвер принтера. Якщо на комп’ютері немає програмного забезпечення, працюючого з принтером, ви можете, виконати пробний друк з командного рядка DOS, натиснувши клавіші SHIFT і PRINT SCREEN. Це поєднання клавіш викликає друк на принтері того, що зображено на екрані.
Відключіть від комп’ютера принтер і встановіть на роз’єм паралельного порту діагностичну заглушку (loopback). Запустіть програму діагностики і перевірте стан і працездатність кожного паралельного порту. У разі виявлення яких-небудь помилок знайдіть відповідний порт. Якщо цей порт розташований на платі розширення, замініть плату. Якщо порт інтегрований в системну плату, можна замінити несправну мікросхему, встановити плату розширення, щоб використовувати паралельний порт на ній, або замінити системну плату.
Симптом 6.4. Периферійний пристрій (принтер) не переходить в режим готовності
Перш ніж дані зможуть бути передані, сигнали керівників повинні прийняти наступні стани: «зайнято» (контакт 11) і «нема паперу» (контакт 12) - логічний 0 «вибір» (контакт 13) і «помилка» (контакт 15) - логічна 1. Всі ці чотири сигнали формують периферійний пристрій. Перевірити ці сигнали можна звичайним тестером. Якщо який-небудь з сигналів буде мати інше значення, порт вважатиме, що периферійний пристрій не готовий до роботи. Перш за все, спробуйте замінити сполучний кабель. В старому або зношеному кабелі один або більше контактів можуть бути несправними. Спробуйте підключити інший периферійний пристрій. Якщо воно приходить в стан готовності, то в першому пристрої несправні інтерфейсні ланцюги.
Якщо й від іншого пристрою комп’ютер не одержує сигнал готовності, то наявні неполадки в паралельному порті. Перевірте конфігурацію комп’ютера, щоб переконатися у відсутності конфліктів між різними паралельними портами. Відключите від комп’ютера принтер і встановите на роз’єм паралельного порту діагностичну заглушку (loopback). Запустіть програму діагностики і перевірте стан і працездатність кожного паралельного порту. У разі виявлення яких-небудь помилок знайдіть відповідний порт. Якщо цей порт розташований на платі розширення, замініть плату. Якщо порт інтегрований в системну плату, можна замінити несправну мікросхему, встановити плату розширення, щоб використовувати паралельний порт на ній, або замінити системну плату.
Симптом 6.5. Дані випадковим чином ушкоджуються або втрачаються
Вашою першою дією в цьому випадку повинна стати перевірка сполучного кабелю. Перевірте, що кабель не пошкоджений і правильно підключений до обох роз’ємів. Довжина кабелю не повинна перевищувати два метри. Паразитні перехресні перешкоди між дротами в довгих кабелях можуть створювати помилкові сигнали. Якщо з кабелем все гаразд, то несправний або порт, або периферійний пристрій. Почніть з паралельного порту. Відключіть від комп’ютера принтер і встановите на роз’єм паралельного порту діагностичну заглушку (loopback). Запустіть програму діагностики і перевірте стан і працездатність кожного паралельного порту. У разі виявлення яких-небудь помилок знайдіть відповідний порт. Якщо цей порт розташований на платі розширення, замініть плату. Якщо порт інтегрований в системну плату, можна замінити несправну мікросхему, встановити плату розширення, щоб використовувати паралельний порт на ній, або замінити системну плату.
Якщо перевірити порт не представляється можливим, виконайте цю перевірку непрямим шляхом, підключивши периферійний пристрій до завідомо справного комп’ютера. Якщо з іншим комп’ютером пристрій буде працювати нормально, ймовірно в першому комп’ютері є неполадки в ланцюгах паралельного порту. Замініть несправні деталі або цілком системну плату. Якщо периферійний пристрій погано працює і з іншим комп’ютером, то, швидше за все, несправний саме він.
Симптом 6.6. Ви постійно бачите повідомлення про відсутність паперу в принтері, хоча папір у принтері є, і його датчик паперу працює нормально
Спробуйте підключити інший принтер. Якщо інший принтер запрацює, то неполадки —у принтері, а не в паралельному порті. Тестером перевірте стан сигналу «закінчився папір», що подається на комп’ютер. Спробуйте при включеному принтері видалити і знову вставити папір. Ви повинні побачити, що сигнал «закінчився папір» змінює свій стан між логічним «0» (є папір) і логічною «1» (немає паперу). Якщо сигнал завжди дорівнює логічній 1 незалежно від наявності паперу, імовірно, несправний датчик паперу чи інтерфейсні ланцюги принтера. Якщо сигнал відповідає наявності паперу, то неполадки, швидше за все, у інтерфейсних ланцюгах паралельного порту.
Якщо ви думаєте, що неполадки — в паралельному порті, то відключіть від комп’ютера принтер і встановіть на роз’єм паралельного порту діагностичну заглушку (loopback). Запустіть програму діагностики і перевірте стан і працездатність кожного паралельного порту. У випадку виявлення яких-небудь помилок знайдіть відповідний порт. Якщо цей порт розташований на платі розширення, замініть плату. Якщо порт інтегрований в системну плату, можна замінити несправну мікросхему, встановити плату розширення, щоб використовувати паралельний порт на ній, чи замінити системну плату.
Додаткова інформація
Технічна документація по порту ECP – HYPERLINK "http://www.fapo.com/files/ecp_reg.pdf" www.fapo.com/files/ecp_reg.pdf
Hewlett-Packard – HYPERLINK "http://www.hp.com" www.hp.com
Стандарт IEEE 1284 – HYPERLINK "http://www.fapo.com/ieee1284.pdf" www.fapo.com/ieee1284.pdf

ПОСЛІДОВНІ ТА ІНФРАЧЕРВОНІ ПОРТИ
Б
удь-якому комп’ютеру потрібні засоби зв’язку з зовнішніми пристроями. У той час як у сучасних комп’ютерах пристрої підключаються до USB і IEEE 1394 (торгова марка FireWire), в ранніх комп’ютерів для зв’язку з зовнішніми пристроями були тільки послідовні і паралельні порти. Так як паралельний порт звичайно розглядався як порт для підключення принтера, то потрібний був ще один порт для зв’язку з простими, повільними пристроями типу модемів і мишей. Асоціація Electronics Industry Association (EIA) задовольнила цю потребу, розробивши стандарт послідовного (serial) зв’язку. Замість того, щоб посилати 8 бітів одночасно по декількох лініях передачі даних (як це робиться паралельним портом), використовувалися тільки дві лінії передачі — одна для передачі даних й одна для одержання. EIA назвала свій стандарт послідовного зв’язку RS-232 (чи просто «послідовний порт»). Послідовний порт мав декілька істотних переваг у порівнянні з першими паралельними портами. По-перше, послідовний порт спочатку був спроектований як двонаправлений. Це зробило його основним способом підключення інтерактивних пристроїв типу модемів, мишей, планшетів і т.д. По-друге, послідовний порт використовував менше фізичних ліній зв’язку, ніж паралельний. Це сприяло тому, що кабелі були менш дорогими, а імовірність виникнення проблем із з’єднаннями зменшилася. Довжина кабелю принтера звичайно обмежувалася 2-метрами, а довжина послідовного кабелю могла легко перевищувати 60 метрів, що створювало можливість для найпростішого локального обміну даними.
Одна з проблем послідовного зв’язку завжди полягала в необхідності фізичного з’єднання пристроїв. При кожному такому з’єднанні було потрібно виключити систему, фізично підключити пристрої, встановити драйвери і виконати інші зміни в системі, перш ніж два пристрої могли почати взаємодіяти. Для забезпечення можливості безпровідного зв’язку були розроблені інфрачервоні послідовні порти (засновані на тій же технології, що і пульти дистанційного керування побутовою технікою), що усувають незручності, зв’язані з з’єднаннями і настроюваннями. Застосовуючи інфрачервоні послідовні порти, що відповідають стандартам асоціації Infrared Device Association (IrDA), можна легко роздруковувати файли й обмінюватися даними. Ця глава описує основні концепції послідовного зв’язку й операції з портами, пояснює встановлення й експлуатацію пристроїв IrDA, а також знайомить із рядом процедур пошуку несправностей.
Основи асинхронного зв’язку
Принцип дії послідовного порту зрозуміти не так вже важко, але його функціонування трохи складніше, ніж паралельного. Щоб зрозуміти функціонування і сигнали типового послідовного порту, потрібно ознайомитися з деякими загальними концепціями. Коли паралельний порт виставляє строб даних, це є сигналом для принтера, що всі 8 бітів даних виставлені на шині. Але послідовний порт повинний посилати чи приймати 8 бітів даних по одній лінії зв’язку по одному біту в кожен момент часу. Як легко здогадатися, це створює проблеми для прийомного пристрою, що повинен визначити, де починається і де закінчується потік даних — не така вже легка задача. Звичайно, можна посилати разом з даними синхронізуючий тактовий сигнал. Прийомний пристрій міг би просто використовувати цей тактовий сигнал для детектування кожного біта даних. Цей спосіб відомий як синхронний послідовний зв’язок. Такий зв’язок є надійний, але рідко використовується в комп’ютерах (за винятком інтерфейсу з клавіатурою).
Замість того, щоб використовувати при передачі даних окремий тактовий сигнал, його можна виключити, додавши в біти даних біти синхронізації. Таким чином, коли потік даних надходить у прийомний пристрій, він повинен відкинути біти синхронізації і витягти вихідні дані. У результаті, послідовний обмін даними не вимагає окремого тактового сигналу. Описаний підхід являє собою асинхронний зв’язок — дуже розповсюджений і недорогий метод послідовного зв’язку. Далі в цій главі розглядається асинхронний зв’язок.
Кадр даних
Асинхронний зв’язок вимагає, щоб біти даних до передачі поєднувалися з бітами синхронізації. Біти синхронізації надають прийомному пристрою інформацію про три важливі моменти: де починаються дані, де вони закінчуються і чи не містять вони помилок. Зазначені біти, об’єднані з бітами даних, формують кадр даних (data frame), як показано на рис. 7.1. Передані дані кодуються двома рівнями напруги — позитивним і негативним (біполярний сигнал). Як не дивно, позитивний рівень напруги кодує логічний «0» (нуль), а негативний рівень — логічну «1» (одиниця). Стан лінії передачі при відсутності обміну даними — логічний «0».
Першим елементом у всіх кадрах асинхронних даних є одиночний стартовий біт (start bit), що завжди є логічною «1». Коли приймач виявляє логічну «1», він вважає, що це початок кадру даних. Наступні 5—8 бітів завжди є бітами даних (data bits). Точне число бітів (звичайно 8) встановлюється в настроюваннях комунікаційного програмного забезпечення, але повинно бути тим самим і на передавальному, і на прийомному кінцях. Заданим, якщо це потрібно, може бути включений одиночний контрольний біт, призначений для виявлення помилок (так званий біт парності — parity bit). Біт парності обчислюється передавальним пристроєм і посилається разом з даними. Прийомний пристрій на підставі прийнятих даних також обчислює біт парності і порівнює його з отриманим. Якщо вони збігаються, вважається, що дані не містять помилок. Якщо не збігаються, генерується ознака помилки. У послідовному зв’язку існує п’ять класів парності:
None (немає). Біт парності до даних не додається. Це типово для багатьох сучасних систем послідовного зв’язку.
Even (парність). Якщо кількість «1» у слові даних непарна, біт парності встановлюється в «1», щоб зробити кількість «1» парною (even).
Odd (непарність). Якщо кількість «1» у слові даних парна, біт парності встановлюється в «1», щоб зробити кількість «1» непарною (odd).
Mark (мітка). Біт парності завжди встановлений у «1».
Space (пробіл). Біт парності завжди встановлений у «0».
Завершує кадр даних стоповий біт — звичайно він один, але може бути і два стопових біти. Стопові біти завжди являють собою логічний «0». Після того як прийомний пристрій виявляє стоповиий біт (біти), лінія передачі залишається вільною, у стані паузи, до появи наступного стартового біта. Тип кадру звичайно позначається в наступному виді: «число бітів даних»/ «парність» / «число стопових бітів». Наприклад, при з’єднанні з BBS звичайно використовується кадр типу 8/N/1 (8 бітів даних, без біта парності, 1 стоповий біт).
Рівні сигналів
Паралельний порт використовує при обміні даними сигнали, що відповідають TTL-логіці. У той же час послідовний порт використовує біполярні сигнали (і позитивні і негативні рівні напруги). Перевага біполярних сигналів полягає в тому, що з ними можна працювати і при досить довгих кабелях, якщо шуми незначні. Рівень логічного «0» представляється позитивним рівнем постійної напруги від +3 В до +15 В. Рівень логічної «1» представляється негативним рівнем постійної напруги від -3 В до -15 В. В середньому, можна вважати, що послідовні порти використовують постійні напруги ±5 В чи ±12 В, саме такі рівні напруги виробляє блок живлення комп’ютера.
Бод і біт
Ще одною ключовою концепцією асинхронного зв’язку є уявлення про швидкість передачі (rate). Так як дані передаються по каналу зв’язку послідовно в часі, то великого значення набирає швидкість, з якою вони передаються. Хоча швидкість і не є частиною кадру даних в прямому розумінні, вона все ж є не менш важливою. Якщо не ускладнювати, то швидкість передачі послідовних даних вимірюється в бітах в секунду (bits per second, bps). Це проста і інтуїтивно зрозуміла одиниця вимірювання. Якщо послідовний порт передає 2400 біт/с, то він працює зі швидкістю 2400 bps. На цій швидкості середня тривалість біта буде 1/2400=417мс. Маючи справу з послідовним портом, маєш справу з бітами і bps.
Звичайно, коли біти від послідовного порту обробляються модемом, модем моделює ці дані послідовністю фазових, частотних або амплітудних переходів. Перехід (transition) називається бодом (baud), на ім’я французького математика Ж. Бодо (J.M.E. Baudot). Старі модеми, створені для роботи з сигналами на швидкості 2400 bps або менше, здійснювали модуляції в телефонній лінії зі швидкістю передачі бітів – відповідно бод і біт/сек (bps) співпадали. Однак це не завжди так. Оскільки сучасні модеми обмежені невеликою смугою пропускання телефонної лінії, вони вимушені кодувати в кожному переході більше, ніж один біт. Як наслідок, реальна швидкість передачі даних сучасних модемів в біт/сек (bps) звичайно перевищує швидкість в бодах в декілька разів. Наприклад, модем, який може кодувати 4 біти в кожному переході, може працювати на швидкості 2400бод – але передавати біти на швидкості еквівалентній 9600 bps. Відчуваєте різницю? По мірі того, як модеми вдосконалюються і переживають стандарти стиснення даних, ефективна швидкість в bps зростає (але самий модем, по-старому, працює на відносно низькій швидкості в бодах). Маючи справу з модемами, звичайно маєш справу зі швидкістю в бодах.
Є ще одна тонкість, про яку потрібно знати. Так як бодом називається будь-який перехід (Бодо ніколи нічого не говорив про модеми), то формально швидкість роботи послідовного порту можна вимірювати в бодах, хоча це може дуже все заплутати. Наприклад, сучасні схеми послідовних портів можуть підтримувати швидкість передачі даних до 115200 біт/с. Оскільки кожний біт, що передається послідовним портом, трактується периферійними пристроями (наприклад, принтерами) як “перехід”, то можна з таким же успіхом говорити про швидкість 115200 бод. При цьому важливо пам’ятати, що більшість модемів не може працювати зі швидкістю більше, ніж 2400 бод (хоча вдосконалені методи модуляції, використовувані модемами, дозволяють передавати біти із швидкістю 56 Kbps). Телефонна лінія просто не дозволяє працювати з сигналами на великих швидкостях переходів. Тому якщо ви зустрінете в книгах або специфікаціях вказівку на великі швидкості в бодах, то це, можливо, відноситься до характеристики послідовного порту, а не власне модему.
Основні відомості про послідовні порти
Послідовний порт повинен вміти виконувати декілька важливих операцій. Він повинен перетворювати паралельні дані, що поступають від системної шини комп’ютера, в сукупність послідовних бітів, додавати відповідні службові біти (вони можуть бути різними для різних послідовних з’єднань), і потім передавати ці біти по лінії зв’язку із заданою швидкістю. Послідовний порт повинен також працювати у зворотному напрямі, приймаючи послідовні дані з відомою швидкістю, видаляючи службові біти, перетворюючи послідовні дані назад в паралельні дані, що передаються по шині, і перевіряючи блоки даних на наявність помилок. Основу послідовного порту складає одна-єдина мікросхема - універсальний асинхронний приймач-передавач (UART, universal asynchronous receiver/transmitter). Спрощена блок-схема UART наведена на рис. 7.2.
Схема UART з’єднується безпосередньо з шиною комп’ютера - вона або входить в системний чіпсет, або знаходиться на платі розширення. Мікросхема UART всередині містить всі схеми, необхідні для обробки, передачі і прийому даних між послідовною лінією і шиною комп’ютера. Оскільки UART є програмованою схемою, її конфігурація (формат кадру і швидкість в бодах) встановлюється за допомогою комунікаційних програм. Всі вихідні і вихідні дані, а також сигнали квитування, необхідні для роботи послідовного порту, генеруються самою схемою UART. Цікаво відзначити, що UART живиться тільки постійною напругою 5 В - також, як і більшість інших мікросхем системи. Це означає, що всі вхідні і вихідні дані і сигнали квитування UART є TTL-сумісні.
Дані, що передаються, перетворяться в біполярні сигнали за допомогою схеми лінійного передавача. Біполярні дані на приймальній лінії перетворяться назад в рівні TTL за допомогою схеми лінійного приймача. Зовні комп’ютера сигнали UART виведені на окремий роз’єм. В первинній конструкції послідовного порту використовувався роз’єм-вилка типу D-SUB з 25-ма виводами, але в сучасних портах відмовилися від додаткових сигналів квитування, що дозволило обмежитися роз’ємом-вилкою типу D-SUB з 9-у виводами.
Адреси і переривання
UART управляється за допомогою ряду важливих регістрів, які дозволяють програмувати властивості послідовного порту. Вони також використовуються у міру необхідності для тимчасового зберігання даних, що передаються і приймаються. Старі версії BIOS підтримували тільки два послідовні (або СОМ) порти, але сучасні версії BIOS підтримують чотири СОМ-порти (від СОМ1 до COM4). Системи з шиною MicroChannel (MCA) можуть підтримувати до восьми СОМ-портів (від СОМ1 до С0М8). Типові базові адреси СОМ-портів наведені в табл. 7.1. При добавці нового СОМ-порту в систему йому потрібно призначити правильні базова адреса і номер переривання (IRQ). В процесі виконання операцій, комунікаційна програма працює безпосередньо з регістрами порту. В табл. 7.2 перераховані зсуви (offsets) стандартних базових адрес для регістрів UART. Зверніть увагу, що по нульовому зсуву, доступні обидва регістри, і передаючий, і приймальний.
В процесі ініціалізації системи СОМ-порти перевіряються в наступній послідовності: 03F8h, 02F8h, 03Е8h, 02Е8h, 03Е0h, 02Е0h, 0338h і 0238h. В системах з шиною МСА використовується інший порядок. Позначення СОМ-портів задаються залежно від того, які порти виявляються насправді, тому пам’ятайте, що СОМ-адреси в конкретній системі можуть відрізнятися. Практично завжди СОМ1 знаходиться за адресою 03F8h. Конкретні адреси портів вводу-виводу для кожного СОМ-порту зберігаються в оперативній пам’яті в області даних BIOS, починаючи з адреси 0:0400h. Як можна здогадатися, одна базова адреса повинна бути призначена тільки одному СОМ-порту. Якщо одна базова адреса призначена більше, ніж одному СОМ-порту, майже напевне в системі виникнуть проблеми.

У використанні переривань стосовно СОМ-портів можна легко заплутатися. На відміну від паралельних портів, які можуть працювати як по перериванню, так і по опиту, послідовний порт вимагає використання переривань. Оскільки перші комп’ютери виділяли місце для двох СОМ-портів, то було зарезервовано тільки дві лінії переривання (IRQ4 для СОМ1 і IRQ3 для COM2). На жаль, при розширенні BIOS з метою підтримки додаткових СОМ-портів, не було можливості для призначення їм додаткових вільних ліній переривання. Таким чином, СОМ-порти вимушені використовувати переривання спільно. Наприклад, СОМ1 і COM3 повинні спільно користуватися IRQ4, а COM2 і COM4 - IRQ3. Проблема полягає в тому, що ніякі два пристрої не можуть одночасно користуватися однією і тією ж лінією IRQ - інакше це наведе до конфлікту в системі. Нарешті, хоча звичайний комп’ютер може використовувати чотири СОМ-порти, тільки два порти з чотирьох можуть використовуватися одночасно (наприклад, СОМ1 і COM2, COM3 і COM4, СОМ1 і COM4, або COM2 і COM3). Далі, призначення адреси СОМ-порту і ліній IRQ повинне бути злагодженим. Хоча BIOS може працювати з портами COM3 і COM4 по опиту, швидкість і асинхронна природа сучасної передачі даних роблять режим опиту дуже ненадійним для послідовних портів.
Технічна перевірка завжди повинна починатися із з’ясування того, скільки послідовних портів є у вашій системі. Послідовні порти можуть добавлятися з різною платою розширення, і ви можете перевищити максимальну кількість портів або викликати конфлікт двох портів, навіть не підозрюючи про це. Переконайтеся, що ви видалили або заблокували всі СОМ-порти, що не використовуються або викликають конфлікти. Звичайним недоглядом є підключення внутрішнього модему на порт COM2, тоді як підтримка COM2 на системній платі залишається незаблокованою. При виявленні конфліктуючих СОМ-портів потрібно заблокувати порти, що не використовуються, щоб запобігти конфліктам.
DTE і DCE
При роботі з послідовними портами і периферійними пристроями, ви часто будете зустрічати скорочення DTE і DCE. DTE означає кінцеву апаратуру (data terminal equipment), якою звичайно є комп’ютер, що включає послідовний порт. Модем, принтер з послідовним інтерфейсом або інші послідовні периферійні пристрої називаються апаратурою передачі даних (data carrier equipment, або DCE). Ця відмінність набирає великого значення, оскільки сигнали даних і квитування повинні коректно комутуватися на кінці DCE. Наприклад, вивід DTE Тх («передача» - «transmit» - звичайно 3-й контакт 9-контактного роз’єму) не можна сполучати напряму з таким же виводом DCE; замість цього його потрібно з’єднати з виводом Rx («прийом» - «receive»). Ця комутація здійснюється на роз’ємі DCE таким чином, що 3-й вивід DCE був би виводом Rx, і можна було б без проблем використовувати прямий сполучний кабель.
Але припустимо, що потрібно з’єднати два DTE. Оскільки у цих пристроїв одні і ті ж сигнали на одних і тих же виводах, то прямий сполучний кабель утворив би неправильне з’єднання (лінія Тх одного пристрою була б сполучена з лінією Тх іншого пристрою, Rx була б сполучена з Rx, і т.д.). Як ви здогадуєтеся, два DTE не можна сполучати прямим сполучним кабелем. Звичайно, можна зробити спеціальний кабель, який включає правильне з’єднання дротів, але більш простий варіант - використовувати нуль-модем (null-modem), який підключається до одного з кінців прямого сполучного кабелю. Нуль-модем представляє собою просто блок з перемичками, які здійснюють всю необхідну комутацію. Це дозволяє двом DTE працювати так, ніби один з них був DTE, а інший DCE.
Сигнали послідовних портів
В IBM-сумісних комп’ютерах послідовний порт має роз’єм типу D-SUB з 25-у або з 9-у виводами (див. рис. 7.3). Обидва кінці послідовного кабелю ідентичні. Існують три види сигналів, що беруть участь в організації послідовного зв’язку: сигнали даних, управління (або квитування) і заземлення. В табл. 7.3 наведені назви і описи кожного виводу для послідовних з’єднань з 25-у і 9-у виводами. Не забудьте, що всі сигнали послідовного порту - і сигнали даних, і сигнали керівників - є біполярними.
Tx і Rx
Це лінії прийому і передачі даних. Тх - лінія передачі, яка виводить послідовні дані з комп’ютера, а Rx - лінія прийому, яка приймає послідовні дані від периферійних пристроїв.
RTS і CTS
Сигнал RTS (Request to Send - запит передачі) генерує DTE. Цей сигнал повідомляє пристрою DCE (наприклад, модему), що він повинен прийняти дані. Проте DTE не може просто вивести дані на DCE. DCE повинен бути готовий до прийому даних, тому, після активації сигналу RTS, DTE чекає у відповідь сигнал CTS (Clear to Send - готовність до прийому) від DCE. Як тільки DTE одержує сигнал CTS, він може починати передачу даних. Саме квитування встановлення зв’язку сигналами RTS/CTS створює основу для управління потоком даних за допомогою системних апаратних засобів.
DTR і DSR
Після того, як DTE включено або ініціалізовано і готове до обміну даними, активується сигнал DTR (Data Terminal Ready - готовність термінала). Цей сигнал повідомляє DCE (наприклад, модему), що DTE (наприклад, комп’ютер) готовий до встановлення з’єднання. Коли DCE закінчить ініціалізацію і буде готовий до встановлення з’єднання, він виставить, як відповідь DTE, сигнал DSR (Data Set Ready - готовність модему). Як тільки DTE виявиться готовим і ідентифікує сигнал DSR, з’єднання буде встановлено. Сигнали квитування DTR/DSR встановлюються тільки один раз, при першій ініціалізації пристроїв DTE і DCE, і повинні підтримуватися в активному стані увесь час роботи цих пристроїв (незалежно від наявності або відсутності фактичного обміну даними). Якщо будь-який з цих сигналів, DTR або DSR, пропаде, то робота каналу зв’язку буде перервана (і сигнали квитування RTS/CTS не будуть більше надавати ніякої дії).
DCD
Сигнал DCD (Data Carrier Detect - виявлення несучою) особливо корисний при роботі з модемом. Цей сигнал виробляє DCE коли він виявляє несучу від видаленого джерела і коли він готовий встановити з ним з’єднання. Потім сигнал DCD вирушає зворотно DTE. Після активації лінії DCD, вона залишається в активному стані увесь час, поки існує з’єднання.
RI
Сигнал RI (Ring Indicator - індикатор дзвінків) встановлюється DCE і також особливо корисний при роботі з модемом. Цей сигнал виробляється DCE, коли поступає телефонний дзвінок. Цей сигнал набуває особливо великого значення, якщо видаленому користувачу потрібно додзвонитися і отримати доступ до вашого комп’ютера для дистанційної діагностики або з якимись іншими цілями. Цей сигнал має також значення в тому випадку, якщо управління живлення системи налаштовано на включення по телефонному дзвінку («wake on ring»).
Інфрачервоні порти
Все більше настільних і переносних комп’ютерів і периферійних пристроїв оснащується інфрачервоними послідовними портами. Свою назву - IrDA - вони отримали на ім’я асоціації виробників інфрачервоних пристроїв Infrared Data Association. IrDA-порти дозволяють комп’ютерам і периферійним пристроям здійснювати обмін послідовними даними по інфрачервоному (ІЧ) каналу зв’язку, замість того, щоб возитися з кабелями. Наприклад, можна набрати документ на переносному комп’ютері, помістити цей комп’ютер ближче до IrDA-принтеру і потім роздрукувати набраний документ, навіть не підключаючи кабель. Можна також спільно користуватися файлами на двох IrDA-сумісних комп’ютерах. І хоча IrDA-порти пропонують користувачам комп’ютерів реальні переваги в можливості встановлення з’єднань, вони також створюють деякі проблеми, пов’язані з їхньою установкою і настройкою. В цій частині глави описуються основні методи установки і використання IrDA-пристроїв і пропонуються декілька основних принципів, якими потрібно керуватися при тестуванні і пошуку несправностей.
Встановлення драйверів IrDA
Драйвер інфрачервоного зв’язку (Infrared Communications Driver) забезпечує підтримку апаратних засобів, що дозволяють здійснювати обмін даними в інфрачервоному діапазоні із швидкістю до 115 Кбіт/с (Kbps). Таким апаратним засобом є вбудований в комп’ютер інфрачервоний порт або інфрачервоний адаптер, який підключається до одного з послідовних або паралельних портів комп’ютера. IrDA дозволяє використовувати інфрачервоний канал замість послідовних і паралельних кабелів. Можна, наприклад, обмінюватися файлами між двома комп’ютерами, оснащеними інфрачервоними пристроями і драйвером Infrared Communications Driver версії 2.0 (або вище), або можна друкувати на IrDA-сумісних принтерах, не підключаючи кабель. Можна також підключатися до локальної мережі за допомогою протоколу IrLAN. В даний час IrLAN підтримує метод точки доступу (Access Point Mode), який дозволяє комп’ютеру з IrDA-адаптером підключатися до локальної мережі через спеціальний пристрій - точку доступу. Точка доступу (accesspoint device) - це апаратний засіб, що включає контролер мережевого інтерфейсу (NIC) і інфрачервоний трансівер (IrDA).
Якщо ваш комп’ютер вже має необхідні засоби IrDA, то вам потрібно просто скористатися майстром установки устаткування (Add New Hardware), щоб встановити набір нових драйверів. Якщо ви встановлюєте підтримку IrDA вперше, рекомендується завантажити останні версії ІЧ-драйверів з сайту Microsoft (www.microsoft.com).
Коли майстер установки устаткування (Add New Hardware) запропонує вам вибрати виробника ІЧ-пристрою, виберіть «Стандартні інфрачервоні пристрої» (Standard Infrared Devices), якщо комп’ютер має вбудований ІЧ-порт, або виберіть виробника і модель адаптера, якщо до комп’ютера підключений ІЧ-адаптер у вигляді плати розширення. Натисніть кнопку «Далі» (Next).
1. Коли майстер запропонує вибрати послідовний порт, до якого фізично підключений інфрачервоний приймач-передавач, виберіть потрібний порт із списку. Якщо ви точно не знаєте, до якого порту підключений приймач-передавач, виберіть СОМ-порт, який указаний першим в списку (наприклад, С0М1); потім натисніть кнопку «Далі» (Next).
2. Коли майстер запропонує вибрати віртуальні (virtual) COM і LPT порти, залиште значення за замовчуванням, натискаючи кнопку «Далі» (Next). Після того, як майстер скопіює файли драйверів на жорсткий диск, ви побачите, як майстер виведе два повідомлення «Знайдено новий пристрій» (New Hardware Found).
3. Після появи цих повідомлень майстра натисніть кнопку «Готово» (Finish), щоб завершити установку. Якщо майстер не вивів повідомлення «Знайдено новий пристрій» (New Hardware Found), то перезавантажте комп’ютер.
4. Активуйте ІЧ-пристрій подвійним клацанням по значку «Інфрачервоні пристрої» (Infrared devices) на «Панелі керування» (Control Panel). Якщо на Панелі керування немає цього значка, виберіть пункт «Поновити» (Refresh) з меню «Вид» (View) вікна Панелі управління (або натисніть F5), щоб вивести цей значок.
Тестування IrDA-каналу
Наступний крок - тестування ІЧ-пристрою. Найпростіший і швидкий спосіб зробити це - що-небудь роздрукувати на принтері з ІЧ-портом або обмінятися даними між двома комп’ютерами, використовуючи ІЧ-канал (і комунікаційну програму, наприклад, LapLink).
Тестування ІЧ-каналу за допомогою принтера
Якщо ви тестуєте ІЧ-канал за допомогою IrDA-сумісного принтера (наприклад, Hewlett Packard LaserJet 2200), ви повинні спочатку встановити на своєму комп’ютері драйвер ІЧ-зв’язку, і потім спробувати виконати команду «Друк» (Print) в тому додатку, який ви використовуєте для друку. Переконайтеся, що у вас встановлений відповідний драйвер для принтера з підтримкою ІЧ-каналу, і виберіть як порт підключення принтера порт інфрачервоного друку (віртуальний порт LPT). Якщо додаток коректно виконує операцію друку на принтері, що підтримує ІЧ-зв’язок, то перевірку каналу можна вважати успішною.
Тестування ІЧ-каналу між комп’ютерами
Щоб перевірити зв’язок між двома комп’ютерами, ви повинні встановити драйвери ІЧ-зв’язку на обох комп’ютерах. Один із способів перевірити ІЧ-канал - використовувати програму HyperTerminal на обох комп’ютерах і посилати символи з клавіатури кожного комп’ютера по ІЧ-каналу:
1. На обох комп’ютерах, натисніть «Пуск» (Start), виберіть пункт «Налаштування» (Settings), і потім виберіть «Панель керування» (Сontrol Panel).
2. Двічі клацніть по значку «Інфрачервоні пристрої» (Infrared Devices).
3. Посуньте ІЧ-пристрої ближче, щоб відстань між ними була в межах метра, а їх ІЧ-датчики були наведені один на одного.
4. Після того, як два ІЧ-пристрої виявлять один одного, на вкладці «Стан» (Status) інтерфейсу програми управління ІЧ-з’єднанням (Infrared Monitor) з’явиться повідомлення «Інфрачервоні пристрої знаходяться в зоні досяжності» (Available infrared devices in range).
5. Перш ніж продовжувати далі, переконайтеся, що програми керування ІЧ-з’єднанням на обох комп’ютерах повідомляють про наявність в зоні досяжності відповідного ІЧ-пристрою. Можливо, вам доведеться повернути ІЧ-пристрої так, щоб вони були направлені прямо один на одного або посунути їх ближче один до одного.
6. На одному з комп’ютерів виберіть вкладку «Режими» (Options) вікна програми керування ІЧ-з’єднанням і знайдіть інформацію про те, які порти емулюються за допомогою інфрачервоного зв’язку. Запишете ім’я СОМ-порту, яке ви там знайдете. Це ім’я емульованого послідовного порту, який використовує І Ч-канал. Звичайно це порт COM4 або С0М5, і він не співпадає з фізичним портом, на якому працює ваш ІЧ-пристрій (звичайно це СОМ1 або COM2).
7. Запустіть програму HyperTerminal. Натисніть кнопку «Пуск» (Start), виділіть пункт «Програми» (Programs), виберіть «Стандартні» (Accessories), клацніть по теці HyperTerminal і потім двічі клацніть по значку HYPERTRM.EXE.
8. В діалоговому вікні «Описи підключень » (Connection Description) введіть довільне ім’я нового з’єднання, а потім натисніть ОК.
9. В діалоговому вікні «Підключення» (Phone Number) скористайтеся випадаючим списком «Підключення» (Connect Using) і виберіть пункт «Пряме з’єднання (СОМх)» (Direct to СОМх), де «х» - це той номер віртуального СОМ-порту, який ви записали раніше. Натисніть ОК, і ви готові почати роботу з програмою HyperTerminal на одному з двох комп’ютерів, які беруть участь в з’єднанні.
10. Повторіть останні чотири кроки на другому комп’ютері так, щоб на обох комп’ютерах працювала програма HyperTerminal на відповідному віртуальному СОМ-порті.
11. Активуйте HyperTerminal на одному з комп’ютерів і введіть будь-які символи з клавіатури. Якщо символи, які ви набираєте, з’являються у вікні HyperTerminal на іншому комп’ютері, то ви перевірили працездатність ІЧ-каналу в даному напрямі. Спробуйте зробити те ж саме на іншому комп’ютері. Якщо ІЧ-канал, при використанні HyperTerminal, працює і в тому, і в іншому напрямі, то ви перевірили, що ІЧ-драйвер на обох комп’ютерах встановлений успішно.
12. Закрийте пряме ІЧ-з’єднання, завершивши роботу HyperTerminal на обох комп’ютерах. Коли вам буде задано питання, чи потрібно зберігати інформацію про цей сеанс, відповідайте «Так» (Yes). Конфігурація цього прямого ІЧ-з’єднання буде збережена у вигляді значка в головній теці програми HyperTerminal. Надалі, двічі клацнувши по цьому значку, ви зможете у будь-який час відновити на одному з комп’ютерів пряме ІЧ-з’єднання за допомогою програми HyperTerminal.
Пряме кабельне з’єднання по lrDA-каналу
За допомогою прямого кабельного з’єднання (DCC, Direct Cable Connection) можна встановити зв’язок між двома комп’ютерами по прямому послідовному або паралельному кабелю. Це дозволить надавати ресурси одного з комп’ютерів в загальне користування. Пряме кабельне з’єднання можна використовувати і по ІЧ-каналу. Комп’ютер, на якому знаходиться інформація, яку ви хочете надати в сумісне користування, - ведений (host), а другий комп’ютер - ведучий (guest). Ви можете призначити для однієї або декількох тек на веденому комп’ютері режим сумісного використання і надати права доступу до цієї теки комп’ютеру ведучого, виконавши наступні дії в Windows:
1. Двічі клацніть по значку «Мій комп’ютер» (My Computer).
2. Двічі клацніть по значку диска, де знаходяться файли, які ви хочете надати в сумісне користування (наприклад, двічі клацніть по значку диска «С:»).
3. Натисніть праву кнопку миші на тій теці, яку ви хочете надати в сумісне користуватися, і потім виберіть пункт «Доступ» (Sharing).
4. В діалоговому вікні (рис. 7.4) виберіть опцію «Мережеве ім’я» (Shared As). Введіть мережеве ім’я, коментар і вкажіть права доступу користувача: «Повний» (Full) або «Тільки читання» (Read-Only). Щоб показати, що вибрана тека є тепер спільно використовуваним ресурсом, на її значку з’явиться зображення руки.
Перевірте наявність компоненту Windows «Пряме кабельне з’єднання» (DCC) і при необхідності встановіть його на обидва комп’ютери:
1. Натисніть «Пуск» (Start), виберіть пункти «Програми» (Programs) і «Стандартні» (Accessories). В цьому меню з’явиться пункт «Пряме кабельне з’єднання» (Direct Cable Connection), якщо цей компонент встановлений на вашому комп’ютері. В Windows 98 він знаходиться в підменю «Зв’язок» (Communications) меню «Стандартні» (Accessories). Якщо DCC встановлений, пропустіть наступні кроки. Інакше вам потрібно буде встановити DCC. Перевірте обидва комп’ютери і встановіть на них, якщо потрібно, DCC.
2. Натисніть «Пуск» (Start), виберіть пункт «Налаштування» (Settings) і потім клацніть по пункту «Панель керування» (Control Panel).
3. Двічі клацніть по значку «Встановлення і видалення програм» (Add/Remove Programs).
4. В діалоговому вікні «Властивості: Встановлення і видалення програм» (Add/Remove Program Properties) виберіть вкладку «Встановлення Windows» (Windows Setup).
5. В списку «Компоненти» (Components), виберіть «Зв’язок» (Communications) і потім натисніть кнопку «Склад» (Details).
6. В діалоговому вікні «Зв’язок» (Communications) поставте галочку в пункті «Пряме кабельне з’єднання» (Direct Cable Connection) і потім натисніть ОК. Windows встановить компоненти DCC.
Тепер налагодьте і протестуйте роботу DCC по ІЧ-каналу між двома комп’ютерами:
1. Переконайтеся, що драйвер ІЧ-зв’язку встановлений правильно, і що ІЧ-пристрої знаходяться в робочому стані. Пам’ятайте, що при першому випробуванні DCC рекомендується обмежити швидкість передачі даних по ІЧ-з’єднанню швидкістю 9600 біт/сек (bps), а потім збільшити її пізніше.
2. На веденому комп’ютері натисніть «Пуск» (Start), виберіть пункт «Стандартні» (Accessories) і потім клацніть по пункту «Пряме кабельне з’єднання» (Direct Cable Connection). В Windows 98 виберіть підменю «Зв’язок» (Communications) в меню «Стандартні» (Accessories) і тільки потім клацніть по пункту «Пряме кабельне з’єднання» (Direct Cable Connection).
3. Виконайте всі пункти майстра налагоджень, щоб налагодити ведений комп’ютер. На питання про режим роботи комп’ютера потрібно відповісти «Ведений» (Host). Коли майстер запропонує вам вибрати порт, використовуйте той же віртуальний порт, що і в попередньому розділі «Тестування ІЧ-каналу між комп’ютерами». Майстер запропонує також встановити пароль. Вам не потрібно встановлювати пароль для доступу до веденого комп’ютера в цьому місці1. , але, можливо, ви схочете використовувати пароль для захисту при звичайному використанні ІЧ-каналу. Коли ви закінчите роботу з цим майстром, натисніть кнопку «Готово» (Finish). Буде завантажений модуль підтримки прямого з’єднання по ІЧ-каналу, який виведе повідомлення «Чекайте встановлення з’єднання по послідовному кабелю на СОМх» (Waiting to connect via serial cable on СОМх), де «х» - номер віртуального порту, який використовує ІЧ-канал.
4. Повторіть чотири попередніх кроки для ведучого комп’ютера, але при налагодженні потрібно вибрати режим «Ведучий» (Guest) замість режиму «Ведений» (Host). Коли закінчите роботу з майстром, натисніть кнопку «Готово» (Finish). Автоматично встановиться DCC-з’єднання по ІЧ-каналу, і всі виділені в сумісне користуватися теки веденого комп’ютера відобразяться на екрані ведучого комп’ютера.
5. Щоб скопіювати спільно використовувану теку з веденого на ведучий комп’ютер, по ІЧ-каналу, виділіть значок цієї теки у вікні, в якому відображаються всі спільно використовувані теки веденого комп’ютера, і перенесіть значок мишкою на робочий стіл ведучого комп’ютера. Щоб працювати із спільно використовуваною текою на веденому комп’ютері, не копіюючи її на ведучий комп’ютер, просто двічі клацніть по теці у вікні на екрані ведучого комп’ютера.
Видалення драйверів IrDA
В деяких випадках може бути потрібно видалити драйвери ІЧ-зв’язку (частіше всього при оновленні драйверів або заміні апаратних засобів). Драйвери ІЧ-зв’язку можна видалити, використовуючи пункт «Встановлення і видалення програм» (Add/Remove Programs) з Панелі керування (Control Panel) або використовуючи Диспетчер пристроїв (Device Manager). В першому випадку виконаєте наступні дії:
1. Натисніть кнопку «Пуск» (Start) і виберіть опцію «Налаштування» (Settings), а потім «Панель керування» (Control Panel).
2. Двічі клацніть по пункту «Встановлення і видалення програм» (Add/Remove Programs) в Панелі керування (Control Panel).
3. Коли програмні компоненти з’являться на екрані, виберіть пункт «Підтримка ІЧ для Windows» (Infrared Support For Windows) і натисніть кнопку «Додати/Видалити» (Add/Remove).
4. Перезавантажте комп’ютер, коли вам запропонують зробити це.
При використанні Диспетчера пристроїв (Device Manager):
1. Клацніть правій кнопкою миші по значку «Мій комп’ютер» (My Computer), в контекстному меню, що з’явилося, виберіть пункт «Властивості» (Properties) і потім клацніть по вкладці «Пристрої» (Device Manager) в діалоговому вікні «властивості: Система» (System Properties).
2. Щоб відобразилася назва ІЧ-пристрою, встановленого на комп’ютері, переконайтеся, що в діалоговому вікні «Властивості: Система» (System Properties) вибраний режим «Пристрої по типам» (View Devices By Type). Потім клацніть по значку «+» зліва від рядка пристроїв «Пристрої ІЧ-зв’язку » (Infrared devices). Виберіть назву ІЧ-пристрою і натисніть кнопку «Видалити» (Remove).
3. Натисніть OK, щоб підтвердити видалення пристрою. Після того, як Диспетчер пристроїв (Device Manager) успішно видалить з комп’ютера драйвера ІЧ-пристрою, рядок пристроїв «Пристрої ІЧ-зв’язку » (Infrared devices) буде видалений з діалогового вікна «Властивості: Система» (System Properties). Натисніть кнопку «Закрити» (Close).
Оптимізація використання IrDA
ІЧ-зв’язок - це зручний і ефективний засіб, який дозволяє здійснювати друк і обмін файлами без необхідності фізичного з’єднання пристроїв. Проте на ІЧ-канал можуть впливати різні негативні чинники, що впливають на ефективність передачі даних, зону досяжності і виявлення пристроїв. Наведені нижче поради можуть допомогти вам розібратися з цими питаннями.
Якщо ІЧ-пристрої періодично виходять із зони досяжності, або ви вважаєте, що ваш ІЧ-зв’язок недостатньо ефективний, то:
? Перевірте, чи немає візуальних перешкод на шляху ІЧ-випромінювання.
? Посуньте ІЧ-пристрої ближче один до одного.
? Протріть датчики ІЧ-пристроїв.
? Ізолюйте ІЧ-пристрої від зовнішнього освітлення або вимкніть джерела яскравого світла.
? Переконайтеся, що ІЧ-пристрої не піддаються діям, пов’язаним з їхнім переміщенням або вібрацією.
? Перезарядіть/замініть батареї ІЧ-пристрою або перевірте його підключення до джерела живлення.
Якщо ви встановили, що комп’ютер не може виявити пристрої, які, судячи з усього, знаходяться в зоні досяжності:
? Переконайтеся, що підтримка ІЧ-зв’язку на комп’ютері включена.
? Переконайтеся, що включений режим пошуку ІЧ-пристроїв.
? Перевірте, щоб інтервал пошуку ІЧ-пристроїв не був дуже великий.
? Посуньте ІЧ-пристрої ближче один до одного.
? Переконайтеся, що ІЧ-пристрій повністю задовольняє вимогам IrDA (не повинно бути IrDA-несумісних пристроїв).
? Перевірте, що IrDA-пристрій включений (і що його батареї в працездатному стані).
? Переконайтеся, що ІЧ-пристрій на вашому комп’ютері включений.
? Переконайтеся, що немає перешкод на шляху ІЧ-випромінювання.
? Переконайтеся, що на датчиках ІЧ-пристроїв немає забруднень.
? Екрануйте датчики ІЧ-пристроїв так, щоб пряме сонячне світло не потрапляло на приймач ІЧ-випромінювання.
Поради щодо IrDA
Хоча підтримка ІЧ-зв’язку в середовищі Windows в значній мірі автоматизована, декілька порад можуть полегшити вам пошук несправностей. Перш ніж ви спробуєте локалізувати проблеми, пов’язані з ІЧ-пристроями на вашому комп’ютері, уважно вивчіть наступний список.
? Завжди видаляйте існуючі ІЧ-драйвери перед встановленням нових драйверів або заміною ІЧ-пристрою. Вже встановлені драйвери іноді можуть заважати новим драйверам.
? Якщо ви обновляєте апаратний ІЧ-адаптер на своєму комп’ютері, обов’язково видаліть встановлені ІЧ-драйвери і встановіть нові.
? Переконайтеся, що ви вибрали правильний віртуальний СОМ-порт для ІЧ-адаптера. Якщо в процесі встановлення ви виберете не той СОМ-порт, комп’ютер не зможе використовувати ІЧ-адаптер.
? Проблеми з ІЧ-зв’язком можуть потребувати від вас вирівняти ІЧ-пристрої так, щоб вони були ближче один до одного (звичайно менше метра) і прямо по лінії променя. Можливо, вам доведеться спробувати замінити батареї ІЧ-адаптера.
? Можливе виникнення проблеми із швидкістю з’єднання. Наприклад, якщо ІЧ-адаптер приєднаний до СОМ-порту, який використовує стару схему UART 8250 замість 16550А. Швидкість також обмежується при використанні відносно повільного комп’ютера, напр., з 386 процесором, працюючому на частоті 20 МГц. При цьому, можливо, буде потрібно використовувати режим «обмежити швидкість з’єднання» (Limit Connection Speed) на вкладці «Режими» (Options) Монітора ІЧ-зв’язку (Infrared Monitor), щоб обмежити швидкість з’єднання величиною 19,2 Кбіт/с. Після успішного встановлення ІЧ-з’єднання на цій швидкості, ви можете поекспериментувати із з’єднаннями на більш високих швидкостях.
? Зв’язок через з’єднання між двома комп’ютерами по віртуальному СОМ-порту може виявитися ненадійним, якщо ІЧ-адаптер принтера також знаходиться в зоні досяжності. Переконайтеся, що ІЧ-адаптер принтера (або будь-який інший ІЧ-адаптер, що не використовується) прибраний із зони досяжності.
? Не припиняйте роботу комп’ютера під управлінням Windows, поки діє ІЧ-з’єднання. Почекайте поки ІЧ-канал буде відключений (або відключите його самі) до того як припинити роботу комп’ютера. Наприклад, якщо у переносного комп’ютера встановлене IrLAN-з’єднання, то ви повинні завжди, перш ніж припиняти роботу комп’ютера (або закривати кришку переносного комп’ютера), прибрати його із зони досяжності точки доступу (access point) IrLAN. Інакше це з’єднання залишиться активним, що може з часом привести до того, що батареї комп’ютера виявляться розрядженими.
? Підключення і відключення по повільному ІЧ-каналу (або по каналу з низькою якістю) може займати декілька секунд, протягом яких екран як би застигає. Щоб цього уникнути, ви повинні використовувати більш високошвидкісне з’єднання і вжити заходи по поліпшенню його якості.
? Якщо ви використовуєте для передачі файлів версію HyperTerminal з Windows 95, то ви не зможете передавати файли по ІЧ-каналу за допомогою протоколу Zmodem, в тому вигляді, в якому він реалізований в HyperTerminal - використовуйте більш нові версії Windows.
? Якщо ви використовуєте пряме кабельне з’єднання (DCC) в Windows 95 і встановлюєте з’єднання між веденим і ведучим комп’ютерами, ведучий комп’ютера може вивести повідомлення: «пряме кабельне з’єднання не може відображувати спільно використовувані теки веденого комп’ютера» (Direct Cable Connection was unable to display shared folders of the host computer) і попросить вас ввести ім’я веденого комп’ютера. Ім’я веденого комп’ютера простіше за всього знайти на вкладці «Ідентифікація» (Status) вікна Монітора ІЧ-зв’язку (Infrared Monitor).
? Для ІЧ-адаптерів, які живляться від послідовного порту або батарей типу АА, в деяких випадках може не вистачати потужності електроживлення. Це може навести до зменшення зони дії і/або до збоїв виявлення іншого ІЧ-пристрою, який знаходиться в зоні досяжності і позиціонується коректно. Якщо у вас є підозри, що проблема в цьому, використовуйте зовнішній блок живлення або вставте нові батареї в інфрачервоний адаптер.
? Якщо до вашого комп’ютера приєднаний ІЧ-адаптер ACTiSYS 220L, і ви здійснюєте друк на принтері, який використовує ІЧ-адаптер Extended Systems ESI-9580 (або ви використовуєте принтер HP DeskJet 340), для успішного друку ви повинні з допомогою вкладки «Режими» (Options) Монітора ІЧ-зв’язку (Infrared Monitor) обмежити швидкість з’єднання величиною 19,2 Кбіт/с. Якщо ви дозволите ІЧ-пристроям автоматично встановити швидкість з’єднання, не встановлюючи вказане обмеження, вони встановлять більш високу швидкість з’єднання, і ваш додаток не зможе друкувати.
? Ноутбуки TI TravelMate 5000 і Sharp PC 3050 можуть обмінюватися даними по ІЧ-каналу тільки на дуже низьких швидкостях (порядку 9600 біт/с).
? Якщо у вас ноутбук HP Omnibook 4000С або HP Omnibook 600CT, ви повинні встановити спеціальний послідовний драйвер погашення луни (echo-canceling) додатково до компонентів, що входять в драйвер ІЧ-зв’язку. Драйвер погашення луни надається компанією Hewlett-Packard.
? Якщо використовувати вкладку «Опції» (Options) Монітора ІЧ-зв’язку (Infrared Monitor) для зміни порту, до якого приєднаний ІЧ-адаптер, в процесі функціонування ІЧ-зв’язку, то ІЧ-зв’язок обривається без попереднього запиту на відключення.
? Якщо виникає проблема встановлення ІЧ-каналау з точкою доступу IrLAN в ситуації, коли ця мережа вже підключена до даного комп’ютера через мережеву карту, спробуйте відключити мережеву карту від мережі. Перезавантажте комп’ютер і переконайтеся, що ІЧ-пристрій комп’ютера і ІЧ-порт точки доступу мережі знаходяться в зоні досяжності. Потім використайте значок ІЧ-зв’язку (Infrared) з Панелі керування (Control Panel), щоб активувати ІЧ-канал між комп’ютером і пристроєм точки доступу мережі.
? Протокол IPX може не працювати через точку доступу IrLAN. Причиною цього може бути адаптер комутованого з’єднання (Dial-Up), що є головним IPX-адаптером, при цьому ніякий інший адаптер (у тому числі IrLAN-адаптер) не може реалізувати з’єднання через IPX. Щоб врегулювати цей дефект, можна створити профіль устаткування, який не включає адаптера комутованого з’єднання, і використати цей профіль при підключенні до мережі по IrLAN.
? Якщо ІЧ-зв’язок між комп’ютером і точкою доступу IrLAN розривається в процесі копіювання файлу на сервер NetWare, який працює в пакетному (burst) режимі, передачу файлу не вдасться відновити, а комп’ютер буде заблокований. Щоб відновити з’єднання, відключіть пакетний режим. Відключення пакетного режиму приведе до зниження продуктивності.
? Використання з’єднання віртуального паралельного порту з точкою доступу IrLAN Extended Systems ESI-9910 JetEye Net Plus для передачі даних на принтер може привести до збою в роботі програми. Щоб вирішити цю проблему, використовуйте для доступу до принтера віртуальний послідовний порт.
Локалізація несправностей
послідовних та інфрачервоних портів
Хоча звичайний послідовний порт представляє собою достатньо простий пристрій вводу/виводу, навіть з ним виникають різні проблеми. В старих комп’ютерах послідовні порти розташовувалися на 8-ми розрядній платі розширення. Коли порт виходив з ладу, можна було просто повністю замінити плату. Сьогодні ж практично всі комп’ютери мають принаймні один послідовний порт безпосередньо на системній платі - звичайно інтегрований у вигляді складової частини основного чіпсету. При виявленні проблем з послідовним портом на системній платі, у фахівців є звичайно три можливості:
? Замінити UART (фактично всі несправності послідовного порту пов’язані з цією схемою) на системній платі. Це вимагає наявності паяльника, достатньої кваліфікації виконавця і самої мікросхеми UART, але обходиться дешевше за все.
? Блокувати несправний послідовний порт за допомогою перемичок або програми CMOS Setup і встановити плату розширення (типу багатоцільової плати вводу/виводу) для підключення додаткового послідовного порту. Це передбачає наявність вільного слоту для плати розширення.
? Повністю замінити системну плату. Це просте рішення, що майже не вимагає додаткового устаткування, але воно може виявитися досить дорогим.
Фактично всі комерційні засоби діагностики мають можливість локалізувати всі встановлені послідовні порти і виконати їхнє повне тестування шляхом перевірки з використанням спеціальної заглушки (loopback). Тепер, після наведеного огляду схем розводки, сигналів і операцій типового послідовного порту, можна перейти до знайомства з процедурами локалізації несправностей портів.
Використання команди MODE
На деяких комп’ютерах, можливо, буде потрібно змінити конфігурацію послідовних портів, працюючи в реальному режимі (real-mode) DOS. Для внесення змін можна використовувати команду MODE. В командному рядку наберіть
MODE COMx: /<parameters>
де СОМх: - СОМ-порт, який потрібно набудувати (наприклад, COM2), а <parameters> - це змінні характеристики послідовного порту (включаючи швидкість в бодах, контроль парності, біти даних і стопові біти). Наприклад:
MODE COM1: BAUD=2400 PARITY=N DATA=5 STOP=1 TO=OFF XON=ON ODSR=OFF
OCTS=ON
DTR=OFF RTS=OFF IDSR=OFF
В табл. 7.4 наведений повний набір параметрів послідовного порту, які можна змінювати командою MODE.
Конфлікти послідовних портів
Конфлікти апаратних і програмних засобів послідовних портів є одними з заплутаних, проблем, що найчастіше зустрічаються, і пов’язані з пошуком несправностей комп’ютера. Хоча сучасні операційні системи і BIOS забезпечують підтримку чотирьох СОМ-портів, не можна забувати про те, що для роботи з портами існують тільки два переривання. Фахівці, що займаються модернізацією комп’ютерів, часто стикаються з проблемами, пов’язаними з підключенням додаткових адаптерів вводу/виводу, оскільки багато сучасних системних плат комп’ютерів вже мають два інтегровані СОМ-порти. Якщо в комп’ютері задіяний тільки один СОМ-порт (наприклад, С0М1), але в системі існує ще один послідовний порт, знайте, що ви повинні вибрати порт і переривання, які не конфліктують з існуючим портом (наприклад, COM2 або COM4). Якщо у комп’ютера вже є два СОМ-порти (СОМ 1 і COM2), додавання до системи третього СОМ-порту наведе до конфлікту апаратних засобів. Цей конфлікт можна врегулювати, заблокувавши новий СОМ-порт або заблокувавши один або два існуючі СОМ-порти і встановивши перемички нового СОМ-порту відповідно до зроблених змін.
Драйвери послідовних пристроїв також можуть стати джерелами проблем для СОМ-портів. Некоректно написані драйвери миші, драйвери принтерів або нестандартні обробники переривань можуть навести порт в некерований стан. Якщо проблеми з’являються після установки нового драйвера, закоментуйте посилання на цей драйвер в CONFIG.SYS або встановите оновлений драйвер захищеного режиму в Windows за допомогою майстра установки устаткування (Add New Hardware). Резидентні програми (TSR, часто завантажуються в AUTOEXEC.BAT) можуть також бути джерелами проблем. Якщо проблеми виникають після встановлення нової TSR, вивантажте її і спробуйте знов завантажити систему. Пам’ятайте, що драйвери і TSR можна легко відключити, добавивши оператор REM в початок відповідного командного рядка у файлі CONFIG.SYS або AUTOEXEC.BAT. Якщо несправність зв’язку виникає при роботі з Windows, то передусім потрібно перевіряти комунікаційне програмне забезпечення Windows. Можливо, потрібно задати більш відповідний рядок ініціалізації модему.
Правильний вибір параметрів налаштування
Погано, звичайно, що фактично можна використовувати тільки два СОМ-порти, проте потрібно ще переконатися, що значення адрес і переривань вибрані правильно, відповідно до наведеної раніше табл. 7.1. Наприклад, припустимо, що за адресою 03F8h COM1 відсутній, але є СОМ-порт за адресою 02F8h. В процесі ініціалізації системи BIOS знаходить всі доступні порти і призначає їм імена. Таким чином, оскільки за адресою 03F8h порт відсутній, порт за адресою 02F8h (звичайно COM2) буде виявлений першим і йому буде призначено ім’я СОМ1. Проте DOS і BIOS вважають, що СОМ1 використовує IRQ4, а порт за адресою 02F8h використовує IRQ3. Якщо спробувати використовувати DOS для операцій з СОМ1, то стандартні обробники переривань не будуть працювати. В цій ситуації довелося б використовувати комунікаційну програму, яка працює безпосередньо з портом (і, таким чином, уникнути використання обробників переривань DOS) і дозволяє задавати адреси і IRQ по вибору. Як альтернативне рішення, можна перемкнути СОМ-порт на 03F8h і встановити переривання IRQ4. Це повинно відновити нормальну взаємодію СОМ1 з DOS.
Правильне налаштування кадрів
Кадр даних і швидкість передачі відіграють дуже важливу роль в послідовному зв’язку. На передаючому і приймаючому кінцях послідовного каналу повинні бути задані одні і ті ж налаштування - дані, що інакше приймаються, будуть сприйматися як сміття. Якщо ви зіткнулися з подібними проблемами, перевірте установки бітів даних, біта парності, стопових бітів і швидкості в бодах. Наприклад, можна набудувати послідовний порт, виділивши його у вікні Диспетчера пристроїв (Device Manager) і натиснувши кнопку «Властивості» (Properties), щоб відкрити діалогове вікно «Властивості» (Properties) (рис. 7.5). Введіть налаштування так, щоб всі пристрої працювали з одними і тими ж параметрами. Можливо, доведеться скористатися командою MODE, щоб змінити установки послідовного порту.
Визначення адреси порту за допомогою Debug
Утиліту DOS Debug можна використовувати для визначення адрес вводу/виводу послідовного порту. Завантажте комп’ютер в режимі DOS, а потім перемикніться в каталог, в якому знаходиться утиліта Debug (наприклад, З:\DOS). Наберіть команду
С:\DOS> debug
З’явиться дефіс (риска). Це запрошення Debug. В рядку запрошення Debug, наберіть наступне:
D 40:00 09
З’явиться наступний рядок тексту:
0040:0000 F8 03 F8 02 00 00 00 00-78 03
Щоб вийти з Debug, натисніть клавішу Q (Quit - вихід) і потім натисніть ENTER, щоб повернутися в командний рядок DOS. Рядок, що має для нас інтерес, починається з 0040:0000. В даному прикладі, F8 03 (потрібно читати 03F8h) і F8 02 (потрібно читати 02F8h) вказує на два послідовні порти (СОМ1 і COM2). Інші варіанти включають Е8 03 (потрібно читати 03Е8h) і Е8 02 (потрібно читати 02Е8h), COM3 і COM4, відповідно. На комп’ютері з чотирма послідовними портами цей рядок повинен бути
0040:0000 F8 03 F8 02 Е8 03 Е8 02-78 03
На комп’ютері, на якому немає послідовних портів, цей рядок повинен бути наступним
0040:0000 00 00 00 00 00 00 00 00-78 03
Загальні симптоми
Симптом 7.1. Ви чуєте звуковий сигнал або бачите помилку POST, що вказують на несправність послідовного порту
Ініціалізація системи може бути зупинена або не зупинена залежно від конкретної BIOS. Проблеми з низькорівневою ініціалізацією звичайно вказують на несправність апаратури комп’ютера. Якщо послідовність звукових кодів комп’ютера незрозуміла, можна спробувати перезавантажити комп’ютер зі встановленою картою аналізатора кодів POST. Код POST, що відображувався картою, можна порівнювати з поясненням конкретних помилок в документації, прикладеній до карти POST. Якщо помилка чітко ідентифікована як помилка послідовного порту, можна продовжити процес локалізації несправності.
Почніть з системи в цілому і видаліть всі карти розширення, на яких є послідовні порти. Повторюйте тестування комп’ютера після видалення кожної карти. Якщо помилка зникає після видалення конкретної карти, то, мабуть, несправність полягає в ній. Можна просто замінити цю карту новою або спробувати відремонтувати її. Якщо в системі тільки один послідовний порт, то, швидше за все, він інтегрований в системну плату. В цьому випадку, також можна замінити несправну схему UART, замінити всю системну плату або блокувати несправний порт на системній платі.
Симптом 7.2. Система виводить повідомлення про помилку послідовного адаптера 11хх або 12хх
Несправність апаратури виявлена в одному з СОМ-портів. Помилки 11хх звичайно вказують на несправність СОМ1, а помилки 12хх вказують на проблему з COM2, COM3 або COM4. В більшості випадків, несправність полягає в UART. У вас є вибір: замінити мікросхему UART, замінити системну плату або блокувати несправний СОМ-порт і замінити його платою розширення.
Симптом 7.3. Ініціалізація комп’ютера проходить без помилок, але зовнішні послідовні пристрої не працюють
Прикладна програма, можливо, повідомляє, що пристрій не підключений. Перш ніж братися за інструменти, потрібно визначити, де шукати несправність: в комп’ютері чи в зовнішньому пристрої. У випадку, коли не працює модем або принтер, треба виконати їх автономне тестування, щоб, принаймні, переконатися, що вони знаходяться в робочому стані. Перевірте всі кабелі і роз’єми (можливе, варто спробувати інший кабель). Перевірте також програму, яка використовується для зв’язку з послідовним портом. Перевірте, що використовувана програма правильно налаштована на використання відповідного СОМ-порту, і що вибрані всі потрібні драйвери.
Відключіть зовнішній пристрій від комп’ютера і включите в послідовний порт тестову заглушку (loopback). Виконайте діагностичні процедури для перевірки кожного наявного послідовного порту. Звертайте увагу на будь-який порт, на якому реєструється несправність. Локалізуйте відповідний послідовний порт. Якщо цей порт знаходиться на платі розширення, замініть несправну плату розширення. Якщо цей порт знаходиться на системній платі, можна замінити несправну схему UART, встановити, як альтернативу, плату розширення або повністю замінити системну плату.
Симптом 7.4. Дані час від часу втрачаються або спотворюються
Перше, що потрібно зробити, - це перевірити комунікаційний кабель. Переконайтеся, що кабель не пошкоджений і правильно закріплений на обох кінцях. Спробуйте інший кабель. Якщо перевірка показує, що кабель в порядку, значить, несправний або порт, або зовнішній пристрій. Почніть з послідовного порту. Перевірте, чи DTE і DCE налаштовані на один і той же формат кадру даних і на одну й ту саму швидкість передачі. Неправильні налаштування легко можуть стати причиною спотворення даних. Якщо проблеми залишаються, відключіть пристрій від комп’ютера і підключіть до послідовного порту тестову заглушку (loopback). Виконайте діагностичні процедури для перевірки кожного послідовного порту. Звертайте увагу на будь-який порт, на якому реєструються несправності. Локалізуйте відповідний порт. Якщо порт знаходиться на платі розширення, замініть несправну плату розширення. Якщо порт знаходиться на системній платі, можна замінити несправну схему контролера порту, встановити, як альтернативу, плату розширення або повністю замінити системну платну.
Якщо безпосередньо тестувати послідовний порт комп’ютера немає можливості, перевірте цей порт побічно, опробувавши роботу даного зовнішнього пристрою на іншому, явно справному комп’ютері. Якщо зовнішній пристрій з іншим комп’ютером працює правильно, то несправність, ймовірно, полягає в схемах послідовного порту комп’ютера, що тестується. Замініть всі несправні схеми або заміните системну плату. Якщо зовнішній пристрій з іншим комп’ютером працює також неправильно, тоді несправність, видно, полягає в самому зовнішньому пристрої (наприклад, принтері або модемі).
Симптоми IrDA
Симптом 7.5. Програма LapLink не розпізнає ІЧ СОМ-порт
При спробах використовувати програму LapLink з віртуальними СОМ-портами, створеними ІЧ-адаптером, ви можете отримати наступне повідомлення про помилку:
This port is unavailable: it may not be physically present in this computer. If no other communications program is currently running check for а mouse or other serial device on this port.
Цей порт неприступний: можливо, він фізично відсутній на комп’ютері. Якщо жодна інша комунікаційна програма в даний момент не працює, перевірте наявність миші або іншого послідовного пристрою, підключеного до даного порту.
Ця проблема виникає через те, що програма LapLink звертається до апаратних засобів напряму, щоб визначити стан СОМ-порту і не розпізнає віртуальних СОМ-портів, створюваних ІЧ-адаптером. Щоб усунути цю проблему, потрібно зв’язатися з компанією Traveling Software, щоб дізнатися про наявність оновлення для програми LapLink, або використати замість LapLink пряме кабельне з’єднання (DCC), яке включене до складу Windows 98 і вище.
Симптом 7.6. Виникають проблеми при роботі з ІЧ-зв’язком в денний час
Це звичайна для всіх ІЧ-пристроїв проблема і, як правило, вона пов’язана з перешкодами, які викликає інфрачервона складова звичайного сонячного світла. Спробуйте скоротити дальність каналу зв’язку між передавачем і приймачем (підсуньте ці пристрої ближче один до одного) і переконайтеся, що вони направлені так, щоб шлях між ними був максимально прямим.
Симптом 7.7. З’являється повідомлення, що вказує на внутрішню помилку ІЧ-пристрою
Коли ви намагаєтеся скористатися значком ІЧ-зв’язку на Панелі керування, ви можете отримати наступне повідомлення про помилку:
ERROR 1: There is an internal error on the IRDA device.
ERROR 1: Внутрішня помилка ІЧ-пристрою
Ця помилка може бути пов’язана з тим, що ІЧ-порт блокований в налаштуваннях CMOS Setup. Розблокуйте ІЧ-порт в налаштуваннях CMOS Setup.
Симптом 7.8. З’являється повідомлення «internal error 45» при використанні lrDA-пристрою в Windows 98
При спробі скористатися значком ІЧ-зв’язку на Панелі керування, ви можете отримати наступне повідомлення про помилку:
Internal Error 45: Your infrared software has encountered, an error, check infrared software settings under network properties.
Внутрішня помилка 45: Ваше програмне забезпечення, що обслуговує ІЧ-зв’язок виявило помилку, перевірте налаштування ПЗ, вказані в конфігурації мережі.
Ця помилка може виникати тоді, коли «Швидкий протокол ІЧ-зв’язку» (Fast Infrared Protocol) відсутній або пошкоджені відповідні файли. Якщо ви встановлюєте ІЧ-пристрій в Windows 98, то «Швидкий протокол ІЧ-зв’язку» (Fast Infrared Protocol) по замовчуванню не встановлюється. Ви повинні додати цей протокол в конфігурацію мережі вручну. Щоб усунути цю проблему, видаліть, а потім знову встановіть «Швидкий протокол ІЧ-зв’язку» (Fast Infrared Protocol):
1. Натисніть «Пуск» (Start), виділіть «Налаштування» (Settings) і потім виберіть «Панель керування» (Control Panel).
2. Двічі клацніть по значку «Мережа» (Network).
3. В списку встановлених мережевих компонентів, виберіть «Швидкий протокол ІЧ-зв’язку» (Fast Infrared Protocol), а потім натисніть кнопку «Видалити»(Remove).
4. Коли вам буде запропоновано це зробити, перезавантажте комп’ютер.
5. Натисніть «Пуск» (Start), виберіть «Налаштування» (Settings) і потім виберіть «Панель керування» (Control Panel).
6. Двічі клацніть по значку «Мережа» (Network).
7. На вкладці «Конфігурація» (Configuration), натисніть «Додати» (Add).
8. Виберіть «Протокол» (Protocol) і потім натисніть «Додати» (Add).
9. У вікні «Виробники» (Manufactures), виберіть Microsoft, у вікні «Мережеві протоколи» (Network Protocols) виберіть «Швидкий протокол ІЧ-зв’язку» (Fast Infrared Protocol) і потім натисніть ОК.
10. Натисніть ОК і потім перезавантажте комп’ютер, коли вам буде запропоновано це зробити.
Симптом 7.9. Ви одержуєте від Windows 98 повідомлення про помилку, яке вказує, що приймаючий пристрій не готовий до прийому
Коли ви намагаєтеся передати файл з одного комп’ютера на інший за допомогою IrDA-з’єднання, ви одержуєте наступне повідомлення про помилку:
The recipient device is not ready to receive. Please make sure infrared transfer is enabled on the receiving device.
Приймальний пристрій не готовий до прийому. Перевірте, будь ласка, що ІЧ-зв’язок на приймальному пристрої не заблокований.
Це повідомлення про помилку може з’явитися навіть не дивлячись на те, що ІЧ-зв’язок на приймаючому комп’ютері не заблокований. Ця помилка звичайно означає, що мінімальна швидкість передачі ІЧ-пристрою на одному комп’ютері менше мінімальної швидкості передачі ІЧ-пристрою на іншому комп’ютері. Наприклад, ви можете отримати повідомлення про помилку, якщо мінімальна швидкість ІЧ-передачі на одному комп’ютері - 2400 біт/с, а на іншому комп’ютері мінімальна швидкість ІЧ-передачі - 9600 біт/с. Змініть конфігурацію ІЧ-пристроїв так, щоб у них були одні і ті ж значення мінімальної швидкості.
Симптом 7.10. Ваша ІЧ-система в Windows 98 не виконує пошук, після того, як він дозволений
Коли ви дозволяєте або забороняєте пошук ІЧ-пристроїв, ви, можливо, виявите наступні проблеми. Коли ви клацаєте по прапорцю «Пошук зовнішніх пристроїв ІЧ-зв’язку» (Search For And Provide Status For Devices Within Range), щоб встановити його після того, як ІЧ-зв’язок вже дозволений, пошук не запускається. Коли ви клацаєте по тому ж самому прапорцю, щоб його скинути, тоді коли ІЧ-зв’язок дозволений, пошук не припиняється. Крім того, коли ви клацаєте по тому ж самому прапорцю, ви одержуєте наступне повідомлення про помилку:
Cannot search for devices because other infrared devices are operating nearby.
Неможливо виконати пошук пристроїв, оскільки в зоні досяжності працюють інші ІЧ-пристрої.
Щоб обійти цю проблему, одночасно заблокуйте або розблокуйте і ІЧ-зв’язок, і прапорець «Пошук зовнішніх пристроїв ІЧ-зв’язку» (Search For And Provide Status For Devices Within Range):
1. Натисніть «Пуск» (Start), виберіть пункт «Налаштування» (Settings) і потім виберіть пункт «Панель керування» (Control Panel).
2. Двічі клацніть по значку «Інфрачервоні пристрої» (Infrared Monitor), а потім виберіть вкладку «Режими» (Options).
3. Клацніть по прапорцю «Включити ІЧ-зв’язок» (Enable Infrared Communication), щоб встановити його, і по прапорцю «Пошук зовнішніх пристроїв ІЧ-зв’язку» (Search For And Provide Status For Devices Within Range), щоб встановити і його, а потім натисніть «Застосувати» (Apply).
4. Натисніть ОК.
Симптом 7.11. Неможливо використовувати пряме кабельне з’єднання спільно з ІЧ-портом принтера
Коли ви намагаєтеся з’єднати два комп’ютери за допомогою прямого кабельного з’єднання в Windows, ви, можливо, зможете вибрати порт LPT. Проте, якщо ви виберете порт LРТ, і він виявиться ІЧ-портом, таке з’єднання не буде працювати, і ви можете отримати наступне повідомлення про помилку:
Waiting to connect via cable on LPT<n>. Is the host computer running?
Очікування з’єднання по кабелю з LPT<n>. Ведений комп’ютер включений?
або
Cannot connect to the host computer. Make sure you have Direct Cable Connection on the host computer and you have connected your cable to. both computers.
Неможливо встановити з’єднання з веденим комп’ютером. Переконайтеся, що на веденому комп’ютері присутнє пряме кабельне з’єднання, і що кабель підключений до обох комп’ютерів.
Ця проблема виникає через те, що ІЧ-порт є однонаправленим портом, а пряме кабельне з’єднання вимагає, щоб порти LPT були двонаправленими. Це не можна виправити, але ви можете вирішити цю проблему, вибравши для ІЧ-зв’язку між комп’ютерами не паралельний, а послідовний ІЧ-порт.
Симптом 7.12. Не працюють пристрої Fast Infrared
Ця відома проблема з комп’ютерами Gateway 2000 Solo 9100, на яких оновлена операційна система до Windows 98. В Диспетчері пристроїв (Device Manager) може бути також вказане більше одного пристрою Fast Infrared. На жаль, в процесі встановлення Windows 98 не виявляє і не замінює вже встановлені на комп’ютері драйвери Fast Infrared. Після встановлення Windows 98, може бути встановлено два набори драйверів Fast Infrared, і це приводить до конфлікту, який перешкоджає роботі ІЧ-пристроїв. Щоб усунути цю проблему, видаліть всі драйвери Fast Infrared:
1. Натисніть «Пуск» (Start), виберіть пункт «Налаштування» (Settings), клацніть по пункту «Панель керування» (Control Panel), двічі клацніть по значку «Система» (System), а потім виберіть вкладку «Пристрої» (Device Manager).
2. Виберіть перший інфрачервоний пристрій, указаний в списку пристроїв ІЧ-зв’язку, натисніть кнопку «Видалити» (Remove), а потім натисніть ОК. Повторіть те ж саме для всієї решти ІЧ-пристроїв в цьому списку.
3. Двічі клацніть по гілці «Мережеві плати» (Network Adapters), щоб розвернути її. Якщо в списку присутній порт Fast Infrared, виділіть його, натисніть «Видалити» (Remove), а потім ОК.
4. Натисніть ОК, щоб закрити Диспетчер пристроїв (Device Manager), а потім перезавантажте комп’ютер. В процесі перезавантаження комп’ютера Windows знову виявить пристрій Fast Infrared і встановить коректні драйвери.
Симптом 7.13. При друку на інфрачервоному принтері виводиться або сміття, або чисті листи
Це може відбутися, наприклад, коли ви намагаєтеся друкувати на принтері Canon BJC 50, використовуючи ІЧ-канал зв’язку. Практично у всіх випадках, ця проблема пов’язана з несумісністю між інфрачервоними портами (напр., у комп’ютера порт IrDA l.l, а у принтера порт IrDA 1.0). Щоб усунути цю проблему, встановіть режим порту IrDA комп’ютера у версію 1.0 за допомогою програми CMOS Setup (або відновіть BIOS). Як обхідний шлях, обмежте швидкість IrDA-порту величиною 56 Кбіт/с або менше (хоча це приведе до більш повільної роботи принтера):
1. Натисніть «Пуск» (Start), виділіть «Налаштування» (Settings), клацніть по «Панелі керування» (Control Panel), а потім двічі клацніть по значку «Інфрачервоні пристрої» (Infrared Monitor).
2. Виберіть вкладку «Режими» (Options), виберіть в полі «обмежити швидкість обміну» (Limit Connection Speed) найнижчу швидкість, а потім закрийте вікно із збереженням змін.
3. Якщо потрібно, то перезавантажте комп’ютер і спробуйте знову виконати друк на принтері.
Додаткова інформація
ActiSys– HYPERLINK "http://www.actisys.com" www.actisys.com
Adaptec – HYPERLINK "http://www.adaptec.com" www.adaptec.com
Hewlett-Packard – HYPERLINK "http://www.hp.com" www.hp.com
Infrared Data Association – HYPERLINK "http://www.irda.o" www.irda.org
Sharp – HYPERLINK "http://www.sharp-usa.com" www.sharp-usa.com
TI – HYPERLINK "http://www.ti.com" www.ti.com