Для прикладу побудуємо мережу, зображену на рис 64 Ця мережа використовує чотирьохпровідний телефонний кабель для організації двох ліній звязку з активним харчуванням датчиків На кожній з ліній для простоти розташоване за два датчика Лінії звязку підключені до двох молодшим бітам першого восьмибитового каналу інтерфейсу Харчування для мережі береться від компютера

Рис 64 Використання 32-бітового інтерфейсу для управління MicroLAN з двома лініями звязку

Як вже згадувалося вище, в просторі введення / виводу компютера інтерфейс може займати один з чотирьох можливих діапазонів адрес Кожен діапазон складається з пяти адрес: по одному на кожен восьмібітовий канал звязку і один адресу командного слова, або регістра статусу, що визначає режим роботи (прийом або передача) для кожного каналу Адреса регістра статусу останній (найстарший) у ряду адрес діапазону Якщо за цією адресою записаний байт, чотири молодших біта якого містять нулі, то всі канали інтерфейсу налаштовані на прийом Якщо ці біти містять одиниці, то всі канали налаштовані на передачу Інакше кажучи, кожен з перших чотирьох бітів регістра статусу відповідальний за режим підвідомчого йому каналу: 0-й біт за режим першого каналу, 1-й біт за режим другого каналу і тд Якщо керуючий біт містить 1, то відповідний канал налаштований на передачу, якщо 0, то на прийом

Припустимо, що наш інтерфейс налаштований перемичками на діапазон адрес 360h 364h Тоді перший канал буде мати адресу 360h, а адреса 364h буде належати регістру статусу Дві комунікаційні лінії мережі підключені, як уже говорилося, до двом молодшим бітам (нульового й першого) першого каналу інтерфейсу Ці два біти виступають як майстри шини для підключених до них однопровідна ліній звязку Тоді, щоб перевести обидві лінії у вихідне високорівневе стан, досить біти 0 і 1 першого каналу перевести в режим прийому Тоді їх приймально-передавачі перейдуть в високоімпедансное стан, а підтягують резистори 5 (рис 64) підтягнутий відповідні шини в високорівневе стан Так як інтерфейс допускає зміну режиму прийому / передачі тільки побайтово (поканально), то, записуючи в регістр статусу (За адресою 364h), наприклад, 0, ми свідомо переведемо в режим прийому всі чотири каналу Але оскільки всі канали, крім першого, нас у даному випадку не цікавлять, то надалі для перекладу майстрів в режим прийому будемо для простоти записувати в регістр статусу саме 0 Аналогічно, для перекладу першого каналу в режим передачі будемо посилати в регістр статусу число 1 При цьому тільки перший канал переходить в режим передачі, інші три залишаються в режимі прийому Перевівши потрібний канал в режим передачі, можна тепер послати за адресою цього каналу (у нашому випадку 360h для першого каналу) відповідний код, що переводить біти цього каналу в високорівневе або низкоуровневое стан Так, якщо за адресою каналу послати число 0, то всі біти опиняться в низкоуровневом стані Якщо ж послати число 1, то нульовий біт перейде в високорівневе стан Якщо послати число 255, то всі вісім бітів першого каналу перейдуть в високорівневе стан

Таким чином, щоб наші два майстри біти 0 і 1 першого каналу відпустили свої шини, достатньо в регістр статусу за адресою 364h записати число 0, що переводить ці біти в високоімпедансное стан прийому Для того, щоб відповідний майстер перевів свою шину в низкоуровневое стан, потрібно записати відповідний код за адресою 360h і послати в регістр статусу за адресою 364h число 1, що переводить канал 1 в режим передачі Відразу після цього біти 0 і 1 першого каналу перейдуть в стану, які визначаються записаним в регістр першого каналу кодом Наприклад, якщо було записано число 1, то біт 0 опиниться в високорівневої стані, ніяк не впливаючи на стан своєї шини, а біт 1 перейде в низкоуровневое стан, опускаючи свою шину в нуль

Джерело: карнач АС, Белошенко ВА, Тітієвський ВІ, Мікролокальние мережі: інтелектуальні датчики, Однопровідна інтерфейс, системи збору інформації Донецьк: ДонФТІ НАНУ України, 2000 199с з іл