SCSI - Giao tiếp với USB Memory

Gần đây, do phải tìm hiểu khả năng porting USB Memory Driver sang NORTi nên đã có dịp tìm hiểu và tự confirm trên code một số điều liên quan đến thiết bị nhớ USB (hay ta vẫn gọi là USB Flash Memory). “USB Flash Memory” bao gồm USB: là tên giao diện cả mềm, cứng; Flash : là chất liệu của chip nhớ, Memory : là chỉ thiết bị nhớ nói chung. ...

tháng 3 15, 2016

Hiểu thêm về HID Report Descriptor

Đang hì hục đọc sách các kiểu con đà điều để hiểu kĩ hơn về HID Report Descriptor (Đặc tả cấu trúc dữ liệu trao đổi của HID). Thì tìm được bài này, nó giải thích hầu hết những chỗ khó hiểu một cách dễ hiểu, và đặc biệt có ví dụ minh họa. Giờ xin dịch lại bài này một cách khái quát nhất. Vì để hiểu bài này cần biết đến một vài khái niệm về USB, về HID Device, nữa nên để xin tóm tắt nội dung bên dưới như sau. Qua giao tiếp USB, máy tính có thể giao tiếp với rất nhiều thiết bị từ USB Flash Memory (hay gọi là USB), chuột, bàn phím,..etc. Vì có rất nhiều thiết bị có thể kết nối được, nên để dễ phân biệt và dễ dàng cho việc phát triển Driver trên máy tính, người ta chia thành các lớp thiết bị. Có rất nhiều lớp không thể kể hết được, nhưng xin có 2 lớp chính đó là Mass Storage Device (chính là USB Flash Memory đấy), và HID Device (chính là chuột, bàn phím). ...

tháng 1 28, 2016

USB cho Dev (Chp.01 - Giới thiệu)

USB - Một chuẩn giao tiếp phổ biến nhất (tính đến 2016), hãy cùng tìm hiểu một chút về nó. Bài này không phải dành cho người sử dụng bằng nhứng con số về tốc độ, hay cách cắm vật lý. Bài này là một bài dịch, mình thấy cần rất hữu ích khi bắt đầu phát triển sử dụng USB. Link gốc tại http://www.beyondlogic.org/usbnutshell/usb1.shtml Tóm tắt về USB Hiểu chuẩn USB để sử dụng trong phát triển Nếu bạn là người bắt đầu công việc phát triển sử dụng USB, thì quả thật nó không dễ dàng gì. Có đến 650 trang tài liệu đặc tả USB 2.0 specification, mà đó mới chỉ là mô tả chuẩn chung thôi. Nếu phát triển một thiết bị cụ thể, giả sử là HID (bàn phím, chuột..etc) thì có khi bạn phải đọc thêm 97 trang tài liệu đặc tả thiết bị USB Class Standards nữa. Nếu bạn là nhà phát triển Driver cho phía Host, thì bạn phải số tài liệu tương đương. Nhưng thật ra mà nói, chẳng có gì ở mấy cái tài liệu đặc tả đâu. ...

tháng 1 25, 2016

Tầng thấp của USB

USB - Khỏi cần nói thì nó cũng đã quá nổi tiếng về sự phổ biến rồi. Gần như mọi thứ đều mặc định phải có kết nối USB, cổng USB gần như là bắt buộc trên máy tính, và rất nhiều thiết bị điện tử ta thấy. Từ USB1.1 đến 2.0, rồi gần đây nhất là 3.0. Rồi gần đây người ta có nhắc nhiều đến USB Type C. Tất cả những mĩ từ đó dùng để PR tính năng của sản phẩm đến người dùng. Tất nhiên blog này tôi không muốn nói về những thứ đó. Tôi muốn về những thứ tôi nghĩ là cần phải biết để lập trình được với USB. Đó là phần mềm chạy trên thiết bị của 2 đầu dây USB. ...

tháng 1 25, 2016