USB

From Ilianko

USB

Литература

Официална документация: http://www.usb.org

http://www.usb.org/developers/docs/usb_20_040908.zip (виж глава 9)


Hyde,

 J.	
 (2001).	
 USB	
 Design	
 by	
 Example:	
 A	
 Prac6cal	
 Guide	
 to	
 

Building

 I/O	
 Devices.	
 Second	
 Edi6on.	
 

Хост контролер спецификация:

Направи си сам Интерактивен манипулатор (USB

HID device)	
 

• Microchip

 (h8p://www.microchip.com)	
 

– pic18f4550

 microcontroller,	
 pickit2	
 programmer,	
 C	
 compiler	
 and	
 

MPLAB

 IDE	
 

– PICDEM

 development	
 board	
 (no	
 hardware	
 programmer	
 needed;	
 

bootloader

 enables	
 flashing	
 microcontroller	
 firmware	
 through	
 USB)	
 

Linux & USB

• Host

 sobware	
 on	
 Linux	
 

– h8p://libusb.wiki.sourceforge.net/

– h8p://libhid.alioth.debian.org/

• My

 notes	
 

– h8p://www.cprince.com/PubRes/Hardware/LinuxUSB/

• Linux

 Device	
 Driver	
 book	
 

– h8p://lwn.net/Kernel/LDD3/

 (freely	
 available)	
 

– Chapter

 13	
 is	
 on	
 USB	
 	
 

• Linux

 device	
 driver	
 kit	
 

– h8p://kernel.org/pub/linux/kernel/people/gregkh/ddk/

• usbmouse.c

 &	
 hid-­‐core.c	
 Linux	
 device	
 drivers	
 

– h8p://www.cprince.com/courses/cs5631/lectures/USB

Съдържание

RS-­‐232

 serial	
 communica6on	
 

• Wiring,

 power	
 &	
 hardware	
 configura6on	
 

• USB

 organiza6on	
 

– Devices

 classes	
 

– “Interrupts”

 &	
 Interrupts	
 

• Configura6ons

 &	
 endpoints	
 

• Transac6on

 types	
 

• Bus

 data	
 communica6on	
 

– Packets,

 frames,	
 microframes	
 

– Data

 rates	
 

• • • • Control

 transfers	
 

Interrupt

 transfers	
 

Hardware

 development	
 

Some

 Linux	
 host	
 sobware


Предназначение

Проектира се с цел да замени различни бавни шини за предаване на данни, като паралелна, серийна, PS/2 със обша шина, към която могат да се включват всички тези устройства.[1]

Проводници и захранване на USB

USB <= 2

  • 4 проводника
  • Два проводника за захранване +/- 5V
    • Няма проводник за тактова честота
    • Предаването е асинхронно
  • Останалите два проводника са за предаване на данни
    • Обикновено се използва диференциално предаване
  • Възможно захранване до 100mA
  • При конфигуриране до 500mA

File:UsbConnectors.jpg

USB <= 3