Tải bản đầy đủ (.pdf) (89 trang)

ĐỒ ÁN TỐT NGHIỆP: NGHIÊN CỨU, THIẾT KẾ HỆ THỐNG CẢM BIẾN NHIỆT ĐỘ GIAO TIẾP VÀ GHÉP NỐI MÁY TÍNH QUA GIAO THỨC USBLỚP HID

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (8.21 MB, 89 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN
BỘ MÔN: TỰ ĐỘNG HÓA
---------------o0o---------------

THUYẾT MINH ĐỒ ÁN TỐT NGHIỆP
NGHIÊN CỨU, THIẾT KẾ HỆ THỐNG CẢM BIẾN NHIỆT ĐỘ
GIAO TIẾP VÀ GHÉP NỐI MÁY TÍNHQUA GIAO THỨC
USB/LỚP HID

GVHD: ThS. Lâm Tăng Đức
SVTH: Nguyễn Hữu Việt
MSSV: 105106061149

Đà Nẵng, tháng 5/2011


LỜI NÓI ĐẦU
Trong lĩnh vực Điện - Điện tử nói chung và ngành Tự động hóa nói riêng,
truyền thông và ghép nối các thiết bị là vấn đề then chốt và rất phổ biến. Phần lớn các
thiết bị, các hệ thống đều được kết nối với máy tính để thu thập thông tin, lưu trữ số
liệu, điều khiển và giám sát các trạng thái của thiết bị. Ở trình độ của sinh viên, hầu hết
các mô hình hay sản phẩm đều được kết nối qua giao thức RS-232. Giao thức này rất
quen thuộc và dễ thực hiện, tuy nhiên bản thân nó cũng quá lỗi thời so với yêu cầu về
tốc độ truyền của công nghệ ngày nay. Vì vậy trong đề tài Tốt Nghiệp này em xin gửi
đến quí thầy cô cùng tất cả các bạn đọc giao thức USB, một phương pháp mới để tăng
tốc độ truyền của dữ liệu, đồng thời thân thiện hơn với người dùng.
Nội dung của đề tài này gồm 6 chương:
Chương I: TỔNG QUAN ĐỀ TÀI
Chương II: TỔNG QUAN VỀ GIAO THỨC USB


Chương III: TỔNG QUAN VỀ MẠNG TRUYỀN THÔNG 1 DÂY
Chương IV: TỔNG QUAN VỀ PIC 18F2550/4550
Chương V: GIỚI THIỆU CẢM BIẾN NHIỆT ĐỘ DS18B20
Chương VI: THIẾT KẾ VÀ LẮP RÁP CÁC MÔ HÌNH

Mặc dù bản thân cũng rất nổ lực trong việc tìm kiếm thông tin, tài liệu để hoàn
thành đề tài một cách trọn vẹn nhất nhưng mắc sai sót là điều khó tránh khỏi. Thành
thật mong quý thầy cô cùng bạn đọc góp ý kiến để đề tài ngày càng hoàn thiện
Cuối cùng em xin gửi lời cảm ơn chân thành đến gia đình, thầy cô và bạn bè đã
động viên, giúp đỡ trong suốt thời gian qua. Đặc biệt, gửi lời cảm ơn đến thầy Lâm
Tăng Đức đã trực tiếp hướng dẫn để đề tài được hoàn thành
Đà Nẵng tháng 5 năm 2011
Sinh viên thực hiện
NGUYỄN HỮU VIỆT
ii


Mục Lục

CHƯƠNG I: TỔNG QUAN ĐỀ TÀI ........................... Error! Bookmark not defined.
1.1:Tầm quan trọng của truyền thông và ghép nối máy tính với ngànhTự động hóa
................................................................................. Error! Bookmark not defined.
1.2:Thực trạng hiện nay ............................................ Error! Bookmark not defined.
1.3: Nội dung đề tài .................................................. Error! Bookmark not defined.
CHƯƠNG II: TỔNG QUAN VỀ GIAO THỨC USB VÀ LỚP HID Error! Bookmark
not defined.
2.1: Giới thiệu sơ bộ về giao thức USB .................... Error! Bookmark not defined.
2.2:Quá trình phát triển giao thức USB ..................... Error! Bookmark not defined.
2.3: Phân tích ưu điểm và nhược điểm của giao thức USB...... Error! Bookmark not
defined.

2.3.1: Ưu điểm: ..................................................... Error! Bookmark not defined.
2.3.2: Nhược điểm................................................. Error! Bookmark not defined.
2.4: Giới thiệu các lớp của giao thức USB ................ Error! Bookmark not defined.
2.4.1: Lớp thiết bị âm thanh (Audio) ..................... Error! Bookmark not defined.
2.4.2: Lớp thiết bị thẻ thông minh (Chip/Smart Card Interface) . Error! Bookmark
not defined.
2.4.3: Các thiết bị truyền thông (Modems and Networks) .... Error! Bookmark not
defined.
2.4.4: Lớp thiết bị bảo mật thông tin...................... Error! Bookmark not defined.
2.4.5 Lớp các thiết bị nâng cấp firmware ............... Error! Bookmark not defined.
2.4.6:Lớp các thiết bị tương tác với con người (Human Interface) ................ Error!
Bookmark not defined.
2.4.7:Cầu chuyển đổi hồng ngoại (IrDA)............... Error! Bookmark not defined.
2.4.8: Lớp các thiết bị lưu trữ thứ cấp (Mass Storage) ......... Error! Bookmark not
defined.
2.4.9:Lớp các thiết bị in ấn (Printers) .................... Error! Bookmark not defined.

iii


2.4.10:Lớp các thiết bị lưu giữ hình ảnh tĩnh (Still Image Capture) .............. Error!
Bookmark not defined.
2.4.11: Các thiết bị đo đạc và kiểm tra................... Error! Bookmark not defined.
2.4.12: Lớp thiết bị ảnh động (Video).................... Error! Bookmark not defined.
2.4.13: Thực hiện các chức năng không tiêu chuẩn Error! Bookmark not defined.
2.5:Lớp thiết bị giao diện người sử dụng (HID-Human Interface Device)........ Error!
Bookmark not defined.
2.5.1: Khái niệm về HID ....................................... Error! Bookmark not defined.
2.5.2: Các yêu cầu về phần cứng ........................... Error! Bookmark not defined.
2.5.3: Các yêu cầu về vi chương trình (Firmware) . Error! Bookmark not defined.

2.5.4: Cách thức để chỉ ra một thiết bị thuộc lớp HID.......... Error! Bookmark not
defined.
2.5.5: Bộ mô tả báo cáo (Report Descriptor) ......... Error! Bookmark not defined.
2.5.6: Các yêu cầu mà host có thể gửi tới một thiết bị thuộc lớp HID ........... Error!
Bookmark not defined.
2.6: Sự hỗ trợ của Hệ điều hành với lớp HID ............ Error! Bookmark not defined.
2.7: Chọn chip .......................................................... Error! Bookmark not defined.
CHƯƠNG III: TỔNG QUAN VỀ MẠNG TRUYỀN THÔNG 1 DÂY ............... Error!
Bookmark not defined.
3.1:Định nghĩa mạng truyền thông 1 dây .................. Error! Bookmark not defined.
3.2: Tổng quan về Bus 1 dây .................................... Error! Bookmark not defined.
3.3: Các yêu cầu ....................................................... Error! Bookmark not defined.
3.4:Hoạt động của bus 1 dây..................................... Error! Bookmark not defined.
3.4: Mạng một dây và Vi điều khiển PIC .................. Error! Bookmark not defined.
CHƯƠNG IV: TỔNG QUAN VỀ PIC 18F2550/4550 . Error! Bookmark not defined.
4.1: Giới thiệu PIC 18F2550/4550 ............................ Error! Bookmark not defined.
4.2: Khái quát chức năng USB trong PIC ................. Error! Bookmark not defined.
4.2.1:Trạng thái và điều khiển USB....................... Error! Bookmark not defined.
4.2.2: Thanh ghi điểu khiển (UCON) .................... Error! Bookmark not defined.
4.2.3: Thanh ghi cấu hình USB (UCFG)................ Error! Bookmark not defined.
iii


4.2.4: Thanh ghi trạng thái USB ............................ Error! Bookmark not defined.
4.2.5: Thanh ghi điều khiền USB ENDPOINT( UEPn) ....... Error! Bookmark not
defined.
4.2.6: Thanh ghi trạng thái ngắt của giao thức USB............. Error! Bookmark not
defined.
4.2.7: Thanh ghi kích hoạt trạng thái ngắt của giao thức USB ... Error! Bookmark
not defined.

CHƯƠNG V: GIỚI THIỆU CẢM BIẾN NHIỆT ĐỘ DS18B20 Error! Bookmark not
defined.
5.1: Khái quát chung ................................................ Error! Bookmark not defined.
5.2: Cấu trúc phần cứng ............................................ Error! Bookmark not defined.
5.3:Hoạt động đo nhiệt độ ........................................ Error! Bookmark not defined.
5.4: Hoạt động báo hiệu............................................ Error! Bookmark not defined.
5.5: Thanh ghi cấu hình và độ phân giải ................... Error! Bookmark not defined.
5.6: 8 Bit CRC .......................................................... Error! Bookmark not defined.
5.7: Tập lệnh ............................................................ Error! Bookmark not defined.
5.7.1: Lệnh ROM .................................................. Error! Bookmark not defined.
5.7.2: Lệnh chức năng bộ nhớ ............................... Error! Bookmark not defined.
5.8: Chuẩn 1 dây với cảm biến DS18B20 ................. Error! Bookmark not defined.
5.8.1: Thời gian khởi động bus .............................. Error! Bookmark not defined.
5.8.2: Thiết lập các Slots ở chế độ ghi cho Master . Error! Bookmark not defined.
CHƯƠNG VI: THIẾT KẾ VÀ LẮP RÁP MỘT SỐ CÁC ỨNG DỤNG ............. Error!
Bookmark not defined.
6.2: Sơ đồ nguyên lý................................................. Error! Bookmark not defined.
6.3: Mô-đun thu phát RF 8 phím bấm ....................... Error! Bookmark not defined.
6.3.1: Mô-đun thu RF ............................................ Error! Bookmark not defined.
6.3.2: Mô đun phát RF (Remote 8 phím) ............... Error! Bookmark not defined.
6.4: LCD 16x2.......................................................... Error! Bookmark not defined.
6.5: Công cụ hỗ trợ ................................................... Error! Bookmark not defined.
6.6: Xây dựng giao diện trên máy tính bằng VB 6.0 . Error! Bookmark not defined.
iii


6.7: Sơ đồ khối firmware bên trong chip ............... Error! Bookmark not defined.
6.8: Một số hình ảnh của sản phẩm ....................... Error! Bookmark not defined.
TÀI LIỆU THAM KHẢO ........................................... Error! Bookmark not defined.
PHỤ LỤC .................................................................... Error! Bookmark not defined.

Phụ Lục 0: Chương trình xây dựng giao diện trên VB ............ Error! Bookmark not
defined.
Phụ Lục 1: Chương trình REMOTE 8 phím ............. Error! Bookmark not defined.
Phụ Lục 2: Chương trình đo nhiệt độ và ghép nối máy tính qua cổng USB...... Error!
Bookmark not defined.
Phụ Lục 3: Thư viện chuẩn 1-dây ............................. Error! Bookmark not defined.
Phụ Lục 4: Danh sách các chip có hỗ trợ giao thức USB ........ Error! Bookmark not
defined.

iii


ĐẠI HỌC ĐÀ NẴNG
Trường đại học Bách Khoa

Cộng hoà xã hội chủ nghĩa Việt Nam
Độc Lập - Tự Do - Hạnh Phúc

Khoa Điện

------ *** -----NHIỆM VỤ
THIẾT KẾ ĐỒ ÁN TỐT NGHIỆP
Tên:

NGUYỄN HỮU VIỆT

Lớp:

06D6


Khoa:

Điện

Nghành: Tự Động Hóa
1 - Đề tài: NGHIÊN CỨU, THIẾT KẾ HẾ THỐNG CẢM BIẾN NHIỆT ĐỘ GIAO
TIẾP VÀ GHÉP NỐI MÁY TÍNH QUA GIAO THỨC USB/LỚP HID
2 - Nội dung thiết kế:
Chương I: TỔNG QUAN ĐỀ TÀI
Chương II: TỔNG QUAN VỀ GIAO THỨC USB VÀ LỚP HID
Chương III: TỔNG QUAN VỀ MẠNG 1 DÂY
Chương IV: TỔNG QUAN VỀ PIC 18F2550/4550
Chương V: GIỚI THIỆU CẢM BIẾN NHIỆT ĐỘ DS18B20
Chương VI: THIẾT KẾ VÀ LẮP RÁP CÁC MÔ HÌNH
3 - Ngày giao đề tài:

Ngày

tháng

năm 2011

4 - Ngày nộp đề tài:

Ngày

tháng

năm 2011


Ngày

tháng

năm 2011

Cán bộ duyệt

Ngày

tháng

năm 2011

Cán bộ hướng dẫn

ThS Lâm Tăng Đức
i


Ngày

tháng năm 2011

Trưởng Bộ Môn

Ngày

tháng năm 2011


Chủ tịch hội đồng

TS Nguyễn Hoàng Mai

Ngày

tháng năm 2011

Sinh Viên Thực Hiện

Nguyễn Hữu Việt

i



ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

CHƯƠNG I: TỔNG QUAN ĐỀ TÀI
1.1:Tầm quan trọng của truyền thông và ghép nối máy tính với ngànhTự
động hóa
- Ngày nay trong tất cả các nhà máy, xí nghiệp, các hệ thống, các thiết bị đều có
thể liên lạc và trao đổi thông tin cho nhau thông qua các chuẩn truyền dẫn khác nhau.
Chính điều này đã tạo nên sự hoạt động hài hòa giữa các thiết bị trong hệ thống
- Bên cạnh việc trao đổi thông tin cho nhau, các thiết bị phải được kết nối để đưa
dữ liệu về máy tính chủ. Từ máy chủ người điều khiển có thể nhận biết được trạng thái
hoạt động, thông tin sảm phẩm đồng thời cũng có thể lưu trữ, in ấn được các thông số
này khi cần thiết

1.2:Thực trạng hiện nay
Hiện nay giao thức RS-232 được sử dụng phổ biến nhất để thực hiện việc ghép
nối các thiết bị ngoại vi với máy tính. Tuy nhiên giao thức này đã quá lỗi thời vì tốc độ
truyền hạn chế và khả năng linh hoạt không cao. Chính vì vậy, các máy tính hiện đại
đều đã tháo bỏ, chỉ còn lại các cổng giao thức USB. Vì vậy để có thể ghép nối các thiết
bị ngoại vi với máy tính hiện đại các nhà thiết kế đã sử dụng các giải pháp sau:
Một là sử dụng mô đun chuyển đổi USB-COM (Hình 1.1)
Hai là sử dụng chip chuyển đổi USB-COM (Hình 1.2)

Hình 1.1 Mô đun chuyển đổi USB qua COM

SVTH: NGUYỄN HỮU VIỆT

Trang 1


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

Hình 1.2 Chip chuyển đổi USB-COM (PL2303)
Nhìn trên nhiều phương diện, đây là vấn đề lớn cho mỗi nhà tiết kế cần cân nhắc
- Xét về mặt kinh tế: Thêm Mô-đun chuyển đổi hay Chip chuyển đổi đều làm
tăng giá thành của sản phẩm
- Xét về mặt kỹ thuật: Chúng ta biết rằng giao thức USB có tốc độ truyền khá cao
vào khoảng 12Mbit/sec (với chuẩn full-speed) trong khi đó giao thức RS-232 chỉ có
20Kbit/sec. Đây được gọi là nguyên lý truyền thông “cổ chai”. Vấn đề này cần tránh
trong việc thiết kế các ứng dụng
- Xét về mặt lợi ích của người sử dụng: Các thiết bị đã nêu ở trên đều cần có
driver riêng cộng với tính “ảo” của nó đã gây lên một số trở ngại cho người sử dụng

Vậy để giải quyết vấn đề này, đề tài đã đi vào nghiên cứu để đưa ra giải pháp mới
nhằm khắc phục các yếu điểm trên, bằng cách ghép nối các thiết bị ngoại vi với máy
tính trực tiếp qua giao thức USB
1.3: Nội dung đề tài
Thiết kế và lập trình ứng dụng sử dụng giao thức USB/lớp HID bao gồm những
phần sau:
- Tổng quan về giao thức USB
- Giới thiệu chip có hỗ trợ giao thức USB, PIC18F2550/4550
-Thiết kế và lắp rápbàn phím không dây dạng thu nhỏ và mạch đo nhiệt độ
- Tìm hiểu sự hỗ trợ của Hệ điều hành với các lớp trong giao thức USB
- Xây dựng chương trình giao diện trên Windowsbằng VB 6.0 để cập nhật giá trị
nhiệt độ được gửi lên từ Vi điều khiển trực tiếp qua giao thức USB
SVTH: NGUYỄN HỮU VIỆT

Trang 2


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

- Tạo firmware cho Vi điều khiển để Hệ điều hành có thể tự động nhận ra thiết bị
và không cần driver giống như các thiết bị hiện có trên thị trường (Bàn phím, chuột…)
- Trong đề tài này cảm biến nhiệt độ DS18B20 được sử dụng để đo nhiệt độ của
môi trường sau đó truyền giá trị về Vi điều khiển. Trên thị trường hiện hay có hai loại
cảm biến nhiệt độ phổ biến là: cảm biến có tín hiệu đầu ra liên tục (analog temperature
sensor) và cảm biến có tín hiệu đầu ra số (digital temperature sensor). Đối với các cảm
biến liên tục tín hiệu đầu ra hầu hết là điện áp còn đối với cảm biến số thì đầu ra là một
chuẩn truyền thông nào đó, có thể là I2C, SPI hay UART.Riêng cảm biến này sử dụng
chuẩn truyền thông “1 dây”. Thông qua cảm biến này đề tài cũng giới thiệu đến thầy

cô và các bạn một giải pháp khá đơn giản trong lĩnh vực truyền thông: “Mạng truyền
thông 1 dây”.
- Sơ đồ khối cho các mô hình:

SVTH: NGUYỄN HỮU VIỆT

Trang 3


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

CHƯƠNG II: TỔNG QUAN VỀ GIAO THỨC USB VÀ LỚP HID
2.1: Giới thiệu sơ bộ về giao thức USB

Hình 2.1 Đầu cắm USB (type A)
USB (Universal Serial Bus) là một giao thức cho phép kết nối giữa các thiết bị
ngoại vi và máy tính chủ. Giao thức này được phát minh và phát triển bởi Ajay Bhatt
trong khi ông làm việc tại Intel.USB đã thay thế cho nhiều giao thức đa dạng và phức
tạp cũ như cổng giao tiếp nối tiếp và cổng giao tiếp song song…
USB có thể kết nối với nhiều thiết bị ngoại vi như chuột máy tính, bàn phím, máy
in, camera kỹ thuật số, các ỗ đĩa flash và ổ đĩa di động…Kể từ khi ra đời USB đã trở
thành giao thức kết nối tiêu chuẩn cho các thiết bị này.
Buổi ban đầu mới ra đời USB chỉ được thiết kế giành riêng cho máy tính cá nhân,
nhưng thời gian trôi qua USB cũng trở nên phổ biến với các thiết bị như
Smartphone,PDAs, Video game…
Không giống như các chuẩn truyền thông cũ (RS-232, Parallel port), cổng USB có
cung cấp sẵn nguồn điện vì vậy các thiết bị ngoại vi kết nối qua cổng USB không cần
nguồn riêng, ngoại trừ các thiết bị cần công suất lớn.


SVTH: NGUYỄN HỮU VIỆT

Trang 4


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

2.2:Quá trình phát triển giao thức USB
Một nhóm gồm 7 công ty bắt đầu tìm hiểu và phát triển giao thức này từ năm
1994gồm Compaq, NEC, DEC, IBM, Intel, Cortel và Microsoft
Phiên bản USB 1.0 được ra đời vào tháng 1 năm 1996 với tốc độ truyền 1.5MBit/s
(Low speed). Phiên bản 1.1 được công bố vào tháng 9 năm 1998 với hai cấp tốc độ
truyền 1.5 MBit/s (Low speed) và 12 MBit/s (Full speed). USB 1.1 có bổ sung thêm
một kiểu truyền thông mới “interrupt OUT”. Tháng 4 năm 2000 giao thức USB 2.0 ra
đời với 3 cấp tốc độ truyền 1.5 MBit/s (Low speed), 12 MBit/s (Full speed), 480
MBit/s (High speed). Ngày 12 tháng 11 năm 2008 giao thức USB 3.0 ra đời với tốc độ
truyền 5 GBit/s. Sản phẩm sử dụng USB 3.0 đầu tiên được ra đời vào tháng 1 năm
2010.
( Trong đồ án này chỉ tìm hiểu về giao thức USB 2.0 Full speed)
2.3: Phân tích ưu điểm và nhược điểm của giao thức USB
2.3.1: Ưu điểm:
2.3.1.1:Đối với người sử dụng
- USB rất linh hoạt đủ để tương thích với nhiều loại thiết bị ngoại vi, thay vì
làm nhiểu kiểu đầu cắm cho từng loại thiết bị khác nhau ở đây ta chỉ cần 1 mà thôi.
- Tự động thiết lập cấu hình: Khi người dùng kết nối thiết bị ngoại vi USB
vào máy tính, Hệ điều hành sẽ phát hiện và tải xuống một driver tương ứng. Với 1 số
thiết bị trong lần kết nối đầu tiên, Hệ điều hành sẽ yêu cầu người dùng cho vào 1 đĩa

có chứa driver, sau đó quá trình cài đặt sẽ tự động tiến hành. Chúng ta cũng không cần
khởi động lại máy tính trước khi sử dụng thiết bị ngoại vi đó.
- Dễ dàng kết nối: Chúng ta không cần phải tháo rời máy tính để cắm thiết bị
vào, bởi vì tất cả các máy tính đã có cổng USB ở mặt trước và mặt sau của máy.
- Cáp nối đơn giản: Cáp có 4 sợi bên trong, nhỏ gọn, dài khoảng 5 mét, nếu có
Hub thì có thể dài đến 30 mét. Cổng và Cáp USB đã được thiết lập sao cho cắm không
bị sai chiều.

SVTH: NGUYỄN HỮU VIỆT

Trang 5


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

Bảng 2.1:Bảng so sánh các giao thức
- Cắm nóng: Chúng ta có thể cắm và tháo thiết bị khỏi máy tính bất cứ lúc nào
chúng ta cần mà không làm hỏng máy tính hay thiết bị. Hệ điều hành tự động nhận ra
thiết bị khi nó được cắm vào và sẵn sàng để dùng.
- Không cần người dùng cài đặt thêm: Người dùng không cần phải chọn địa
chỉ cổng và cũng không có jumper nào để thiết lập các mục đích khác
- Nhiều thiết bị có thể cắm vào một máy tính mà không yêu cầu phần cứng quá
phức tạp
- Đôi khi không cần nguồn cung cấp: Với các thiết bị không yêu cầu công suất
lớn (+5V, 500mA) ta không cần cấp nguồn ngoài cho thiết bị

SVTH: NGUYỄN HỮU VIỆT


Trang 6


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

- Tốc độ truyền khá cao: Với USB Low speed 1.5MBit/s,Full speed 12MBit/s,
High speed 12MBit/s. Dưới đây là 2.1 bảng so sánh các giao thức.
-Độ tin cậy cao: Độ tin cậy của USB được thừa kế cả phần cứng và giao thức
cho việc truyền dữ liệu. Đặc điểm của phần cứng giúp cho việc loại trừ nhiễu được dễ
dàng.Đồng thời cơ chế tự kiểm tra lỗi và yêu cầu gửi lại giúp cho giao thức này tăng
độ tin cậy
-Giá thành hạ: Mặc dù USB phức tạp hơn các giao thức trước đây, tuy nhiên
giá thành cho thiết bị lại không quá đắt.
-Tiết kiệm năng lượng: Những mạch điện tiết kiệm năng lượng tự động
“power down” khi thiết bị USB ở chế độ chờ và sẵn sàng khi chúng cần được sử dụng.
Giảm tiêu thụ năng lượng đồng nghĩa với việc tiết kiệm tiền, thân thiện với môi trường
và cũng tặng tuổi thọ của Pin
2.3.1.2:Đối với người thiết kế
- Sự linh hoạt trong thiết kế: USB có 4 phương thức truyền và 3 cấp tốc độ,
điều này giúp cho USB tương thích với nhiều loại thiết bị ngoại vi. Tùy thuộc vào đặc
điểm của từng thiết bị ngoại vi mà ta chọn phương thức và tốc độ truyền cho phù hợp
- Sự hỗ trợ của hệ điều hành: Hầu hết các hệ điều hành đều hỗ trợ giao thức
USB, điển hình là Windows 98 trở về sau này.
- Sự hỗ trợ của thiết bị ngoại vi: Trên thị trường có rất nhiều dòng Vi điều
khiển hỗ trợ giao thức USB. Ví dụ: PIC 18F2550/18F4550/18F14K50 của hãng
Microchip
- Sự hỗ trợ về kiến thức: Ngày nay cùng với sự phát triển của máy tính và
mạng Internet, chúng ta có thể tìm thấy thông tin cần thiết một cách đơn giản. Ví dụ:

www.usb.org

SVTH: NGUYỄN HỮU VIỆT

Trang 7


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

2.3.2: Nhược điểm
Như đã trình bày ở trên, USB có rất nhiều ưu điểm tuy nhiên bên cạnh đó cũng
có nhưng hạn chế nhất định
- Hạn chế về tốc độ: Mặc dù tốc độ truyền của USB khá cao tuy nhiên cũng còn
chậm hơn so với IEEE-1394.
- Khoảng cách. USB chỉ hỗ trợ cho các thiết bị có khoảng cách tương đối gần với
máy tính chủ mà thôi. Bình thường khoảng 5 mét, nếu có sự hỗ trợ của Hub thì đạt
được 30 mét. Vì vậy để truyền đi xa hơn ta phải sử dụng thiết bị chuyển đổi qua giao
thức RS485.
- Giao tiếp Chủ-Chủ: Giao thức USB chỉ cho phép kết nối giữa máy tính chủ và
thiết bị ngoại vi mà thôi. Còn việc kết nối 2 máy tính chủ, trao đổi dữ liệu trực tiếp với
nhau qua USB là điều không thể.
- Cập nhật đa thiết bị: USB không cho phép máy chủ gửi cùng lúc nhiều dữ liệu
xuống nhiều thiết bị khác nhau
- Một số yêu cầu cho phần cứng: Đối với các thiết bị không hỗ trợ USB ta phải
sử dụng bộ chuyển đổi USB qua các giao thức khác cho phù hợp. Các máy tính đời cũ,
hệ điều hành không hỗ trợ giao thức USB cũng là một vấn đề cần nhắc tới

SVTH: NGUYỄN HỮU VIỆT


Trang 8


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

2.4: Giới thiệu các lớp của giao thức USB
Dưới đây là bảng thống kê các lớp của giao thức USB

Bảng 2.2: Bảng liệt kê các lớp của giao thức USB
2.4.1: Lớp thiết bị âm thanh (Audio)
Lớp thiết bị âm thanh chính là lớp các thiết bị gửi và nhận dữ liệu âm thanh. Dữ
liệu âm thanh có thể là tiếng nói được mã hoá, nhạc hay bất kỳ một loại âm thanh nào
khác. Các thiết bị thuộc lớp thiết bị âm thanh có thể sử dụng kiểu truyền đẳng thời cho
luồng âm thanh hoặc kiểu truyền khối cho dữ liệu đã được mã hoá bằng giao thức
MIDI (Musical Instrument Digital Interface)
2.4.2: Lớp thiết bị thẻ thông minh (Chip/Smart Card Interface)
Thẻ thông minh là các loại thẻ quen thuộc được sử dụng cho việc gọi điện thoại,
thẻ ra vào, trả cước cầu đường, bảo hiểm y tế, giải mã cho các bộ thu truyền hình vệ
tinh và nhiều các ứng dụng khác, những ứng dụng này yêu cầu một khối lượng thông
tin nhỏ hoặc trung bình với sự truy cập dữ liệu lưu trong thẻ một cách dễ dàng. Mỗi
thẻ là một module bao gồm bộ nhớ và thường thêm một CPU. Nhiều thẻ cho phép cập
nhật nội dung của chúng để thay đổi một số thông tin ví dụ như giá trị tiền trong thẻ tín
dụng hay mã của thẻ. Để truy cập một thẻ thông minh, bạn kết nối nó với thiết bị giao
diện thẻ thông minh (CCID-Chip Card Interface Device) thường bằng cách nhét thẻ
SVTH: NGUYỄN HỮU VIỆT

Trang 9



ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

vào khe đọc hoặc soi nó trước các bộ đọc đối với loại thẻ không cần tiếp xúc. USB
định nghĩa lớp thiết bị giao diện thẻ thông minh vì có một số thiết bị giao diện thẻ
thông minh (CCID) sử dụng giao diện USB để giao tiếp với máy tính.
2.4.3: Các thiết bị truyền thông (Modems and Networks)
Lớp các thiết bị truyền thông bao gồm hai loại thiết bị chính là: thiết bị thoại và
các thiết bị mạng tốc độ trung bình. Thiết bị thoại bao gồm điện thoại tương tự,
modem tương tự, Các bộ thích nghi đầu cuối ISDN và điện thoại số. Các thiết bị mạng
bao gồm modem ADSL, modem điện tín, 10BASE-T Ethernet adapter và Hub
2.4.4: Lớp thiết bị bảo mật thông tin
Lớp thiết bị bảo mật định nghĩa cách thức giúp ta điều khiển sự truy cập tới các
file, âm nhạc, hình ảnh hoặc các dữ liệu khác được truyền trên bus (ví dụ muốn copy
một file nào đó lên thiết bị hoặc đọc nội dung được lưu trong thiết bị thì phải có
password).
2.4.5 Lớp các thiết bị nâng cấp firmware
Lớp thiết bị cập nhật firmware định nghĩa một giao thức cho phép máy chủ gửi
firmware tăng cường hoặc sửa lỗi cho một thiết bị. Sau khi nhận sự nâng cấp firmware
thì thiết bị sẽ được thiết lập lại để sử dụng firmware mới của nó. Lớp thiết bị này được
biết đến khi chúng ta sử dụng chức năng bootloader cho vi điều khiển.
2.4.6:Lớp các thiết bị tương tác với con người (Human Interface)
Lớp thiết bị giao diện người sử dụng bao gồm các loại bàn phím, thiết bị con trỏ
và các bộ điều khiển dùng để chơi game. Đối với những thiết bị này, máy chủ đọc
thông báo từ thiết bị và gần như lập tức thực hiện theo các yêu cầu của người sử dụng
(các yêu cầu này mang tính giao tiếp trực tiếp giữa người sử dụng và máy) như sự ấn
phím, sự di chuyển của con chuột. Máy chủ phải đáp ứng đủ nhanh sao cho người sử

dụng không nhận thấy độ trễ rất nhỏ giữa yêu cầu của họ và các đáp ứng của máy.
2.4.7:Cầu chuyển đổi hồng ngoại (IrDA)
Lớp thiết bị cầu liên kết dữ liệu hồng ngoại định nghĩa những yêu cầu về phần
cứng và các giao thức cho phép việc truyền tải dữ liệu ở khoảng cách ngắn thông qua
SVTH: NGUYỄN HỮU VIỆT

Trang 10


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

năng lượng hồng ngoại. Thiết bị cầu liên kết dữ liệu hồng ngoại sẽ được nối với máy
chủ qua cổng USB cho phép máy chủ sử dụng giao diện USB để giám sát, điều khiển
và truyền dữ liệu qua một giao diện hồng ngoại.
2.4.8: Lớp các thiết bị lưu trữ thứ cấp (Mass Storage)
Lớp thiết bị lưu trữ thứ cấp chính là các thiết bị có thể truyền dữ liệu theo cả hai
hướng (từ máy chủ tới thiết bị hoặc từ thiết bị về máy chủ). Điển hình cho lớp thiết bị
này có thể kể đến các ổ đĩa mềm, ổ đĩa cứng, ổ CD, ổ DVD và ổ nhớ flash. Các loại
camera cũng có thể sử dụng lớp lưu trữ thứ cấp cho phép việc truy cập các file hình
ảnh trong bộ nhớ của camera. Trong các máy tính sử dụng hệ điều hành Windows, các
thiết bị thuộc lớp lưu trữ thứ cấp sẽ xuất hiện như các ổ đĩa trong cửa sổ My Computer
và hệ điều hành cho phép người sử dụng sao chép, di chuyển và xoá các dữ liệu trong
các thiết bị đó.
2.4.9:Lớp các thiết bị in ấn (Printers)
Lớp printer được áp dụng cho các thiết bị chuyển đổi dữ liệu nhận được thành
dạng văn bản, hình ảnh trên giấy hoặc một số dạng khác. Các máy in đời đầu chỉ in
được các dòng chữ trong những font đơn cố định. Đối với các máy in fun hay laser thì
có thể in nhiều dòng chữ dưới nhiều định dạng font khác nhau, đồng thời cũng có thể

in các hình ảnh phức tạp
2.4.10:Lớp các thiết bị lưu giữ hình ảnh tĩnh (Still Image Capture)
Lớp thiết bị này bao gồm các loại máy ảnh và máy quét. Công việc chủ yếu của
lớp thiết bị này là truyền dữ liệu hình ảnh từ thiết bị lên máy tính chủ. Ngoài ra một
vài thiết bị còn có thể nhận dữ liệu từ máy tính. Nếu tất cả những gì ta cần là truyền
các file hình ảnh từ một máy ảnh lên máy tính chủ thì ta có thể đưa một máy ảnh vào
lớp thiết bị lưu trữ thứ cấp.
2.4.11: Các thiết bị đo đạc và kiểm tra
Lớp các thiết bị đo lường và kiểm tra là để dành cho các thiết bị đo đạc như các
bộ ADC, DAC, cảm biến và các bộ chuyển đổi (chuyển đổi đơn vị vật lý chẳng hạn).
Các thiết bị này có thể là một khối riêng rẽ hoặc là một cạc trong một máy tính lớn.
SVTH: NGUYỄN HỮU VIỆT

Trang 11


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

2.4.12: Lớp thiết bị ảnh động (Video)
Lớp các thiết bị ảnh động: Lớp các thiết bị ảnh động hỗ trợ các thiết bị ghi hình
số xách tay, webcam, và một số thiết bị có chức năng gửi, nhận hay can chỉnh ảnh
động. Lớp thiết bị này cũng hỗ trợ việc truyền các ảnh tĩnh từ các thiết bị ảnh động.
2.4.13: Thực hiện các chức năng không tiêu chuẩn
Một vài thiết bị không có sự phù hợp rõ rệt với một lớp thiết bị được định nghĩa.
Ví dụ như các thiết bị điều khiển động cơ, rơ le, hay các cơ cấu chấp hành khác. Một
ví dụ khác là các thiết bị kết nối giữa hai máy vi tính (Cầu sử dụng USB). Nếu một
thiết bị đầu cuối mà không phù hợp để gán vào một lớp được định nghĩa thì người thiết
kế sẽ phải viết driver cho thiết bị để cung cấp cho máy chủ các thông tin giúp nó giao

tiếp được với thiết bị đó.
2.5:Lớp thiết bị giao diện người sử dụng (HID-Human Interface Device)
Lớp thiết bị giao diện người sử dụng là một trong những lớp đầu tiên được hệ
điều hành Windows hỗ trợ. Trên những chiếc máy tính cá nhân sử dụng Windows
98 hoặc các phiên bản muộn hơn thì những ứng dụng có thể giao tiếp với các thiết
bị giao diện người sử dụng bằng cách sử dụng các bộ điều khiển (driver) được xây
dựng sẵn trong hệ điều hành. Cũng chính vì lý do trên mà nhiều nhà cung cấp thiết
bị đầu cuối USB sử dụng lớp thiết bị giao diện người sử dụng cho sản phẩm của họ.
Chương này sẽ trình bày về lớp HID với mục đích giúp người đọc nhận định xem
một thiết bị nào đó có phù hợp để gán vào lớp HID hay không. Chỉ ra các yêu cầu
đối với vi chương trình (firmware) để định nghĩa một thiết bị thuộc lớp HID và cho
phép nó trao đổi dữ liệu với máy tính chủ.
2.5.1: Khái niệm về HID
Từ “giao diện người sử dụng” trong tên gọi của lớp HID để chỉ ra sự tương tác
trực tiếp giữa con người với thiết bị thuộc lớp này. Ví dụ một con chuột có thể phát
hiện việc chúng ta di chuyển hay nhấn chuột để gửi thông tin lên máy chủ và máy
chủ sử dụng thông tin này để đem lại các đáp ứng mà người sử dụng đang mong đợi
trong một ứng dụng cụ thể nào đó. Bên cạnh các thiết bị phổ biến của lớp HID như
bàn phím, con chuột, cần điều khiển (joystick) thì lớp HID còn bao gồm một số
SVTH: NGUYỄN HỮU VIỆT

Trang 12


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

thiết bị khác như các núm điều chỉnh, các chuyển mạch, nút nhấn, thanh trượt, điều
khiển từ xa, bàn phím điện thoại, các thiết bị điều khiển dùng cho game như bao

tay, bánh lái.
Tuy nhiên một thiết bị thuộc lớp HID không nhất thiết phải có một giao diện người
sử dụng. Một thiết bị có thể gán vào lớp HID khi các chức năng của nó nằm gọn
trong các giới hạn của đặc tả lớp HID. Dưới đây là các giới hạn và khả năng chủ
của các thiết bị thuộc lớp HID
Tất cả dữ liệu được trao đổi dưới cùng một dạng cấu trúc được gọi là báo cáo
(report). Máy chủ gửi và nhận dữ liệu bằng cách gửi các báo cáo và yêu cầu các báo
cáo trong các phương thức truyền điều khiển hoặc truyền ngắt. Định dạng báo cáo là
khá linh hoạt và nó có thể áp dụng cho rất nhiều dạng của dữ liệu song đối với mỗi
một báo cáo đã được định nghĩa thì kích cỡ của nó là xác định.
Một giao diện HID phải có một điểm cuối ngắt vào (interrupt IN enpoint) để gửi
dữ liệu lên máy chủ.
Một giao diện HID có thể có tối đa một điểm cuối ngắt vào và một điểm cuối
ngắt ra (interrupt OUT enpoint). Nếu ta cần nhiều điểm cuối ngắt hơn nữa thì ta có thể
tạo một thiết bị đa chức năng gồm nhiều thiết bị HID ở trong nó. Một ứng dụng phải
đảm bảo sự điều khiển riêng biệt tới từng HID trong thiết bị đa chức năng.
Điểm cuối ngắt vào cho phép HID gửi thông tin lên máy chủ ở những thời điểm
mà không hề biết trước. Ví dụ không thể có cách nào giúp máy tính biết trước khi nào
người sử dụng ấn một phím nào đó trên bàn phím do đó bộ điều khiển máy chủ sử
dụng giao tác ngắt để thăm dò có định kỳ nhằm thu lượm dữ liệu mới.
Tốc độ trao đổi dữ liệu là hạn chế, đặc biệt là khi truyền ở tốc độ thấp hoặc toàn
tốc. Điểm cuối ngắt tốc độ thấp không thể vượt quá 800 bytes/sec, với các điểm cuối
toàn tốc thì tốc độ tối đa là 64 KB/s còn điểm cuối ngắt tốc độ cao thì tốc độ tối đa vào
khoảng 24 MB/s .
Với bản Windows 98 Gold thì nó chỉ hỗ trợ USB 1.0 tức là không hỗ trợ điểm
cuối ngắt ra do đó tất cả dữ liệu truyền từ máy chủ xuống thiết bị phải sử dụng truyền
điều khiển.
Lưu ý là giao diện HID có thể chỉ là một trong nhiều kiểu giao diện được hỗ trợ
bởi một thiết bị. Ví dụ một loa USB có thể sử dụng phương thức truyền đẳng thời cho
SVTH: NGUYỄN HỮU VIỆT


Trang 13


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

âm thanh đồng thời cũng có thể có một giao diện HID cho việc điều khiển độ to nhỏ,
cân bằng, treble và bass – có nghĩa là với cùng một giao tiếp USB trên một thiết bị
nhưng ta có thể sử dụng hai lớp giao tiếp khác nhau.
2.5.2: Các yêu cầu về phần cứng
Các điểm cuối
Tất cả các kiểu truyền của HID sử dụng hoặc điểm cuối điều khiển hoặc điểm
cuối ngắt. Tất cả các HID phải có một điểm cuối ngắt vào để gửi dữ liệu tới máy
chủ. Một điểm cuối ngắt ra là tuỳ chọn.
Các loại báo cáo (Report)
Yêu cầu đối với một điểm cuối ngắt vào cho thấy mọi HID phải có tối thiểu là
một report đầu vào được định nghĩa trong bộ mô tả report của HID. Các report đầu ra
và report đặc biệt là tuỳ chọn.
Các yêu cầu có thể gửi từ Host tới thiết bị trong kiểu truyền điều khiển
Đặc tả HID định nghĩa 6 yêu cầu cụ thể mà Host có thể gửi tới thiết bị. Hai
trong số đó là Set_Report và Get_Report, đem lại cách để Host và thiết bị trao đổi
report thông qua kiểu truyền điều khiển. Host sử dụng Set_Report để gửi report và
Get_Report để nhận thông báo. Bốn yêu cầu còn lại liên quan tới việc cấu hình thiết
bị. Các yêu cầu Set_Idle và Get_Idle dùng để thiết lập và đọc tốc độ rỗi, cái cho biết
có hay không việc một thiết bị gửi lại dữ liệu không hề thay đổi kể từ lần thăm dò
cuối.
Các yêu cầu Set_Protocol và Get_Protocol thiết lập và đọc giá trị giao thức. Giá trị
giao thức sẽ cho biết một thiết bị có thể được sử dụng hay không ngay cả khi bộ

điều khiển đầy đủ của nó chưa được tải trên Host (ví dụ con chuột và bàn phím có
thể thực hiện chức năng của nó ngay trong giai đoạn khởi động - khi mà bộ điều
khiển chính thức của nó chưa được tải ở trên Host). Các loại yêu cầu vừa nêu sẽ
được trình bày chi tiết hơn ở đoạn sau.

SVTH: NGUYỄN HỮU VIỆT

Trang 14


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

Kiểu truyền ngắt
Các điểm cuối ngắt đem lại sự luân phiên trong việc trao đổi dữ liệu, đặc biệt
khi phía thu phải có được dữ liệu một cách nhanh chóng hoặc định kỳ. Truyền điều
khiển có thể bị trễ nếu bus quá bận trong khi băng thông cho truyền ngắt lại được
đảm bảo.
Khả năng thực hiện truyền ngắt ra (OUT) được bổ sung ở phiên bản 1.1 của chuẩn
USB. Windows 98 SE là phiên bản Windowsđầu tiên hỗ trợ USB 1.1 và HID 1.1.
2.5.3: Các yêu cầu về vi chương trình (Firmware)
Vi chương trình phải phù hợp với các yêu cầu của lớp thiết bị. Các bộ mô tả của
thiết bị phải bao gồm một bộ mô tả giao diện để định nghĩa thiết bị thuộc lớp HID,
một bộ mô tả HID và một bộ mô tả điểm cuối ngắt vào (IN). Bộ mô tả điểm cuối
ngắt ra (OUT) là tuỳ chọn. Vi chương trình cũng phải chứa một bộ mô tả report.
Một HID có thể hỗ trợ một hay nhiều report. Bộ mô tả report chỉ ra kích thước
và nội dung của dữ liệu chứa trong report cũng như cách mà phía thu sẽ sử dụng dữ
liệu nhận được. Các giá trị trong bộ mô tả sẽ chỉ ra mỗi report là một report đầu
vào, đầu ra hay là một report đặc biệt. Máy chủ nhận dữ liệu chứa trong report đầu

vào và gửi dữ liệu chứa trong report đầu ra. Một report đặc biệt có thể được truyền
theo cả hai hướng. Mọi thiết bị phải hỗ trợ tối thiểu một report đầu vào để máy chủ
có thể thu nhận dữ liệu thông qua truyền ngắt hoặc truyền điều khiển. Các report
đầu ra là tuỳ chọn. Để tương thích với Windows 98 Gold thì các thiết bị sử dụng các
report đầu ra nên hỗ trợ việc gửi report thông qua truyền điều khiển. Sử dụng truyền
ngắt cho các thông báo đầu ra là tuỳ chọn. Còn các thông báo đặc biệt cũng là tuỳ
chọn và nếu được sử dụng thì nó luôn được truyền thông qua truyền điều khiển.
2.5.4: Cách thức để chỉ ra một thiết bị thuộc lớp HID
Với bất kỳ thiết bị USB nào thuộc lớp HID thì các bộ mô tả của nó chỉ cho máy
chủ thông tin máy chủ cần biết để giao tiếp với thiết bị. Máy chủ tìm hiểu về giao
diện HID trong suốt quá trình thiết lập bằng cách gửi một yêu cầu Get_Descriptor.
Các bộ mô tả của một thiết bị thuộc lớp HID bao gồm: Bộ mô tả thiết bị (Device
Descriptor), bộ mô tả cấu hình (Configuration Descriptor), bộ mô tả giao diện
SVTH: NGUYỄN HỮU VIỆT

Trang 15


ĐỒ ÁN TỐT NGHIỆP

GVHD: ThS LÂM TĂNG ĐỨC

(Interface Descriptor), bộ mô tả HID (HID Descriptor), bộ mô tả điểm cuối ngắt vào
(IN interrupt Enpoint Descriptor), bộ mô tả điểm cuối ngắt ra (OUT Interrupt
Endpoint Descriptor) và bộ mô tả điểm cuối ngắt đặc biệt (Feature Interrupt
Endpoint Descriptor). Hai bộ mô tả sau cùng là tuỳ chọn (tức có thể có hoặc
không). Ngoài các bộ mô tả vừa liệt kê ở trên thiết bị thuộc lớp HID còn phải có
một bộ mô tả nữa đó là bộ mô tả Report (bộ mô tả Report sẽ được nói cụ thể sau).
2.5.5: Bộ mô tả báo cáo (Report Descriptor)
Một bộ mô tả thông báo định nghĩa khuôn dạng và công dụng của dữ liệu chứa

trong các report. Ví dụ nếu thiết bị là một con chuột thì dữ liệu trong report sẽ thông
báo cho máy chủ biết sự di chuyển của con chuột và các sự kiện click chuột, nếu
thiết bị là một bộ điều khiển rơle thì dữ liệu trong báo cáo sẽ cho biết rơle nào mở
và rơle nào đóng.
Bộ mô tả report cần phải đủ linh hoạt để điều khiển thiết bị với các mục đích
khác nhau. Dữ liệu lưu trong report cần được tối ưu hoá về kích thước để tránh lãng
phí không gian lưu trữ và rút ngắn thời gian khi truyền trên bus.
2.5.6: Các yêu cầu mà host có thể gửi tới một thiết bị thuộc lớp HID
Như đã trình bày ở trên, đặc tả HID định nghĩa 6 yêu cầu mà Host có thể gửi
tới một thiết bị thuộc lớp HID. Tất cả các HID phải hỗ trợ Get_Report, còn đối với
các thiết bị hỗ trợ giao thức khởi động thì phải đáp ứng được các yêu cầu
Get_Protocol và Set_Protocol. Các yêu cầu còn lại gồm Set_Report, Get_Idle và
Set_Idle là tuỳ chọn, trừ trường hợp đối với một keyboard sử dụng giao thức khởi
động phải hỗ trợ Set_Idle. Nếu một HID không có một điểm cuối ngắt ra (OUT)
hoặc nếu HID đang giao tiếp với một máy chủ chỉ hỗ trợ USB 1.0 như Windows 98
Gold chẳng hạn thì HID đó nếu muốn nhận report từ host nó phải hỗ trợ
Set_Report. Các yêu cầu ở trên sẽ được Host gửi tới thiết bị trong giai đoạn setup
của truyền điều khiển. Giai đoạn setup của truyền điều khiển diễn ra như sau: ban
đầu host phát ra gói thông báo setup, theo sau đó là gói dữ liệu dành cho giao tác
setup có kích thước của phần dữ liệu là 8 byte, cuối cùng host chờ gói bắt tay ACK
để biết rằng giao tác setup có thành công hay không. Các yêu cầu của host được

SVTH: NGUYỄN HỮU VIỆT

Trang 16


×