View Single Post
Old 23-07-2006, 03:43 PM   #25
ntc
Đệ tử 8 túi
 
ntc's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: HCM city
Bài gửi: 264
:
Send a message via Yahoo to ntc
Trích:
Mình thấy nghiên cứu về USB thì có một phần mà mình cho là rất quan trọng đó là các lớp thiết bị được định nghĩa. Phần này sẽ giúp ta hình dung ra sản phẩm của mình sẽ trao đổi dữ liệu với host bằng kiểu truyền gì? Dùng loại điểm cuối nào? Định dạng của gói dữ liệu ra sao? Có cần phải viết driver cho sản phẩm hay không? có phải viết phần mềm ứng dụng trên host hay không?...Tuy phần này quan trọng như vậy song trong USB specification lại gần như không đả động đến còn USB complete thì dành nhiều thời gian để nói về lớp có ứng dụng mạnh nhất là lớp HID (Human Interface Device).
Về định nghĩa device, các vấn đề này cũng được đề cập đó chứ bạn. Nó nằm trong cái phần nói về các descriptor. Các descriptor sẽ là cơ sở để định nghĩa các lớp device. Tuy nhiên, nếu chỉ đọc trong cuốn "USB specification" thì khó mà hình dung ra được các vấn đề, thậm chí không hiểu được nó đang nói về cái gì nữa. Cái này, nếu đọc hiểu một firmware có sẵn, thì sẽ hình dung rõ ràng hơn, coi thử cái firrmware nó định nghĩa như thế nào, mình học theo để làm thì sẽ dễ dàng hơn. Mình nghĩ là như vậy.

Về định dạng của gói dữ liệu, chắc chắn tài liệu nào cũng sẽ đề cập. Ý của bạn muốn nói định dạng gói dữ liệu cho mục đích sử dụng? Cái đó sẽ tùy theo ứng dụng của mình để xây dựng cho phù hợp. Gói dữ liệu phục vụ cho mục đích ứng dụng sẽ phải có được sự thống nhất giữa chương trình trên máy tính (nếu có) và firmware.

USB Comlpete thì đưa ra các ví dụ về ứng dụng sơ sài quá, đúng là chỉ tập trung vào HID, mà mình thấy cũng chẳng đâu vào đâu. Trong khi USB specification thì tập trung nhiều vào việc mô tả USB, và phải nói là thực sự hết sức chi tiết.

Nếu chỉ dựa vào hai cuốn này thì việc xây dựng một ứng dụng USB cũng còn rất mơ hồ. Mình chọn cách tiếp cận các ứng dụng đã có sẵn, và dựa vào các tài liệu này để giải thích, và tìm hiểu tại sao ứng dụng lại được xây dựng như vầy, như vầy, firrmware tại sao lại viết như vầy, như vầy, ... từ đó các vấn đề về USB dần dần hiện lên rõ ràng hơn, và việc xây dựng các ứng dụng sẽ thuận lợi hơn.

Sau đó, nếu thích, có thể viết lại firmware, viết lại driver, ... Lúc đó các kiến thức đã được liên kết lại với nhau, và dễ tiến hành hơn.
__________________

ntc vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn