các bộ điều khiển sau
khi các giao diện đã được cho phép làm việc. Bước sau đây sẽ làm rõ hơn vấn
đề này.
6.2.12 Bộ điều khiển thiết bị của máy chủ lựa chọn một cấu hình một cấu hình
Sau khi tìm hiểu một thiết bị thông qua các bộ mô tả, bộ điều khiển thiết
bị yêu cầu một cấu hình nhờ việc gửi yêu cầu Set_Configuration với chỉ số cấu
hình tương ứng. Có một vài thiết bị chỉ hỗ trợ một cấu hình duy nhất. Còn nếu
thiết bị hỗ trợ nhiều cấu hình thì bộ điều khiển thiết bị có thể quyết định cấu
hình nào được yêu cầu dựa vào thông tin mà bộ điều khiển có về cách thức sử
dụng thiết bị hoặc bộ điều khiển có thể hỏi người sử dụng để chọn một cấu
hình thích hợp. Thiết bị đọc yêu cầu từ máy chủ và cho phép một cấu hình
tương ứng được tích cực (thiết bị sẽ làm việc với cấu hình đó), các cấu hình
còn lại của nó sẽ là không tích cực. Thiết bị lúc này đã được đưa tới trạng thái
được cấu hình (Configured state) và giao diện của thiết bị đã bắt đầu được phép
hoạt động.
Với các thiết bị đa chức năng, máy chủ gán các bộ điều khiển vào thời
điểm này. Cách thức cũng tương tự như các thiết bị khác đã được nêu ở mục năng sẽ có các bộ điều khiển khác Lê Ngọc Du - Lớp ĐT7 - K46 - ĐHBKHN 70
Đồ án tốt nghiệp Sơ lược về chuẩn USB 2.0
nhau cho các giao diện khác nhau và tại một thời điểm thì chỉ có một bộ điều
khiển làm việc tương ứng với giao diện đang hoạt động trên thiết bị. Như vậy đến lúc này thì thiết bị đã sẵn sàng cho việc sử dụng. Ngoài 4 trạng thái đã trải qua trong quá trình tìm hiểu ở trên là: Được cấp nguồn; mặc định; đã được gán địa chỉ và đã được cấu hình thì 2 trạng thái
còn lại của thiết bị là: được tháo ra và trạng thái treo.
Trạng thái đã tháo ra: Nếu hub không cấp nguồn tới các đường Vbus của
thiết bị thì thiết bị ở vào trạng thái đã tháo
tải về dòng từ phía thiết bị hoặc khi hub nhận được yêu cầu từ máy chủ buộc nó
cắt nguồn cấp cho thiết bị. Không được cấp nguồn trên các đường Vbus thì
thiết bị không thể giao tiếp với máy chủ do đó khi thiết bị vẫn gắn vào hub mà
không được cấp nguồn thì cũng giống như nó đã được tháo ra.
Trạng thái treo: Thiết bị sẽ ở vào trạng thái treo khi nó phát hiện thấy đã
3 ms trôi qua mà không thấy bất kỳ một tín hiệu nào trên bus (kể cả là gói SOF
(Start of Frame)). Các thiết bị đều phải hỗ trợ trạng thái này tức thiết bị phải có
khả năng phát hiện khoảng thời gian 3ms không tích cực của bus và đưa thiết bị
vào trạng thái treo. Khi ở vào trạng thái treo thì thiết bị nên giảm công suất tiêu
thụ từ bus (ví dụ như vi điều khiển của mạch sẽ vào trạng thái nguồn giảm).