SlideShare ist ein Scribd-Unternehmen logo
1 von 123
Tìm hiểu giao tiếp USB
Bài giảng sử dụng tài liệu của sinh viên khóa trước
Nội dung
Introduction
• USB là một chuẩn kết nối của máy tính.
• Ra đời năm 1996 (1.0)
• Là kết quả của sự hợp tác giữa 7 công ty hàng
đầu thế giới
Compaq, Digital Equipment Corporation,
IBM, Intel, Microsoft, NEC, Northern
Telecom
Introduction
Introduction
Tốc độ trên lý thuyết :
• USB 1.0: 1,5 Mbps (low speed)
• USB 1.1: 12 Mbps (full speed)
• USB 2.0: 480 Mbps (high speed)
• USB 3.0: 4,8 Gbps (super speed)
Introduction
Cấu tạo
Introduction
Ưu điểm:
–
–
–
RS232
USB
INTERFACE
VGA Ethernet
Sound
Introduction
Hỗ trợ nhiều kết nối khác nhau
Tự cấu hình: tự load driver khi kết nối thiết bị ngoại vi với PC – không cần reset máy sau khi cài driver
–
Insert
driver
disk
First time Next time
Plug &
Play
Introduction
Ưu điểm:
• Dễ kết nối các thiết bị vào cổng USB
• Đa số máy tính hiện nay có nhiều cổng USB, ngoài ra còn có các loại HUB USB.
●
●
USB mở rộng tới 127 thiết bị có thể kết nối cùng vào một máy tính trên một cổng USB duy nhất (bao gồm các hub
USB)
Introduction
Ưu điểm:
•Bên cạnh đó, USB tiện lợi hơn các đầu cắm khác do kích
thước nhỏ, có thể tháo và cắm nóng thiết bị mà không hề tổn
hại đến PC
•USB cũng hỗ trợ kết nối không dây giữa PC và thiết bị
•Với HUB, khoảng cách dây giữa PC và device có thể lên tới
30m
•Không cần thiết lập cài đặt cao cho thiết bị (port address…)
VS
Introduction
$$$$$$$$$$
• Multiple speeds:
• SuperSpeed (USB 3.0) 5 Gbps
• High speed: 480 Mbps (USB 2.0)
• Full speed: 12 Mbps, low speed: 1.5 Mbps (USB 1.x).
• Cho phép chọn tốc độ phù hợp với ứng dụng.
• Độ an toàn: cả phần cứng và giao thức sử dụng cho USB đều thề hiện
sự an toàn cho dữ liệu: có khả năng khử nhiễu, phát hiện và sửa lỗi
khi chuyển dữ liệu.
• Không tốn kém: thực tế cho thấy các thiết bị với giao tiếp USB ngày
nay có giá thành ngày càng rẻ.
• Tiết kiệm năng lượng, công suất tiêu thụ thấp…
Introduction
Ưu điểm:
Hạn chế:
• Giới hạn về khoảng cách (< 5m without hub)
• Không hỗ trợ kết nối peer to peer (do USB yêu cầu
phải có PC – host controller hardware và device
controller hardware) và broadcasting
• Không tương thích với phần cứng và hệ điều hành cũ
(không có port USB hoặc ko hỗ trợ driver)
Introduction
The Electronic and
Mechanical Interface
Mechanical
USB 1.x/2.0 standard pinout
Pin Name Cable color Description
1 VBUS Red +5 V
2 D− White Data −
3 D+ Green Data +
4 GND Black Ground
Mechanical
The Electronic and Mechanical Interface
USB 1.x/2.0 standard pinout
Mechanical
The Electronic and Mechanical Interface
USB 1.x/2.0 Mini/Micro pinout
Pin
Nam
e
Cable
color
Description
1
VBU
S
Red +5 V
2 D− White Data −
3 D+ Green Data +
4 ID None
Permits distinction of A plug from B
plug
* A plug: connected to Signal
ground
* B plug: not connected
5 GND Black Signal ground
The Electronic and Mechanical Interface
Mechanical
Mini USB
Mini-AB
Mini-B Mini-A
Mechanical
The Electronic and Mechanical Interface
Micro USB
Micro B
Mechanical
The Electronic and Mechanical Interface
• Cổng Micro-USB được thiết kế để chịu được tối
đa 10000 lần rút ra cắm vào
• USB chuẩn chỉ được thiết kế cho 1500 lần và
Mini-USB cũng chỉ được thiết kế tối đa 5000 lần
rút ra cắm vào
Mechanical
Micro USB
The Electronic and Mechanical Interface
eSATAp (eSATA/USB) combo port
Mechanical
The Electronic and Mechanical Interface
Pi
n
Color
Signal
name ('A'
connector)
Signal
name ('B'
connector)
1 Red VBUS
2 White D−
3 Green D+
4 Black GND
5 Blue
StdA_SSR
X−
StdA_SST
X−
6 Yellow
StdA_SSR
X+
StdA_SST
X+
7 Shield GND_DRAIN
8
Purpl
e
StdA_SST
X−
StdA_SSR
X−
USB 3.0 pinouts
Mechanical
The Electronic and Mechanical Interface
Cấu tạo chuẩn A USB 3.0
Cấu tạo chuẩn B USB 3.0
Standard B
Micro B
Electrical
The Electronic and Mechanical Interface
Full speed device
Low speed
device
Low speed và full speed
The Electronic and Mechanical Interface
Low speed và full speed
Mức logic của tín hiệu phụ thuộc vào tốc độ. Vì thế
người ta dùng ký hiệu J và K để chỉ mức logic
Low speed: J = 0; K = 1
High speed: J = 1; K = 0
The Electronic and Mechanical Interface
Low/full-speed signaling levels
The Electronic and Mechanical Interface
Low/full-speed signaling levels
The Electronic and Mechanical Interface
Electrical
The Electronic and Mechanical Interface
Electrical
The Electronic and Mechanical Interface
High speed
Tốc độ 480MHz được chọn vì
 Phù hợp với công nghệ vào thời điểm đó  có thể sử dụng các cổng và cáp cũ
 Đặc biệt 480 là bội số của 12 nên có thể sử dụng chung thạch anh cho các chế
độ
 Giá thành rẻ
Thiết bị high speed sẽ kết nối bằng full speed sau đó reset và test nếu hub hỗ
trợ kết nối 2.0 sẽ khởi tạo kết nối
 Khi hoạt động ở high speed điện trở pull up sẽ được tắt để cân bằng đường dây
 Thiết bị tương thích USB 2.0 không nhất thiết phải hỗ trợ high speed
 Thiết bị dùng high speed không đc hỗ trợ chế độ low speed. Nó chỉ được hỗ trợ
full speed để kết nối lúc đầu, sau đó chuyển qua high speed
Thiết bị downstream tương thích USB 2.0 (Hub/Host) phải hỗ trợ cả 3 chế độ
high speed, full speed và low speed
The Electronic and Mechanical Interface
High speed
The Electronic and Mechanical Interface
High speed
The Electronic and Mechanical Interface
Transfer Basic
Elements of a Transfer
USB 2.0 Transaction
Ensuring successful Transfer
Inside USB transfer
- Quyết định được loại transfer nào một device
nên dùng
- Viết firmware cho device
- Nhận biết được các lỗi xảy ra trong khi truyền
thông
Inside a USB transfer
M c tiêu:ụ
• Mọi phiên truyền thông USB đều diễn ra với một
bên là Host và một bên là Device.
• Host quản lý việc truyền thông trên Bus và Device
đáp ứng yêu cầu từ Host
HOST DEVICE
Inside a USB transfer
Transfer Basics
Endpoint:
Endpoint có:
• Mã số
• Hướng
• Dung lượng tối đa có thể gửi hay nhận
HOST DEVICE
Inside a USB transfer
Transfer Basics
Transaction:
HOST DEVICE
1 : Token
2 : Data
3 : Handshake
Inside a USB transfer
Transfer Basics
Transfer:
Transaction Transaction Transaction
Transfer
Inside a USB transfer
Transfer Basics
Transfer
Transaction Transaction Transaction
Token Data Handshake
Summary
Inside a USB transfer
Transfer Basics
Inside a USB transfer
Transfer Basics
Thực tiễn: nhiều thiết bị dùng chuẩn USB  nhu cầu khác
nhau  đòi hỏi hỗ trợ những kiểu transfer khác nhau
Có 4 loại transfer:
• Control: Nhận dạng và cấu hình
• Bulk: Printer, scanner
• Interrupt: Chuột, bàn phím
• Isochronous: Audio và Video streaming
Inside a USB transfer
Transfer Basics
Truyền thông USB gồm 2 giai đoạn:
 Nhận dạng và cấu hình thiết bị (Enumeration)
 Truyền thông (tuỳ mục đích)
Chuẩn USB 2.0 hỗ trợ truyền thông:
 Low Speed: 1.5Mbps
 Full Speed: 12 Mbps
 High Speed: 480 Mbps
Inside a USB transfer
Transfer Basics
 USB 2.0 Host Controller chia thông tin thành những
Frame với:
 Low và Full Speed: frame 1ms
 High Speed: microframe 125 us
 Chúng ta có thể xem từng frame như là “bus interval”
 Những transactions trong một transfer có thể nằm gọn
trong 1 (micro) frame hay nhiều (micro) frame.
Inside a USB transfer
Elements of Transfer
• Endpoints :
• Tất cả dữ liệu chạy trên Bus đều đến hoặc đi từ device
endpoints. Endpoint là một buffer lưu trữ nhiều bytes. Dữ
liệu lưu trên endpoint là dữ liệu nhận được (từ host) hay là
dữ liệu sắp truyền (đến host).
• Địa chỉ endpoint gồm mã số endpoint (từ 0-15) và hướng
(theo quan điểm của host).
• Endpoint được cấu hình cho control transfer phải truyền dữ
liệu từ 2 hướng, và mỗi device phải có endpoint 0 được
cấu hình cho control endpoints
Những loại Transaction:
+ Ở mọi USB 2.0 transaction, ban đầu host sẽ gửi một
“addressing – tripple” bao gồm: địa chỉ thiết bị, mã số endpoint
và hướng endpoint.
+ Khi nhận 1 gói tin OUT hay setup, endpoint sẽ lưu data theo
sau gói tin đó, sau đó device hardware sẽ sinh ra ngắt. Tương
tự khi gửi gói tin IN.
Inside a USB transfer
Elements of Transfer
Inside a USB transfer
Elements of Transfer
• Pipes :
• Trước khi data được truyền đi, giữa host và device
phải thiết lập một pipe. Host thiết lập pipe ở quá
trình enumeration. Host có thể yêu cầu thêm hoặc
bớt pipes dùng control transfer.
• Nhắc lại: Mọi thiết bị có một control pipe mặc định
dùng endpoint 0.
• Thông tin cấu hình host nhận từ device bao gồm
một endpoint descriptor cho mỗi endpoint mà
device muốn dùng. Mỗi endpoint chứa đựng: địa
chỉ endpoint, loại transfer mà endpoint hỗ trợ, kích
thước tối đa gói dữ liệu, đôi khi có cả transfer
interval.
Inside a USB transfer
USB 2.0 Transaction
Inside a USB transfer
USB 2.0 Transaction
Inside a USB transfer
USB 2.0 Transaction
Mỗi transaction thường có 3 phase: token, data,
handshake.
Mỗi packet bắt đầu với một Packet ID (PID) chứa đựng
thông tin nhận dạng.
Inside a USB transfer
USB 2.0 Transaction
Inside a USB transfer
Ensuring Successful Transfers
• USB 2.0 định nghĩa những mã handshake chỉ thị:
• Việc chấp nhận hay không của dữ liệu được nhận.
• Hỗ trợ hay không hỗ trợ một yêu cầu điều khiển nào
đó.
• Tình trạng HALT của endpoint.
• Trong control transfer, status stage báo thành công
hay thất bại của một transfer.
• Các mã status được định nghĩa: ACK, NAK, STALL,
NYET và ERR. Việc thiếu vắng mã handshake
nào ở trên báo hiểu có lỗi.
Inside a USB transfer
Ensuring Successful Transfers
• ACK (acknowledge): chỉ thị rằng host hay device đã nhận
data mà không có lỗi.
• NAK (negative acknowledge): device đang bận hoặc
device không có data để trả về.
• STALL: một yêu cầu điều khiển không hỗ trợ, yêu cầu điều
khiển thất bại, hay endpoint có lỗi.
• NYET (not yet): Device có sẵn sàng để nhận data hay
chưa.
• No response
USB data flow
model
USB Host/Device view
USB cung cấp dịch vụ truyền thông giữa host và USB device
Truyền thông USB được biểu diễn theo cấu trúc phân tầng cho
phép những người triển khai sản phẩm USB tập trung vào
những chi tiết liên quan đến sản phẩm của họ
USB data flow model
USB Host/Device view
USB data flow model
USB Host/Device view
Host
USB host tương tác với USB device
trong quá trình truyền thông và có
trách nhiệm:
• Phát hiện khi có 1 USB device
được cắm vào hay rút ra
• Quản lý control flow giữa host
và USB devices
• Quản lý data flow giữa host và
USB devices
• Cung cấp năng lượng cho USB
devices
USB data flow model
USB Host/Device view
Physical devices
• USB physical devices cung cấp
thêm chức năng cho host. Chức
năng của USB device rất đa dạng
(mouse, keyboard, printer,…)
• Mỗi USB device mang theo thông
tin liên quan tới việc cấu hình và
báo cáo thông tin này cho host
nhằm hỗ trợ host trong việc xác
định và cấu hình USB device
USB data flow model
USB Host/Device view
USB data flow model
USB Host/Device view
Function Layer
Function layer cung cấp
thêm chức năng tới host
thông qua một client
software thích hợp
USB data flow model
USB Host/Device view
USB Device Layer
The USB Device layer
có trách nhiệm thực
hiện những hoạt động
tiêu chuẩn/chung của
một kết nối USB
USB data flow model
USB Host/Device view
USB Bus Interface
Layer
USB Bus Interface layer
cung cấp kết nối vật lý/tín
hiệu/gói tin giữa host và
devices
USB data flow model
Detailed USB Host/Device view
USB data flow model
Detailed USB Host/Device view
Client Software
• Phần mềm thực thi trên
host, tương ứng với một
USB device nhất định.
• Thường được cung cấp
kèm theo với hệ điều
hành hoặc được cung
cấp kèm theo USB
device
USB data flow model
Detailed USB Host/Device view
USB system software
• Phần mềm hỗ trợ
USB trong một hệ
điều hành nhất định,
thường được cung
cấp chung với hệ
điều hành.
• Gồm 2 phần chủ
yếu là Host
Controller Driver và
USB Driver
USB data flow model
Detailed USB Host/Device view
USB system software (tt)
• USB Driver (USBD):
Phần giao tiếp giữa USB
System Software và client
software. Nó cung cấp cho
client software các
functions để thao tác trên
USB devices.
• Host Controller Driver
(HCD): Phần mềm giao
tiếp giữa USB Host
Controller và USB System
Software. Nhà sản xuất
USB Host Controller sẽ
cung cấp HCD kèm theo
USB data flow model
Detailed USB Host/Device view
Host Controller:
Tổ chức và đóng gói dữ
liệu, truyền gói tin đi
trên USB
USB data flow model
Detailed USB Host/Device view
SIE (Serial Interface
Engine)
• Việc truyền tải dữ liệu
qua USB được thực
hiện theo kiểu nối tiếp.
• SIE xử lí việc chuyển
đổi từ giao tiếp nối tiếp
sang các giao tiếp khác
và ngược lại.
• Trên host, SIE thường
được thực hiện như là
một phần của Host
Controller
USB data flow model
Detailed USB Host/Device view
Endpoint
• Endpoint là một
buffer dùng để lưu trữ
dữ liệu.
• Dữ liệu tại endpoint
có thể là dữ liệu vừa
nhận được hoặc dữ
liệu chờ để chuyển đi
USB data flow model
Detailed USB Host/Device view
Endpoint zero
• Endpoint zero là một
endpoint đặc biệt. Tất
cả các thiết bị đều phải
có endpoint zero.
• Endpoint này sẽ nhận
tất cả thông tin điều
khiển và các yêu cầu
trạng thái từ USB
System Software thông
qua Default Pipe
USB data flow model
Detailed USB Host/Device view
Default Pipe to Endpoint
Zero
• USB System Software
quản lý thiết bị dùng
Default Pipe
• USB System Software
sẽ gửi thông tin điều
khiển và thông tin trạng
thái giữa host và USB
devices thông qua
Default Pipe
• Quá trình enumeration
(quá trình xảy ra khi gắn
USB device vào host) sử
dụng Default Pipe
USB data flow model
Detailed USB Host/Device view
Interface
• Endpoints được nhóm
thành từng nhóm, một
nhóm các endpoint tạo
thành một interface
• Mỗi interface gắn liền
với một chức năng của
USB device
USB data flow model
Detailed USB Host/Device view
Pipe Bundle to an
interface
• Client software quản
lý một interface dùng
pipe bundles (gắn
liền với một tập các
endpoints).
• Thông qua Pipe
Bundle, Client
software yêu cầu dữ
liệu được truyền tải
giữa buffer trên host
và các endpoints trên
USB devide
USB data flow model
USB protocol
USB protocol
Control tranfer (Truyền điều khiển)
Control tranfer dùng để cài đặt và truyền thông tin giữa host và function.
Truyền theo 2 hướng IN và OUT. Việc truyền điều khiển gồm 3 bước:
Setup stage
Data stage
Status stage
Setup stage gồm 3 gói packet:
Token packet: chứa địa chỉ và endpoint
Data packet: cài đặt kích thước dữ liệu, luôn truyền dữ liệu Data0
Handshake packet: báo nhận thành công hoặc báo lỗi
USB protocol
Data stage: gồm 3 gói packet
Token packet: báo hướng truyền IN hoặc OUT
Data packet: chứa dữ liệu được truyền
Handshake packet: xác nhận thành công hoặc báo lỗi
USB protocol
Status stage: báo trạng thái truyền. Gồm 2 trường hợp:
IN: khi host gửi dữ liệu
OUT: khi host nhận dữ liệu
USB protocol
Setup stage
Data stage
USB protocol
Status stage
USB protocol
Bulk transfer (Truyền hàng loạt)
Bulk tranfer dùng truyền dữ liệu lớn, chính xác không khắt khe về
thời gian. Truyền 1 hoặc 2 hướng.
VD: scaner, printer, usb disk
USB protocol
Interrupt tranfer (Truyền ngắt)
Interrupt transfer dùng để truyền dữ liệu nhỏ , không
liên tục. Truyền theo 1 hoặc 2 hướng (đối với USB 1.0
chỉ có IN).
VD: keyboard, mouse
USB protocol
Isochronous transfer (Truyền đẳng thời)
Isochronous tranfer dùng để truyền dữ liệu với tốc độ
cố định và bỏ qua lỗi. Truyền 1 hoặc 2 hướng.
VD: truyền voice qua usb
USB protocol
ENUMERATIO
N
Enumeration là gì?
 Gán địa chỉ cho thiết bị
 Tìm kiếm và cài đặt Driver phù hợp
 Lựa chọn cấu hình về nguồn cấp và những Interface
ENUMERATION
Quy trình như thế nào?
 Khi cắm thiết bị vào.
 Host nhận được tín hiệu.
 Điều khiển thiết bị
ENUMERATION
Khi cắm thiết bị vào:
 Thiết bị ở trạng thái POWERED
 Hub phát hiện thiết bị
