Специфікація USB

даними можливий тільки між хостом і пристроєм, і не можливий на пряму між пристроями підключеними до шини (це означає, що в принципі в першу чергу USB - це шина виводу. Пізніше ми зрозуміємо чому). Транзакції на USB шині складаються з двох-трьох актів: посилки пакету маркера, що визначає, що слідуватиме далі (тип транзакції, адресу пристрою і його кінцеву крапку), пакету даних (опціонально), і пакету статусу транзакції (для підтвердження нормального виконання операції або повідомлення про помилку).

Ми не станемо опускатися в розгляді до рівня кадрів і мікрокадрів, оскільки це зовсім не перешкодить зрозуміти нам загальні принципи робота шина.

Фізичні канали зв'язку організовуються концентраторами і сполучними проводами. З концентраторами ми вже майже розібралися раніше. Дріт використовується для підключення USB пристроїв є екранованою витою парою. Для високошвидкісних пристроїв пред'являються високі вимоги до її якості. Низькошвидкісні до цього елементу фізичного інтерфейсу відносяться не критично, і без проблемно можуть функціонувати на неекранованому невитому дроті. Всього в USB кабелі використовується 4 проводів.

Два для передачі сигналу і два для подачі напруги. Для підключення пристроїв призначені з'єднувачі двох типів: типу "A" і типу "B". Як мені здається створення двох різних видів коннекторів було необхідне для того, що б уникнути зайвої плутанини при підключенні пристроїв і захиститися від дурня, позбавивши його можливості підключити що-небудь не так. Крім того, вони характеризуються різним зусиллям необхідним для вставки і силою утримання в розйомі

Коннектори типу "А" використовуються для підключення до комп'ютера, забезпечують жорстке і надійне кріплення і не призначені для частого підключення/від'єднання.  

З'єднувачі ж типу "B", навпаки, потрібні в тих місцях, де існує необхідність частого підключення/відключення, і застосовуються вони з боку периферії.  

У живу вони от так виглядають.  

Крім того в новій версії USB визначений коннектор miniUSB типу "B".  

Він призначений для застосування на малогабаритних пристроях типу мобільних телефонів, фотоапаратів, плеєрів, де немає можливості розмістити стандартний повнорозмірний роз'єм. (По абсолютно незрозумілих для мене причинах, з доступністю кабелів miniUSB ситуація йде не кращим чином: і хоча це дуже поширений останнім часом тип підключення, дістати його часто дуже проблемно, а якщо і можливо, то за нього просять деколи 10-20$, при тому що із звичайною вилкою типу "B" можна придбати на кожному розі за 1$. Це і власне спостереження, і досвід спілкування з людьми в різних містах і країнах) Від дрібної периферії, типу клавіатур, мишок, де розміщення сполучних роз'ємів незручне та і взагалі безглуздо, кабель може взагалі не від'єднаються. Конструктивно роз'єми задумані так, що спочатку відбувається з'єднання шини живлення, потім шини даних.

Тепер, володіючи необхідним мінімумом відомостей про шину USB, пристроях протоколах і ін. можна спробувати у загальних рисах розібратися з тим як же все це працює.

Отже, до шини підключений новий пристрій. Напевно ви задавалися питанням, яким чином відбувається виявлення. Відповідь проста: виявлення пристрою, а також і його швидкісний режим визначається по стрибку напруги, який має місце бути при включенні на шині даних. Цей стрибок створюється підключенням резистора до напруги

1 2 3 4 5 6 7 8