ENUMERATION
Host nhận tín hiệu:
 Hub gởi báo cáo sự kiện
 Hub xác định thiết bị là Low/Full Speed.
 Hub reset thiết bị về trạng thái DEFAULT
ENUMERATION
●
Điều khiển thiết bị (tiếp theo)
 Host yêu cầu thông tin mô tả và reset
 Host gán địa chỉ cho thiết bị. Thiết bị ở trạng thái
ADDRESS
 Gởi yêu cầu thông tin về những mô tả khác.
ENUMERATION
●
Điều khiển thiết bị (tiếp theo)
 Lựa chọn và cài đặt Driver
 Lựa chọn và cài đặt cấu hình.
ENUMERATION
DESCRIPTORS:
 Device Descriptor
 Configuration Descriptor
 Interface Descriptor
 Endpoint Descriptor
ENUMERATION
Device Decriptor:
ENUMERATION
Configuration Decriptor:
ENUMERATION
Interface Decriptor:
ENUMERATION
Endpoint Decriptor:
ENUMERATION
How the Host communicates
Device Drivers
 A device driver là một phần mềm trung gian mà qua đó cho
phép các ứng dụng của máy tính truy xuất hoặc điều khiển các
thiết bị phần cứng (printer, modem, keyboard, video display,
…).
 Hầu hết các thiết bị USB là những thiết bị gắn ngoài, được kết
nối với máy tính thông qua cáp(hoặc wireless . Tuy nhiên, cũng
có một số thiết bị gắn cứng với CPU, ví dụ : fingerprint
scanners, …
The Layered Driver Model
 USB truyền thông bên dưới nền Windows, sử dụng mô hình
chia lớp driver, driver được sắp xếp theo một mô hình dạng
chuỗi, hay dạng ngăn xếp (stack) để phục vụ cho quá trình
truyền thông.
 Lớp trên cùng của stack là một client driver, mà hệ điều hành
đã gán với các thiết bị.
 Các ứng dụng truy xuất với các thiết bị USB bằng cách giao
tiếp với client driver.
 The client driver truy xuất đến các lớp bên dưới để truy xuất
đến các thiết bị.
User and Kernel Modes
 Còn bên dưới Windows, code chương trình chạy 1 trong 2 chế
độ là user mode hoặc kernel mode.
 Mỗi chế độ cho phép các mức ưu tiên khác nhau để truy xuất
đến memory hoặc các tài nguyên khác của hệ thống.
User and Kernel Modes
Applications
 The Windows API
 Các ứng dụng thường được
viết bằng Visual Basic, C,
Delphi, hoặc các ngôn ngữ
khác, chúng có thể truy xuất
nhiều thiết bị bằng cách gọi
hàm của Windows API.
 Using .NET’s Classes
 Để đơn giản hơn và an toàn
hơn trong lập trình,
Microsoft’s .NET Framework
cung cấp các lớp để tiện
trong việc gọi hàm API khi
viết code.
User-mode Client Drivers
 User-mode client driver có thể định
nghĩa là một driver API đặc biệt mà ứng
dụng có thể sử dụng nó để truy xuất
đến các thiết bị.
 The driver là một thư viện liên kết động
(dynamic link library (DLL)). An
example of a user-mode USB driver is
winusb.dll, hid.dll, …
 User-mode driver là thành phần trung
gian chuyển đổi các hàm driver đã
được định nghĩa và Windows API. Ví dụ
: khi ứng dụng gọi hàm
Hid_GetFeature, thì user-mode HID
driver gọi hàm DeviceIoControl, và
kernel-mode HID driver yêu cầu báo
cáo HID Feature từ thiết bị.
Kernel-mode Client Drivers
 Kernel-mode client driver quản
lí quá trình truyền thông giữa
user-mode và các mức driver
USB thấp hơn bên dưới.
 Các driver này có dạng đuôi
mở rộng .sys. Ví dụ : kernel-
mode client drivers là
winusb.sys (WinUSB) và
hidclass.sys (HID).
 A client driver or miniclass
driver có thể có một hay nhiều
driver lọc (filter driver) bên
trên hoặc bên dưới, các driver
lọc chính hoặc modify quá
trình truyền thông với thiết bị.
Kernel-mode Client Drivers
Bus and Host-controller
Drivers
 Host-Controller Types :
 USB 1.x or USB 2.0 host sử dụng các controller theo chuẩn
Open Host Controller Interface (OHCI) hoặc Universal Host
Controller Interface (UHCI).
 USB 2.0 high-speed host sử dụng host controller theo
chuẩn Enhanced Host Controller Interface (EHCI).
 USB 3.0 hosts sử dụng Extensible Host Controller Interface
(xHCI) controller cho tất cả các loại tốc độ.
Bus and Host-controller
Drivers
 Sự khác nhau giữa OHCI và UHCI :
 OHCI và UHCI controllers đều cung cấp nhiều cách phục vụ
cho tốc độ thấp và cao hay full-speed USB hardware để giao
tiếp với các mức driver cao hơn.
 Nhưng cũng có nhiều điểm khác nhau:
UHCI đặt nặng lên quá
trình truyền thông ở phần
mềm, vì vậy có thể sử
dụng đơn giản hơn và
phần cứng rẻ hơn.
UHCI được phát triển bởi
Intel
OHCI đặt nặng lên phần
cứng và phần mềm điều
khiển sẽ đơn giản hơn.
OHCI được phát triển bởi
Compaq, Microsoft, and
National Semiconductor
Matching a Driver to a Device
 Using Device Manager
Matching a Driver to a Device
 Device Information in the Registry
The hardware Key
 Lưu trữ thông tin của các thiết bị đặc biệt.
The Class Key
 The class key lưu trữ các thông tin về các lớp thiết bị đã được
cài đặt.
The driver Key
 Bên dưới class key, mỗi thiết bị trong class sẽ có 1 driver, còn
được gọi là software key. Bên trong một hardware key của
một thiết bị cố định, the Driver ghi tên của thiết bị vào GUID và
matches vào class key và instance number của thiết bị được
matches vào driver subkey bên dưới class key.
The Service Key
 A service key lưu trữ thông tin về các driver’s files, bao gồm
nơi chúng ở đây và load chúng lên như thế nào. Service keys
nằm ở đường dẫn sau:
 HKEY_LOCAL_MACHINESystemCurrentControlSetServices
 Service keys tồn tại trong host controller type, hubs, classes
chẳng hạn như storage (USBSTOR) và printers (USBPRINT), và
HID functions (HidBatt, HidServ, HidUsb).
INF Files
 A device-setup information file, or INF file, là một file text chứa
các thông tin của một hay nhiều thiết bị trong device setup
class.
 Windows includes INF files for the drivers provided with the
operating system. Những files này nằm trong thư mục %windir
%inf Hệ điều hành copy các INF files để user add thiết bị này
vào thư mục trên.
 Lần đầu tiên khi hết nối, sau khi nhận được mô tả từ USB
device, Windows tìm kiếm nhằm match thông tin trong các
descriptors với thông tin trong hệ thống INF files.
Human interface devices
Device Classes
Các thiết bị có chức năng
giống nhau được gom
thành từng chuẩn
 Phát triển 1 driver cho
nhiều thiết bị
 Các driver cho từng
chuẩn được tích hợp
sẵn trong windows
ENUMERATION
HID: Human Interface Devices
• Chuẩn thiết bị giúp con người giao tiếp với máy tinh
• Một trong những chuẩn USB đầu tiên được hỗ trợ
trong windows
• Mouse, keyboard, gamepad, joystick, remote
control… là những thiết bị HID
• Host và các thiết bị giao tiếp bằng gói tin report
ENUMERATION
Descriptors
• Chứa thông tin, thông số cấu hình của thiết bị
• Được lưu trong bộ nhớ của thiết bị, cung cấp cho host
khi được yêu cầu
• Host gửi tín hiệu “get descriptor request” để lấy thông
tin của thiết bị
• Descriptor: configuration, interface,
class,endpoint
ENUMERATION
HID interface
Các thiết bị HID có thể giao tiếp máy tính mà không cần
driver trong windows!!!
 thiết bị có Boot interface
Ứng dụng khi giao tiếp trong môi trường DOS, BIOS
Các protocol đơn giản được BIOS cấp từ bộ nhớ ROM
 Descriptor bInterfaceclass = 03h: xác định
interface chuẩn HID
 Descriptor bInterfaceSubclass = 01h: có hỗ trợ
Boot interface
ENUMERATION
Report Descriptor
ENUMERATION
HID specific Request
ENUMERATION
The Global item Type
ENUMERATION

Weitere ähnliche Inhalte

Was ist angesagt?

ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...nataliej4
 
Cong nghe vi mach dien tu
Cong nghe vi mach dien tuCong nghe vi mach dien tu
Cong nghe vi mach dien tutiểu minh
 
Ask fsk-psk-qpsk-qam-modulation-demolation
Ask fsk-psk-qpsk-qam-modulation-demolationAsk fsk-psk-qpsk-qam-modulation-demolation
Ask fsk-psk-qpsk-qam-modulation-demolationLuân Thiên
 
Giáo trình mạng máy tính
Giáo trình mạng máy tínhGiáo trình mạng máy tính
Giáo trình mạng máy tínhHoài Phạm
 
Tieu Luan - Mang may tinh voi Packet tracer
Tieu Luan - Mang may tinh voi Packet tracerTieu Luan - Mang may tinh voi Packet tracer
Tieu Luan - Mang may tinh voi Packet tracerDuc Nguyen
 
Tài liệu thiết kế mạch in altium
Tài liệu thiết kế mạch in altiumTài liệu thiết kế mạch in altium
Tài liệu thiết kế mạch in altiumNgai Hoang Van
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu sốHao Truong
 
Bai03 he thong tap tin fat
Bai03   he thong tap tin fatBai03   he thong tap tin fat
Bai03 he thong tap tin fatVũ Sang
 
xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2Ngai Hoang Van
 
Công thức Vật lý đại cương II
Công thức Vật lý đại cương IICông thức Vật lý đại cương II
Công thức Vật lý đại cương IIVũ Lâm
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tinakprovip
 
Truyen song-va-anten
Truyen song-va-antenTruyen song-va-anten
Truyen song-va-antenĐỗ Kiệt
 
Công thức Máy điện 1 - Chương 3 - Máy điện một chiều
Công thức Máy điện 1 - Chương 3 - Máy điện một chiềuCông thức Máy điện 1 - Chương 3 - Máy điện một chiều
Công thức Máy điện 1 - Chương 3 - Máy điện một chiềuMan_Ebook
 

Was ist angesagt? (20)

ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
ĐỀ TÀI : ĐIỂM DANH BẰNG NHẬN DIỆN KHUÔN MẶT. Giảng viên : PGS.TS. HUỲNH CÔNG ...
 
Truyen du lieu, Haming, CRC,...
Truyen du lieu, Haming, CRC,...Truyen du lieu, Haming, CRC,...
Truyen du lieu, Haming, CRC,...
 
Cong nghe vi mach dien tu
Cong nghe vi mach dien tuCong nghe vi mach dien tu
Cong nghe vi mach dien tu
 
Thiết kế mạng cảm biến không dây cho giám sát sức khỏe, HAY
Thiết kế mạng cảm biến không dây cho giám sát sức khỏe, HAYThiết kế mạng cảm biến không dây cho giám sát sức khỏe, HAY
Thiết kế mạng cảm biến không dây cho giám sát sức khỏe, HAY
 
Co ban ve msp430
Co ban ve msp430Co ban ve msp430
Co ban ve msp430
 
Ask fsk-psk-qpsk-qam-modulation-demolation
Ask fsk-psk-qpsk-qam-modulation-demolationAsk fsk-psk-qpsk-qam-modulation-demolation
Ask fsk-psk-qpsk-qam-modulation-demolation
 
Điều khiển thiết bị điện tử bằng Android thông qua Bluetooth, 9đ
Điều khiển thiết bị điện tử bằng Android thông qua Bluetooth, 9đĐiều khiển thiết bị điện tử bằng Android thông qua Bluetooth, 9đ
Điều khiển thiết bị điện tử bằng Android thông qua Bluetooth, 9đ
 
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAYĐề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
Đề tài: Thiết bị cảnh báo khí gas & phòng chống cháy nổ, HAY
 
Giáo trình mạng máy tính
Giáo trình mạng máy tínhGiáo trình mạng máy tính
Giáo trình mạng máy tính
 
Tieu Luan - Mang may tinh voi Packet tracer
Tieu Luan - Mang may tinh voi Packet tracerTieu Luan - Mang may tinh voi Packet tracer
Tieu Luan - Mang may tinh voi Packet tracer
 
Tài liệu thiết kế mạch in altium
Tài liệu thiết kế mạch in altiumTài liệu thiết kế mạch in altium
Tài liệu thiết kế mạch in altium
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu số
 
Bai03 he thong tap tin fat
Bai03   he thong tap tin fatBai03   he thong tap tin fat
Bai03 he thong tap tin fat
 
xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2
 
Tichchap
TichchapTichchap
Tichchap
 
Công thức Vật lý đại cương II
Công thức Vật lý đại cương IICông thức Vật lý đại cương II
Công thức Vật lý đại cương II
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tin
 
Truyen song-va-anten
Truyen song-va-antenTruyen song-va-anten
Truyen song-va-anten
 
Slide mang may tinh
Slide mang may tinhSlide mang may tinh
Slide mang may tinh
 
Công thức Máy điện 1 - Chương 3 - Máy điện một chiều
Công thức Máy điện 1 - Chương 3 - Máy điện một chiềuCông thức Máy điện 1 - Chương 3 - Máy điện một chiều
Công thức Máy điện 1 - Chương 3 - Máy điện một chiều
 

Andere mochten auch

Hid usb pic18 f4550
Hid usb pic18 f4550Hid usb pic18 f4550
Hid usb pic18 f4550thanhk33
 
Ky thuat-truyen-so-lieu
Ky thuat-truyen-so-lieuKy thuat-truyen-so-lieu
Ky thuat-truyen-so-lieuNguyen Vong
 
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.a
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.aHướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.a
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.aNguoiTamky
 
Hdg hoa hoc 12
Hdg hoa hoc 12Hdg hoa hoc 12
Hdg hoa hoc 1266771508
 
Giao an hinh 12 nc
Giao an hinh 12 ncGiao an hinh 12 nc
Giao an hinh 12 ncThang Huynh
 
Ngưng hô hấp tuần hoàn
Ngưng hô hấp tuần hoànNgưng hô hấp tuần hoàn
Ngưng hô hấp tuần hoàndrkhanh196
 
Amino axit chuyen de bai tap hoa 12
Amino axit  chuyen de bai tap hoa 12Amino axit  chuyen de bai tap hoa 12
Amino axit chuyen de bai tap hoa 12viettrongnhan
 
Cách học tiếng anh thần kỳ
Cách học tiếng anh thần kỳCách học tiếng anh thần kỳ
Cách học tiếng anh thần kỳDuc Le Gia
 
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895Kỳ Quang
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Vũ Anh
 
Bai 9 he thong tien te
Bai 9  he thong tien teBai 9  he thong tien te
Bai 9 he thong tien tetuyenngon95
 
Bai giang-vhdl
Bai giang-vhdlBai giang-vhdl
Bai giang-vhdlhoangclick
 
Các nguyên tố nhóm ib
Các nguyên tố nhóm ibCác nguyên tố nhóm ib
Các nguyên tố nhóm ibMưa Hè
 
Tìm hiểu về giao thức mạng tcp ip
Tìm hiểu về giao thức mạng tcp ipTìm hiểu về giao thức mạng tcp ip
Tìm hiểu về giao thức mạng tcp ipleduyk11
 
Mô hình MVC trong lập trình web với Java
Mô hình MVC trong lập trình web với JavaMô hình MVC trong lập trình web với Java
Mô hình MVC trong lập trình web với JavaHuy Vũ
 
admin magento user guide
admin magento user guideadmin magento user guide
admin magento user guidedvms
 
Kiểm tra 1 tiết vật lý 8 hkii
Kiểm tra 1 tiết vật lý 8 hkiiKiểm tra 1 tiết vật lý 8 hkii
Kiểm tra 1 tiết vật lý 8 hkiidktranmax
 

Andere mochten auch (20)

Cong vao ra lpt
Cong vao ra lptCong vao ra lpt
Cong vao ra lpt
 
Hid usb pic18 f4550
Hid usb pic18 f4550Hid usb pic18 f4550
Hid usb pic18 f4550
 
Ky thuat-truyen-so-lieu
Ky thuat-truyen-so-lieuKy thuat-truyen-so-lieu
Ky thuat-truyen-so-lieu
 
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.a
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.aHướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.a
Hướng dẫn sử dụng kawaks (giả lập game thùng) « bùi thành nhân a.k.a
 
Hdg hoa hoc 12
Hdg hoa hoc 12Hdg hoa hoc 12
Hdg hoa hoc 12
 
Dang 3
Dang 3Dang 3
Dang 3
 
Giao an hinh 12 nc
Giao an hinh 12 ncGiao an hinh 12 nc
Giao an hinh 12 nc
 
Ngưng hô hấp tuần hoàn
Ngưng hô hấp tuần hoànNgưng hô hấp tuần hoàn
Ngưng hô hấp tuần hoàn
 
Amino axit chuyen de bai tap hoa 12
Amino axit  chuyen de bai tap hoa 12Amino axit  chuyen de bai tap hoa 12
Amino axit chuyen de bai tap hoa 12
 
Cách học tiếng anh thần kỳ
Cách học tiếng anh thần kỳCách học tiếng anh thần kỳ
Cách học tiếng anh thần kỳ
 
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895
Chuong 1dao-dong-co.thuvienvatly.com.8099f.37895
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520
 
Bai 9 he thong tien te
Bai 9  he thong tien teBai 9  he thong tien te
Bai 9 he thong tien te
 
Bai giang-vhdl
Bai giang-vhdlBai giang-vhdl
Bai giang-vhdl
 
Các nguyên tố nhóm ib
Các nguyên tố nhóm ibCác nguyên tố nhóm ib
Các nguyên tố nhóm ib
 
Tìm hiểu về giao thức mạng tcp ip
Tìm hiểu về giao thức mạng tcp ipTìm hiểu về giao thức mạng tcp ip
Tìm hiểu về giao thức mạng tcp ip
 
Mô hình MVC trong lập trình web với Java
Mô hình MVC trong lập trình web với JavaMô hình MVC trong lập trình web với Java
Mô hình MVC trong lập trình web với Java
 
admin magento user guide
admin magento user guideadmin magento user guide
admin magento user guide
 
Kiểm tra 1 tiết vật lý 8 hkii
Kiểm tra 1 tiết vật lý 8 hkiiKiểm tra 1 tiết vật lý 8 hkii
Kiểm tra 1 tiết vật lý 8 hkii
 
giao trinh xac suat thong ke
giao trinh xac suat thong kegiao trinh xac suat thong ke
giao trinh xac suat thong ke
 

Ähnlich wie Tìm Hiểu Giao Tiếp USB (Universal Serial Bus)

Phân tích mã nguồn driver usb mouse
Phân tích mã nguồn driver usb mousePhân tích mã nguồn driver usb mouse
Phân tích mã nguồn driver usb mouseThanh Cứng
 
cấu trúc máy tính Chuong7
cấu trúc máy tính Chuong7cấu trúc máy tính Chuong7
cấu trúc máy tính Chuong7Thay Đổi
 
Bao cao tom tat nckh2015
Bao cao tom tat nckh2015Bao cao tom tat nckh2015
Bao cao tom tat nckh2015New Way
 
Tài liệu profibus
Tài liệu profibusTài liệu profibus
Tài liệu profibusVu Phong
 
Tài liệu profibus
Tài liệu profibusTài liệu profibus
Tài liệu profibusVu Phong
 
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfHd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfhienlv
 
Thiết bị đầu cuối công nghệ wimax
Thiết bị đầu cuối công nghệ wimaxThiết bị đầu cuối công nghệ wimax
Thiết bị đầu cuối công nghệ wimaxTrong Tran
 
Các thuật ngữ viết tắt trong tin học
Các thuật ngữ viết tắt trong tin họcCác thuật ngữ viết tắt trong tin học
Các thuật ngữ viết tắt trong tin họcRosie2505
 
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdf
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdfBài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdf
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdfVnhPhm18
 
1. MMT_Ch1.pdf
1. MMT_Ch1.pdf1. MMT_Ch1.pdf
1. MMT_Ch1.pdfcVit76
 
OpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseOpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseHoàng Tuấn Lê
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịXuân Thủy Nguyễn
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bịXuân Thủy Nguyễn
 

Ähnlich wie Tìm Hiểu Giao Tiếp USB (Universal Serial Bus) (20)

Phân tích mã nguồn driver usb mouse
Phân tích mã nguồn driver usb mousePhân tích mã nguồn driver usb mouse
Phân tích mã nguồn driver usb mouse
 
cấu trúc máy tính Chuong7
cấu trúc máy tính Chuong7cấu trúc máy tính Chuong7
cấu trúc máy tính Chuong7
 
Ch04
Ch04Ch04
Ch04
 
Bao cao tom tat nckh2015
Bao cao tom tat nckh2015Bao cao tom tat nckh2015
Bao cao tom tat nckh2015
 
Tài liệu profibus
Tài liệu profibusTài liệu profibus
Tài liệu profibus
 
Tài liệu profibus
Tài liệu profibusTài liệu profibus
Tài liệu profibus
 
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbfHd nhanh cau hinh ip 20 g-1+0_itc-mbf
Hd nhanh cau hinh ip 20 g-1+0_itc-mbf
 
Mạnh (1)
Mạnh (1)Mạnh (1)
Mạnh (1)
 
Thiết bị đầu cuối công nghệ wimax
Thiết bị đầu cuối công nghệ wimaxThiết bị đầu cuối công nghệ wimax
Thiết bị đầu cuối công nghệ wimax
 
Các thuật ngữ viết tắt trong tin học
Các thuật ngữ viết tắt trong tin họcCác thuật ngữ viết tắt trong tin học
Các thuật ngữ viết tắt trong tin học
 
Cau truc may tinh
Cau truc may tinhCau truc may tinh
Cau truc may tinh
 
Ch02
Ch02Ch02
Ch02
 
Mạng máy tính
Mạng máy tínhMạng máy tính
Mạng máy tính
 
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdf
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdfBài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdf
Bài 1 ĐO LƯỜNG VÀ ĐIỀU KHIỂN VỚI ARDUINO V2.pdf
 
1. MMT_Ch1.pdf
1. MMT_Ch1.pdf1. MMT_Ch1.pdf
1. MMT_Ch1.pdf
 
Tim hieu PoE co ban
Tim hieu PoE co banTim hieu PoE co ban
Tim hieu PoE co ban
 
Hub switch-router
Hub switch-routerHub switch-router
Hub switch-router
 
OpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseOpenWIPS-ng report Vietnamese
OpenWIPS-ng report Vietnamese
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 3 cấu hình thiết bị
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bịLập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bị
Lập trình PLC S7 1200 tiếng Việt-Chuong 1 tổng quan thiết bị
 

Kürzlich hochgeladen

Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietNguyễn Quang Huy
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfXem Số Mệnh
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạowindcances
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...Nguyen Thanh Tu Collection
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdfltbdieu
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfNguyen Thanh Tu Collection
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docxasdnguyendinhdang
 
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...Nguyen Thanh Tu Collection
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhdangdinhkien2k4
 
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàBài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàNguyen Thi Trang Nhung
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emTrangNhung96
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngYhoccongdong.com
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...Nguyen Thanh Tu Collection
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfXem Số Mệnh
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...ChuThNgnFEFPLHN
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...Nguyen Thanh Tu Collection
 
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiNgocNguyen591215
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptPhamThiThuThuy1
 

Kürzlich hochgeladen (20)

Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net Viet
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
 
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
 
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàBài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ em
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
 
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.ppt
 

Tìm Hiểu Giao Tiếp USB (Universal Serial Bus)

  • 1. Tìm hiểu giao tiếp USB Bài giảng sử dụng tài liệu của sinh viên khóa trước
  • 4. • USB là một chuẩn kết nối của máy tính. • Ra đời năm 1996 (1.0) • Là kết quả của sự hợp tác giữa 7 công ty hàng đầu thế giới Compaq, Digital Equipment Corporation, IBM, Intel, Microsoft, NEC, Northern Telecom Introduction
  • 6. Tốc độ trên lý thuyết : • USB 1.0: 1,5 Mbps (low speed) • USB 1.1: 12 Mbps (full speed) • USB 2.0: 480 Mbps (high speed) • USB 3.0: 4,8 Gbps (super speed) Introduction
  • 9. Tự cấu hình: tự load driver khi kết nối thiết bị ngoại vi với PC – không cần reset máy sau khi cài driver – Insert driver disk First time Next time Plug & Play Introduction Ưu điểm:
  • 10. • Dễ kết nối các thiết bị vào cổng USB • Đa số máy tính hiện nay có nhiều cổng USB, ngoài ra còn có các loại HUB USB. ● ● USB mở rộng tới 127 thiết bị có thể kết nối cùng vào một máy tính trên một cổng USB duy nhất (bao gồm các hub USB) Introduction Ưu điểm:
  • 11. •Bên cạnh đó, USB tiện lợi hơn các đầu cắm khác do kích thước nhỏ, có thể tháo và cắm nóng thiết bị mà không hề tổn hại đến PC •USB cũng hỗ trợ kết nối không dây giữa PC và thiết bị •Với HUB, khoảng cách dây giữa PC và device có thể lên tới 30m •Không cần thiết lập cài đặt cao cho thiết bị (port address…) VS Introduction
  • 12. $$$$$$$$$$ • Multiple speeds: • SuperSpeed (USB 3.0) 5 Gbps • High speed: 480 Mbps (USB 2.0) • Full speed: 12 Mbps, low speed: 1.5 Mbps (USB 1.x). • Cho phép chọn tốc độ phù hợp với ứng dụng. • Độ an toàn: cả phần cứng và giao thức sử dụng cho USB đều thề hiện sự an toàn cho dữ liệu: có khả năng khử nhiễu, phát hiện và sửa lỗi khi chuyển dữ liệu. • Không tốn kém: thực tế cho thấy các thiết bị với giao tiếp USB ngày nay có giá thành ngày càng rẻ. • Tiết kiệm năng lượng, công suất tiêu thụ thấp… Introduction Ưu điểm:
  • 13. Hạn chế: • Giới hạn về khoảng cách (< 5m without hub) • Không hỗ trợ kết nối peer to peer (do USB yêu cầu phải có PC – host controller hardware và device controller hardware) và broadcasting • Không tương thích với phần cứng và hệ điều hành cũ (không có port USB hoặc ko hỗ trợ driver) Introduction
  • 16. USB 1.x/2.0 standard pinout Pin Name Cable color Description 1 VBUS Red +5 V 2 D− White Data − 3 D+ Green Data + 4 GND Black Ground Mechanical The Electronic and Mechanical Interface
  • 17. USB 1.x/2.0 standard pinout Mechanical The Electronic and Mechanical Interface
  • 18. USB 1.x/2.0 Mini/Micro pinout Pin Nam e Cable color Description 1 VBU S Red +5 V 2 D− White Data − 3 D+ Green Data + 4 ID None Permits distinction of A plug from B plug * A plug: connected to Signal ground * B plug: not connected 5 GND Black Signal ground The Electronic and Mechanical Interface Mechanical
  • 19. Mini USB Mini-AB Mini-B Mini-A Mechanical The Electronic and Mechanical Interface
  • 20. Micro USB Micro B Mechanical The Electronic and Mechanical Interface
  • 21. • Cổng Micro-USB được thiết kế để chịu được tối đa 10000 lần rút ra cắm vào • USB chuẩn chỉ được thiết kế cho 1500 lần và Mini-USB cũng chỉ được thiết kế tối đa 5000 lần rút ra cắm vào Mechanical Micro USB The Electronic and Mechanical Interface
  • 22. eSATAp (eSATA/USB) combo port Mechanical The Electronic and Mechanical Interface
  • 23. Pi n Color Signal name ('A' connector) Signal name ('B' connector) 1 Red VBUS 2 White D− 3 Green D+ 4 Black GND 5 Blue StdA_SSR X− StdA_SST X− 6 Yellow StdA_SSR X+ StdA_SST X+ 7 Shield GND_DRAIN 8 Purpl e StdA_SST X− StdA_SSR X− USB 3.0 pinouts Mechanical The Electronic and Mechanical Interface
  • 24. Cấu tạo chuẩn A USB 3.0
  • 25. Cấu tạo chuẩn B USB 3.0 Standard B Micro B
  • 26. Electrical The Electronic and Mechanical Interface
  • 27. Full speed device Low speed device Low speed và full speed The Electronic and Mechanical Interface
  • 28. Low speed và full speed Mức logic của tín hiệu phụ thuộc vào tốc độ. Vì thế người ta dùng ký hiệu J và K để chỉ mức logic Low speed: J = 0; K = 1 High speed: J = 1; K = 0 The Electronic and Mechanical Interface
  • 29. Low/full-speed signaling levels The Electronic and Mechanical Interface
  • 30. Low/full-speed signaling levels The Electronic and Mechanical Interface
  • 31. Electrical The Electronic and Mechanical Interface
  • 32. Electrical The Electronic and Mechanical Interface
  • 33. High speed Tốc độ 480MHz được chọn vì  Phù hợp với công nghệ vào thời điểm đó  có thể sử dụng các cổng và cáp cũ  Đặc biệt 480 là bội số của 12 nên có thể sử dụng chung thạch anh cho các chế độ  Giá thành rẻ Thiết bị high speed sẽ kết nối bằng full speed sau đó reset và test nếu hub hỗ trợ kết nối 2.0 sẽ khởi tạo kết nối  Khi hoạt động ở high speed điện trở pull up sẽ được tắt để cân bằng đường dây  Thiết bị tương thích USB 2.0 không nhất thiết phải hỗ trợ high speed  Thiết bị dùng high speed không đc hỗ trợ chế độ low speed. Nó chỉ được hỗ trợ full speed để kết nối lúc đầu, sau đó chuyển qua high speed Thiết bị downstream tương thích USB 2.0 (Hub/Host) phải hỗ trợ cả 3 chế độ high speed, full speed và low speed The Electronic and Mechanical Interface
  • 34. High speed The Electronic and Mechanical Interface
  • 35. High speed The Electronic and Mechanical Interface
  • 36. Transfer Basic Elements of a Transfer USB 2.0 Transaction Ensuring successful Transfer Inside USB transfer
  • 37. - Quyết định được loại transfer nào một device nên dùng - Viết firmware cho device - Nhận biết được các lỗi xảy ra trong khi truyền thông Inside a USB transfer M c tiêu:ụ
  • 38. • Mọi phiên truyền thông USB đều diễn ra với một bên là Host và một bên là Device. • Host quản lý việc truyền thông trên Bus và Device đáp ứng yêu cầu từ Host HOST DEVICE Inside a USB transfer Transfer Basics
  • 39. Endpoint: Endpoint có: • Mã số • Hướng • Dung lượng tối đa có thể gửi hay nhận HOST DEVICE Inside a USB transfer Transfer Basics
  • 40. Transaction: HOST DEVICE 1 : Token 2 : Data 3 : Handshake Inside a USB transfer Transfer Basics
  • 42. Transfer Transaction Transaction Transaction Token Data Handshake Summary Inside a USB transfer Transfer Basics
  • 43. Inside a USB transfer Transfer Basics Thực tiễn: nhiều thiết bị dùng chuẩn USB  nhu cầu khác nhau  đòi hỏi hỗ trợ những kiểu transfer khác nhau Có 4 loại transfer: • Control: Nhận dạng và cấu hình • Bulk: Printer, scanner • Interrupt: Chuột, bàn phím • Isochronous: Audio và Video streaming
  • 44. Inside a USB transfer Transfer Basics Truyền thông USB gồm 2 giai đoạn:  Nhận dạng và cấu hình thiết bị (Enumeration)  Truyền thông (tuỳ mục đích) Chuẩn USB 2.0 hỗ trợ truyền thông:  Low Speed: 1.5Mbps  Full Speed: 12 Mbps  High Speed: 480 Mbps
  • 45. Inside a USB transfer Transfer Basics  USB 2.0 Host Controller chia thông tin thành những Frame với:  Low và Full Speed: frame 1ms  High Speed: microframe 125 us  Chúng ta có thể xem từng frame như là “bus interval”  Những transactions trong một transfer có thể nằm gọn trong 1 (micro) frame hay nhiều (micro) frame.
  • 46. Inside a USB transfer Elements of Transfer • Endpoints : • Tất cả dữ liệu chạy trên Bus đều đến hoặc đi từ device endpoints. Endpoint là một buffer lưu trữ nhiều bytes. Dữ liệu lưu trên endpoint là dữ liệu nhận được (từ host) hay là dữ liệu sắp truyền (đến host). • Địa chỉ endpoint gồm mã số endpoint (từ 0-15) và hướng (theo quan điểm của host). • Endpoint được cấu hình cho control transfer phải truyền dữ liệu từ 2 hướng, và mỗi device phải có endpoint 0 được cấu hình cho control endpoints
  • 47. Những loại Transaction: + Ở mọi USB 2.0 transaction, ban đầu host sẽ gửi một “addressing – tripple” bao gồm: địa chỉ thiết bị, mã số endpoint và hướng endpoint. + Khi nhận 1 gói tin OUT hay setup, endpoint sẽ lưu data theo sau gói tin đó, sau đó device hardware sẽ sinh ra ngắt. Tương tự khi gửi gói tin IN. Inside a USB transfer Elements of Transfer
  • 48. Inside a USB transfer Elements of Transfer • Pipes : • Trước khi data được truyền đi, giữa host và device phải thiết lập một pipe. Host thiết lập pipe ở quá trình enumeration. Host có thể yêu cầu thêm hoặc bớt pipes dùng control transfer. • Nhắc lại: Mọi thiết bị có một control pipe mặc định dùng endpoint 0. • Thông tin cấu hình host nhận từ device bao gồm một endpoint descriptor cho mỗi endpoint mà device muốn dùng. Mỗi endpoint chứa đựng: địa chỉ endpoint, loại transfer mà endpoint hỗ trợ, kích thước tối đa gói dữ liệu, đôi khi có cả transfer interval.
  • 49. Inside a USB transfer USB 2.0 Transaction
  • 50. Inside a USB transfer USB 2.0 Transaction
  • 51. Inside a USB transfer USB 2.0 Transaction Mỗi transaction thường có 3 phase: token, data, handshake. Mỗi packet bắt đầu với một Packet ID (PID) chứa đựng thông tin nhận dạng.
  • 52. Inside a USB transfer USB 2.0 Transaction
  • 53. Inside a USB transfer Ensuring Successful Transfers • USB 2.0 định nghĩa những mã handshake chỉ thị: • Việc chấp nhận hay không của dữ liệu được nhận. • Hỗ trợ hay không hỗ trợ một yêu cầu điều khiển nào đó. • Tình trạng HALT của endpoint. • Trong control transfer, status stage báo thành công hay thất bại của một transfer. • Các mã status được định nghĩa: ACK, NAK, STALL, NYET và ERR. Việc thiếu vắng mã handshake nào ở trên báo hiểu có lỗi.
  • 54. Inside a USB transfer Ensuring Successful Transfers • ACK (acknowledge): chỉ thị rằng host hay device đã nhận data mà không có lỗi. • NAK (negative acknowledge): device đang bận hoặc device không có data để trả về. • STALL: một yêu cầu điều khiển không hỗ trợ, yêu cầu điều khiển thất bại, hay endpoint có lỗi. • NYET (not yet): Device có sẵn sàng để nhận data hay chưa. • No response
  • 56. USB Host/Device view USB cung cấp dịch vụ truyền thông giữa host và USB device Truyền thông USB được biểu diễn theo cấu trúc phân tầng cho phép những người triển khai sản phẩm USB tập trung vào những chi tiết liên quan đến sản phẩm của họ USB data flow model
  • 57. USB Host/Device view USB data flow model
  • 58. USB Host/Device view Host USB host tương tác với USB device trong quá trình truyền thông và có trách nhiệm: • Phát hiện khi có 1 USB device được cắm vào hay rút ra • Quản lý control flow giữa host và USB devices • Quản lý data flow giữa host và USB devices • Cung cấp năng lượng cho USB devices USB data flow model
  • 59. USB Host/Device view Physical devices • USB physical devices cung cấp thêm chức năng cho host. Chức năng của USB device rất đa dạng (mouse, keyboard, printer,…) • Mỗi USB device mang theo thông tin liên quan tới việc cấu hình và báo cáo thông tin này cho host nhằm hỗ trợ host trong việc xác định và cấu hình USB device USB data flow model
  • 60. USB Host/Device view USB data flow model
  • 61. USB Host/Device view Function Layer Function layer cung cấp thêm chức năng tới host thông qua một client software thích hợp USB data flow model
  • 62. USB Host/Device view USB Device Layer The USB Device layer có trách nhiệm thực hiện những hoạt động tiêu chuẩn/chung của một kết nối USB USB data flow model
  • 63. USB Host/Device view USB Bus Interface Layer USB Bus Interface layer cung cấp kết nối vật lý/tín hiệu/gói tin giữa host và devices USB data flow model
  • 64. Detailed USB Host/Device view USB data flow model
  • 65. Detailed USB Host/Device view Client Software • Phần mềm thực thi trên host, tương ứng với một USB device nhất định. • Thường được cung cấp kèm theo với hệ điều hành hoặc được cung cấp kèm theo USB device USB data flow model
  • 66. Detailed USB Host/Device view USB system software • Phần mềm hỗ trợ USB trong một hệ điều hành nhất định, thường được cung cấp chung với hệ điều hành. • Gồm 2 phần chủ yếu là Host Controller Driver và USB Driver USB data flow model
  • 67. Detailed USB Host/Device view USB system software (tt) • USB Driver (USBD): Phần giao tiếp giữa USB System Software và client software. Nó cung cấp cho client software các functions để thao tác trên USB devices. • Host Controller Driver (HCD): Phần mềm giao tiếp giữa USB Host Controller và USB System Software. Nhà sản xuất USB Host Controller sẽ cung cấp HCD kèm theo USB data flow model
  • 68. Detailed USB Host/Device view Host Controller: Tổ chức và đóng gói dữ liệu, truyền gói tin đi trên USB USB data flow model
  • 69. Detailed USB Host/Device view SIE (Serial Interface Engine) • Việc truyền tải dữ liệu qua USB được thực hiện theo kiểu nối tiếp. • SIE xử lí việc chuyển đổi từ giao tiếp nối tiếp sang các giao tiếp khác và ngược lại. • Trên host, SIE thường được thực hiện như là một phần của Host Controller USB data flow model
  • 70. Detailed USB Host/Device view Endpoint • Endpoint là một buffer dùng để lưu trữ dữ liệu. • Dữ liệu tại endpoint có thể là dữ liệu vừa nhận được hoặc dữ liệu chờ để chuyển đi USB data flow model
  • 71. Detailed USB Host/Device view Endpoint zero • Endpoint zero là một endpoint đặc biệt. Tất cả các thiết bị đều phải có endpoint zero. • Endpoint này sẽ nhận tất cả thông tin điều khiển và các yêu cầu trạng thái từ USB System Software thông qua Default Pipe USB data flow model
  • 72. Detailed USB Host/Device view Default Pipe to Endpoint Zero • USB System Software quản lý thiết bị dùng Default Pipe • USB System Software sẽ gửi thông tin điều khiển và thông tin trạng thái giữa host và USB devices thông qua Default Pipe • Quá trình enumeration (quá trình xảy ra khi gắn USB device vào host) sử dụng Default Pipe USB data flow model
  • 73. Detailed USB Host/Device view Interface • Endpoints được nhóm thành từng nhóm, một nhóm các endpoint tạo thành một interface • Mỗi interface gắn liền với một chức năng của USB device USB data flow model
  • 74. Detailed USB Host/Device view Pipe Bundle to an interface • Client software quản lý một interface dùng pipe bundles (gắn liền với một tập các endpoints). • Thông qua Pipe Bundle, Client software yêu cầu dữ liệu được truyền tải giữa buffer trên host và các endpoints trên USB devide USB data flow model
  • 77. Control tranfer (Truyền điều khiển) Control tranfer dùng để cài đặt và truyền thông tin giữa host và function. Truyền theo 2 hướng IN và OUT. Việc truyền điều khiển gồm 3 bước: Setup stage Data stage Status stage Setup stage gồm 3 gói packet: Token packet: chứa địa chỉ và endpoint Data packet: cài đặt kích thước dữ liệu, luôn truyền dữ liệu Data0 Handshake packet: báo nhận thành công hoặc báo lỗi USB protocol
  • 78. Data stage: gồm 3 gói packet Token packet: báo hướng truyền IN hoặc OUT Data packet: chứa dữ liệu được truyền Handshake packet: xác nhận thành công hoặc báo lỗi USB protocol
  • 79. Status stage: báo trạng thái truyền. Gồm 2 trường hợp: IN: khi host gửi dữ liệu OUT: khi host nhận dữ liệu USB protocol
  • 82. Bulk transfer (Truyền hàng loạt) Bulk tranfer dùng truyền dữ liệu lớn, chính xác không khắt khe về thời gian. Truyền 1 hoặc 2 hướng. VD: scaner, printer, usb disk USB protocol
  • 83. Interrupt tranfer (Truyền ngắt) Interrupt transfer dùng để truyền dữ liệu nhỏ , không liên tục. Truyền theo 1 hoặc 2 hướng (đối với USB 1.0 chỉ có IN). VD: keyboard, mouse USB protocol
  • 84. Isochronous transfer (Truyền đẳng thời) Isochronous tranfer dùng để truyền dữ liệu với tốc độ cố định và bỏ qua lỗi. Truyền 1 hoặc 2 hướng. VD: truyền voice qua usb USB protocol
  • 86. Enumeration là gì?  Gán địa chỉ cho thiết bị  Tìm kiếm và cài đặt Driver phù hợp  Lựa chọn cấu hình về nguồn cấp và những Interface ENUMERATION
  • 87. Quy trình như thế nào?  Khi cắm thiết bị vào.  Host nhận được tín hiệu.  Điều khiển thiết bị ENUMERATION
  • 88. Khi cắm thiết bị vào:  Thiết bị ở trạng thái POWERED  Hub phát hiện thiết bị ENUMERATION
  • 89. Host nhận tín hiệu:  Hub gởi báo cáo sự kiện  Hub xác định thiết bị là Low/Full Speed.  Hub reset thiết bị về trạng thái DEFAULT ENUMERATION
  • 90. ● Điều khiển thiết bị (tiếp theo)  Host yêu cầu thông tin mô tả và reset  Host gán địa chỉ cho thiết bị. Thiết bị ở trạng thái ADDRESS  Gởi yêu cầu thông tin về những mô tả khác. ENUMERATION
  • 91. ● Điều khiển thiết bị (tiếp theo)  Lựa chọn và cài đặt Driver  Lựa chọn và cài đặt cấu hình. ENUMERATION
  • 92. DESCRIPTORS:  Device Descriptor  Configuration Descriptor  Interface Descriptor  Endpoint Descriptor ENUMERATION
  • 97. How the Host communicates
  • 98. Device Drivers  A device driver là một phần mềm trung gian mà qua đó cho phép các ứng dụng của máy tính truy xuất hoặc điều khiển các thiết bị phần cứng (printer, modem, keyboard, video display, …).  Hầu hết các thiết bị USB là những thiết bị gắn ngoài, được kết nối với máy tính thông qua cáp(hoặc wireless . Tuy nhiên, cũng có một số thiết bị gắn cứng với CPU, ví dụ : fingerprint scanners, …
  • 99. The Layered Driver Model  USB truyền thông bên dưới nền Windows, sử dụng mô hình chia lớp driver, driver được sắp xếp theo một mô hình dạng chuỗi, hay dạng ngăn xếp (stack) để phục vụ cho quá trình truyền thông.  Lớp trên cùng của stack là một client driver, mà hệ điều hành đã gán với các thiết bị.  Các ứng dụng truy xuất với các thiết bị USB bằng cách giao tiếp với client driver.  The client driver truy xuất đến các lớp bên dưới để truy xuất đến các thiết bị.
  • 100. User and Kernel Modes  Còn bên dưới Windows, code chương trình chạy 1 trong 2 chế độ là user mode hoặc kernel mode.  Mỗi chế độ cho phép các mức ưu tiên khác nhau để truy xuất đến memory hoặc các tài nguyên khác của hệ thống.
  • 101. User and Kernel Modes
  • 102. Applications  The Windows API  Các ứng dụng thường được viết bằng Visual Basic, C, Delphi, hoặc các ngôn ngữ khác, chúng có thể truy xuất nhiều thiết bị bằng cách gọi hàm của Windows API.  Using .NET’s Classes  Để đơn giản hơn và an toàn hơn trong lập trình, Microsoft’s .NET Framework cung cấp các lớp để tiện trong việc gọi hàm API khi viết code.
  • 103. User-mode Client Drivers  User-mode client driver có thể định nghĩa là một driver API đặc biệt mà ứng dụng có thể sử dụng nó để truy xuất đến các thiết bị.  The driver là một thư viện liên kết động (dynamic link library (DLL)). An example of a user-mode USB driver is winusb.dll, hid.dll, …  User-mode driver là thành phần trung gian chuyển đổi các hàm driver đã được định nghĩa và Windows API. Ví dụ : khi ứng dụng gọi hàm Hid_GetFeature, thì user-mode HID driver gọi hàm DeviceIoControl, và kernel-mode HID driver yêu cầu báo cáo HID Feature từ thiết bị.
  • 104. Kernel-mode Client Drivers  Kernel-mode client driver quản lí quá trình truyền thông giữa user-mode và các mức driver USB thấp hơn bên dưới.  Các driver này có dạng đuôi mở rộng .sys. Ví dụ : kernel- mode client drivers là winusb.sys (WinUSB) và hidclass.sys (HID).  A client driver or miniclass driver có thể có một hay nhiều driver lọc (filter driver) bên trên hoặc bên dưới, các driver lọc chính hoặc modify quá trình truyền thông với thiết bị.
  • 106. Bus and Host-controller Drivers  Host-Controller Types :  USB 1.x or USB 2.0 host sử dụng các controller theo chuẩn Open Host Controller Interface (OHCI) hoặc Universal Host Controller Interface (UHCI).  USB 2.0 high-speed host sử dụng host controller theo chuẩn Enhanced Host Controller Interface (EHCI).  USB 3.0 hosts sử dụng Extensible Host Controller Interface (xHCI) controller cho tất cả các loại tốc độ.
  • 107. Bus and Host-controller Drivers  Sự khác nhau giữa OHCI và UHCI :  OHCI và UHCI controllers đều cung cấp nhiều cách phục vụ cho tốc độ thấp và cao hay full-speed USB hardware để giao tiếp với các mức driver cao hơn.  Nhưng cũng có nhiều điểm khác nhau: UHCI đặt nặng lên quá trình truyền thông ở phần mềm, vì vậy có thể sử dụng đơn giản hơn và phần cứng rẻ hơn. UHCI được phát triển bởi Intel OHCI đặt nặng lên phần cứng và phần mềm điều khiển sẽ đơn giản hơn. OHCI được phát triển bởi Compaq, Microsoft, and National Semiconductor
  • 108. Matching a Driver to a Device  Using Device Manager
  • 109. Matching a Driver to a Device  Device Information in the Registry
  • 110. The hardware Key  Lưu trữ thông tin của các thiết bị đặc biệt.
  • 111. The Class Key  The class key lưu trữ các thông tin về các lớp thiết bị đã được cài đặt.
  • 112. The driver Key  Bên dưới class key, mỗi thiết bị trong class sẽ có 1 driver, còn được gọi là software key. Bên trong một hardware key của một thiết bị cố định, the Driver ghi tên của thiết bị vào GUID và matches vào class key và instance number của thiết bị được matches vào driver subkey bên dưới class key.
  • 113. The Service Key  A service key lưu trữ thông tin về các driver’s files, bao gồm nơi chúng ở đây và load chúng lên như thế nào. Service keys nằm ở đường dẫn sau:  HKEY_LOCAL_MACHINESystemCurrentControlSetServices  Service keys tồn tại trong host controller type, hubs, classes chẳng hạn như storage (USBSTOR) và printers (USBPRINT), và HID functions (HidBatt, HidServ, HidUsb).
  • 114. INF Files  A device-setup information file, or INF file, là một file text chứa các thông tin của một hay nhiều thiết bị trong device setup class.  Windows includes INF files for the drivers provided with the operating system. Những files này nằm trong thư mục %windir %inf Hệ điều hành copy các INF files để user add thiết bị này vào thư mục trên.  Lần đầu tiên khi hết nối, sau khi nhận được mô tả từ USB device, Windows tìm kiếm nhằm match thông tin trong các descriptors với thông tin trong hệ thống INF files.
  • 116. Device Classes Các thiết bị có chức năng giống nhau được gom thành từng chuẩn  Phát triển 1 driver cho nhiều thiết bị  Các driver cho từng chuẩn được tích hợp sẵn trong windows ENUMERATION
  • 117. HID: Human Interface Devices • Chuẩn thiết bị giúp con người giao tiếp với máy tinh • Một trong những chuẩn USB đầu tiên được hỗ trợ trong windows • Mouse, keyboard, gamepad, joystick, remote control… là những thiết bị HID • Host và các thiết bị giao tiếp bằng gói tin report ENUMERATION
  • 118. Descriptors • Chứa thông tin, thông số cấu hình của thiết bị • Được lưu trong bộ nhớ của thiết bị, cung cấp cho host khi được yêu cầu • Host gửi tín hiệu “get descriptor request” để lấy thông tin của thiết bị • Descriptor: configuration, interface, class,endpoint ENUMERATION
  • 119.
  • 120. HID interface Các thiết bị HID có thể giao tiếp máy tính mà không cần driver trong windows!!!  thiết bị có Boot interface Ứng dụng khi giao tiếp trong môi trường DOS, BIOS Các protocol đơn giản được BIOS cấp từ bộ nhớ ROM  Descriptor bInterfaceclass = 03h: xác định interface chuẩn HID  Descriptor bInterfaceSubclass = 01h: có hỗ trợ Boot interface ENUMERATION
  • 123. The Global item Type ENUMERATION

Hinweis der Redaktion

  1. - USB là kết quả của sự hợp tác giữa 7 công ty hàng đầu thế giới : Compaq,Digital Equipment Corporation,IBM,Intel,Microsoft,NEC,Northern Telecom
  2. USB – Universal Serial Bus là cổng giao tiếp thành công nhất của máy tính . Với USB port , ngày nay PC có thể giao tiếp với rất nhiều thiết bị ngoại vi : bàn phím , chuột , máy in,tay game ,máy scan , camera …
  3. Đến nay có 4 chuẩn USB là 1.0 ; 1.1 ; 2.0 ; 3.0 Chuẩn 2.0 đang được sử dụng nhiều nhất Chuẩn 3.0 mới nhất ,nhanh nhất nhưng chưa được sử dụng nhiều do chưa có phần cứng tương thích
  4. - Dễ sử dụng + Một interface cho nhiều loại thiết bị khác nhau + Tiết kiệm được cable của nhiều loại kết nối khác nhau
  5. Chuẩn USB-OTG ra đời  1 thiết bị có thể vừa là host vừa là device  mini-AB, phân biệt = chân ID
  6. This is accomplished by adding a locking device and by moving the leaf-spring connector from the jack to the plug, so that the most-stressed part is on the cable side of the connection. This change was made so that the connector on the less expensive cable would bear the most wear instead of the more expensive micro-USB device.
  7. Điều này giúp cho các thiết bị không cần tốc độ cao có giả rẻ, cấu tạo đơn giản
  8. dữ liệu được truyền qua kết nối usb như thế nào
  9. Mô hình chia lớp driver &amp;lt;number&amp;gt;
  10. Applications run in user mode. A USB device must have a kernel-mode client driver, which can have a supplementary user-mode driver &amp;lt;number&amp;gt;
  11. The supported functions vary with the driver, but an application typically opens communications with CreateFile, exchanges data using a combination of ReadFile or ReadFileEx, WriteFile or WriteFileEx, and DeviceIoControl, and closes communications with CloseHandle. Microsoft’s Windows Software Development Kit (SDK) documents these functions. Instead, applications communicate with a Common Language Runtime (CLR) component that in turn may call API functions &amp;lt;number&amp;gt;
  12. &amp;lt;number&amp;gt;
  13. &amp;lt;number&amp;gt;
  14. &amp;lt;number&amp;gt;
  15. &amp;lt;number&amp;gt;
  16. &amp;lt;number&amp;gt;
  17. &amp;lt;number&amp;gt;
  18. &amp;lt;number&amp;gt;
  19. &amp;lt;number&amp;gt;
  20. &amp;lt;number&amp;gt;
  21. &amp;lt;number&amp;gt;
  22. &amp;lt;number&amp;gt;
  23. &amp;lt;number&amp;gt;
  24. Phân chuẫn thiết bị : Nhiều thiết bị USB được phân thành từng chuẫn vì chúng có những tính năng , đặc điểm giống nhau . Giống như chuột,bàn phím,gamepad được gom vào cùng 1 chuẫn vì chúng điều có chức năng là giao tiếp với con người ,tương tự như loa,headphone,micro ... Việc gom các thiết bị thành từng chuẫn giúp ta tránh được việc phải viết driver , định nghĩa giao thức truyền cho từng thiết bị mà thay vào đó ta chỉ việc chọn 1 giao thức , viết 1 driver cho 1 cấp thiết bị là có thể hỗ trợ rất nhiều thiết bị khác . Các driver chung này đươc tích hợp sẵn trong window ,khi kết nối thiết bị thì máy tính sẽ dò nhận dạng và cấp driver để giao tiếp với thiết bị mà không cần phải cài driver của nhà cung cấp . Một vài thiết bị cần có driver riêng do nhà cung cấp phát triển .
  25. HID là một trong những chuẩn USB đầu tiên được hỗ trợ trong Windows . Với những máy tính chạy Windows 98 về sau , ứng dụng có thể giao tiếp với thiết bị HID thông qua các driver cài đặt sẵn trong Window . Vì chuẫn HID hỗ trợ trao đổi dữ liệu giữa nhiều ứng dụng khác nhau với nhiều thiết bị khác nhau nếu chúng có chung cơ cấu HID HID là gì ? Human interface device : thiết bị giao tiếp với con người Máy tính nhận biết trạng thái của con chuột khi ta ấn nút hay di chuyển nó , hoặc lập tức hiển thị chữ khi ta gõ bàn phím ,tương tự như gamepad,joystick,remote control.... Tất cả các dữ liệu trao đổi có cấu trúc độ dài cố định , gọi là report . Host gửi và nhận data bằng cách gửi và nhận các report . Định dạng của report có thể thay đổi và có thể quản lý bất kì loại data nào ( audio,video,file...) Thiết bị HID phải có ít nhất 1 IN endpoint và OUT endpoint , thiết bị nào cần nhiều IN endpoint là thiết bị hỗn hợp với nhiều HID interface . In endpoint giúp thiết bị HID gửi dữ liệu tới máy tính tuần tự 1 khoảng thời gian nhất định . Vd máy tính không thể biết khi nào bàn phím được nhấn mà không liên tục lấy dữ liệu từ bàn phím .
  26. Descriptor là dữ liệu cho phép host biết thông tin về thiết bị . Mỗi descriptor có thể chứa thông tin về toàn bộ hoặc chỉ 1 phần của thiết bị. Tất cả các thiết bị USB đều sẵn sàng truyền decriptor của nó cho host khi được host yêu cầu Với bất kì thiết bị USB nào cũng cần có descriptor , HID’s descriptor cung cấp thông tin cho host biết cách thức giao tiếp với thiết bị đó . Các phần thường có trong descriptor là thông tin về config(cấu hình) , interface(giao tiếp) , class(chuẩn) và endpoint Host sẽ nhận dạng thiết bị bằng cách gửi một thông điệp “get descriptor request” để lấy descriptor từ thiết bị sau đó host sẽ thiết lập driver tương ứng để kết nối .
  27. Câu hỏi đặt ra là chúng ta không cần vào window để chạy driver cũng có thể giao tiếp với thiết bị , cụ thể là chúng ta vẫn sử dụng được bàn phím và chuột ở màn hình DOS,hay giao diện khi cài window từ CD....vậy thì nguyên do từ đâu? Quan sát Descriptor phần interface : bInterfaceclass = 03h : xác định interface HID bInterfaceSubclass = 01h: có hỗ trợ Boot interface – thiết bị HID có hỗ trợ Boot có thể giao tiếp với host ngay cả khi host chưa cài xong driver .(vd như khi may tính boot trực tiếp vào DOS...) bàn phím hoặc chuột có boot interface có thể sử dụng những protocol đơn giản do BIOS cấp (nó được lấy từ ROM)
  28. Report Descriptor chứa thông tin về định dạng và cách sử dụng các report của HID . Nếu là chuột thì nó thông báo data sẽ là vị trí của con chuột và nút bấm ,nếu là điều khiển công tắc thì data chứa trạng thái của công tắc .
  29. Get Report : host yêu cầu nhận report từ thiết bị HID sử dụng kiểu truyền điều khiển Request number : mã lệnh Source of data : nguồn dữ liệu sẽ lấy từ ( device ) Wlength : data length : chiều dài gói tin report Wvalue : chứa thông tin về report : report type ( 01=input,03=feature),report ID Windex : số hiệu cổng interface để truyền Data stage content : chứa dữ liệu của report Get Idle : host yêu cầu đọc thông tin về trạng thái nghĩ hiện tại của thiết bị Get protocol : host dò xem thiết bị hoạt động ở chế độ nào : boot hay bình thường Set report : Host gửi gói tin đến thiết bị HID yêu cầu thiết lập quá trình truyền report Set Idle : Host gửi gói tin kích hoạt thiết bị ở chế độ nghỉ nhằm tiết kiệm băng thông ,năng lương bằng cách giảm tần suất truyền report khi gói tin report nhận được giống với gói trước đó Set protocol :host thiết lập chế độ truyền cho thiết bị
  30. Global item dùng để xác định các report và mô tả dữ liệu của report đó , gồm những đặc tính như chức năng,giá trị và kích thước data của report . Global item tag là một chuỗi bit đứng trước các phần của report để xác định chức năng của nó