Download miễn phí Đề tài Thiết kế và thi công mạch hẹn giờ đa năng có thể cấu hình qua cổng USB


Phần 1: Tổng quan về PIC và các trình biên dịch C cho PIC
I) Tổng quan về vi điều khiển PIC
II) Phần đánh giá trên forum của CCS
III) Phần đánh giá trên forum của microchip
IV) Quyết định loại trình biên dịch
Phần 2: Giao tiếp USB
Phần 3: Thiết kế mạch giao tiếp USB thuộc lớp HID
I) Mục tiêu
II) Thi công mạch
III) Viết firmware
Phần 4: Viết ứng dụng giao tiếp chuẩn USB trên host
I) Giới thiệu chung về lập trình ứng dụng trên host
II) Các quy trình để nhận biết một thiết bị USB
III) Các hàm Read và Write
Giáo viên HD: Bùi Văn Hiếu


Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

át hiện và xử lý lỗi:
Nếu một thiết bị không trả về bắt tay, host sẽ thử gửi lại thêm 2 lần nữa. Nếu sau đó
vẫn không nhận được bắt tay như mong đợi, host sẽ chấm dứt việc giao tiếp với thiết bi
cho đến khi lỗi trên được làm rõ. Nếu thiết bị cứ trả về NAK thì host sẽ tiếp tục gửi lại
cho đến khi nào nhận được ACK mới dừng. Truyền ngắt có thể sử dụng data toggle bit để
chắc chắn dữ liệu không thất lạc trong lúc truyền nhận. Tuy nhiên nếu ứng dụng chỉ quan
tâm đến thời gian trễ không quan tâm đến dữ liệu nhận được nó không dùng data toggle
bit.
4.Truyền đồng bộ(isochronous transfers):
Phần 2: Giao tiếp USB
SV:Trần Quốc Gia Phú, Trần Hạ Long - 26
-Truyền đồng bộ như dòng chảy, một kiểu truyền thời gian thực. Kiểu truyền này thích
hợp nhất với các ứng dụng cần truyền dữ liệu với một tốc độ nhất định, hay một thời gian
đã được xác định trước, với mức độ bỏ qua lỗi có thể chấp nhận được. Ở tốc độ full
truyền đồng bộ truyền nhiều dữ liệu trên một frame hơn truyền ngắt. Nhưng bù lại kiểu
truyền này không cung cấp cơ chế truyền lại các gói dữ liệu khi xảy ra lỗi như mất gói dữ
liệu, nhận sai dữ liệu. Các ứng dụng sử dụng truyền đồng bộ như là giải mã âm thanh và
âm nhạc được vận hành ở thời gian thực.
-Thực tế là dữ liệu trong truyền đồng bô không được truyền ở một tốc độ cố định,
Truyền đồng bộ chỉ là cách bảo đảm cho việc truyền một khối lượng lớn dữ liệu
được truyền nhanh chóng trong lúc bus không còn nhiều băng thông, ngay cả khi kiểu
truyền này không bắt buộc phải vận chuyển ở thời gian thực. Không giống như kiểu
truyền bulk, khi một lần truyền đồng bộ được bắt đầu, host phải bảo đảm thời gian tích
cực để có thể gửi dữ liệu tại một tốc độ cố định, vì nguyên nhân này nên việc kiểm tra tốc
độ trên đường truyền xảy ra định kỳ trong những khoảng thời gian rất nhỏ.
a)Tính sẵn sàng:
Kiểu truyền này chỉ thực hiện được ở tốc độ cao hay tốc độ full. Giống như truyền
bulk kiểu truyền này không bắt buộc tất cả các thiết bị phải hỗ trợ. Một vài lớp thiết bị
chuyên biệt hỗ trợ kiểu truyền này theo mục đích của người sử dụng.
b)Cấu trúc:
-Do kiểu truyền có tên là đồng bộ nên nó có khả năng truyền với một tốc độ cố định,
với một số định nghĩa trước số byte được truyền trên mỗi frame hay microframe. Ngoài
truyền đồng bộ ra thì không có kiểu truyền nào có thể truyền số byte được định nghĩa
trước trên mỗi frame(ngoại trừ truyền ngắt có khả năng đảm bảo thời gian trễ ngắn nhất.
-Truyền đồng bộ hoạt động ở tốc độ full bao gồm một giao dịch IN hay OUT trên
một hay nhiều frame có khoảng cách bằng nhau. Khi hoạt động ở tốc độ cao thì kiểu
truyền có nhiều chức năng hơn, một yêu cầu có ba giao dịch trên một frame, và có thể nhỏ
hơn khi 1 giao dịch truyền trên 32,768 microframe. Truyền đồng bộ vận chuyển dữ liệu
theo 1 hướng nhất định. Tất cả các truyền chỉ có thể là gồm giao dịch IN hay là giao
dịch OUT thôi. Nếu người sử dụng có nhu cầu cấu hình kiểu truyền theo 2 hướng thì phải
chia truyền và đường ống thành 2 phần cho mỗi hướng.
-Trước khi cấu hình 1 đường ống, host phải so sánh kích thước buffer(buffer size)
được yêu cầu với vùng buffer tích cực còn lại, băng thông đang được sử dụng trong
đường bus để quyết định khi nào băng thông yêu cầu được sẵn sàng sử dụng. Một lần
truyền đồng bộ ở tốc độ full được phép tối đa 1023 byte trên frame sử dụng 69% băng
thông, nếu lúc này tồn tại một thiết bị thứ hai sử dụng truyền đồng bộ trên cùng một hệ
thống thì host sẽ từ chối cung cấp đường ống cho nó vì băng thông còn lại không đủ cho
phép thực hiện truyền. Nếu hai thiết bị này. Nếu thiết bị này này sử dụng một giao tiếp
thay thế khác với các gói dữ liệu nhỏ hơn hay một microframe chứa nhiều gói dữ liệu nhỏ
hơn thì host có thể cho phép, hay driver cố gắng thử lại lần vào các lần sau với hy vọng
bus được phép tích cực. Khi thiết bị đã được cấu hình, các lần truyền được bảo đảm thời
gian cần thiết.
Phần 2: Giao tiếp USB
SV:Trần Quốc Gia Phú, Trần Hạ Long - 27
Hình 6: Giao dịch đồng bộ IN và OUT.
c)Kích thước gói dữ liệu:
khi hoạt động ở tốc độ full kích thước gói tối đa là 1023 byte, ở tốc độ cao có thể lên
đến 1024 byte. Nếu một lượng dữ liệu không vừa một gói,host sẽ chia một lần truyền ra
làm nhiều giao dịch
d)Tốc độ:
-Thực hiện việc truyền ở tốc độ full có thể đạt đến 1.023 MByte/giây, tốc độ nhỏ nhất
là 1Kbyte/giây. Nó dành 31% băng thông bus cho các loại truyền khác. Giao thức có
overhead là 9 byte tren một frame cho 1 lần truyền với một gói dữ liệu, hay thấp hơn 1%
cho một lần giao dịch 1023 byte. Băng thông được yêu cầu tối thiểu cho truyền ở tốc độ
full là 1 byte trên frame hay một Kbyte/giây.
-Một giao dịch đồng bộ có thể vận chuyển được tới 1024 byte. Một điểm cuối đồng bộ
yêu cầu nhiều hơn 1024 byte trên microframe có thể yêu cầu 2 hay 3 giao dịch trên
microframe, cho phép tốc độ tối đa là 24.576 MByte/giây. Một điểm cuối cần đa giao
dịch trên một frame là điểm cuối có băng thông cao. Overhead giao thức có 38 byte trên
một lần truyền với 1 gói dữ liệu.
Phần 2: Giao tiếp USB
SV:Trần Quốc Gia Phú, Trần Hạ Long - 28
-Vì truyền đồng bộ ở tốc cao không được thực hiện một giao dịch trong mỗi frame
hay microframe, nó có thể yêu cầu năng thông ít hơn khi trong tốc độ full. Băng thông
thấp nhất là một byte cho 32,673 microframe, làm cho việc truyền 1 byte mất khoảng
4.096 giây. Tuy nhiên, các điểm cuối có thể truyền dữ liệu ít hơn số băng thông được truy
xuất tối đa bằng việc bỏ qua giao dịch tích cực hay truyền ít hơn số dữ liệu tối đa trên
một lần truyền.
-Giống như truyền ngắt, truyền đồng bộ có thể sử dụng nhiều hơn 80% của một
microframe. Khi truyền tổ hợp gồm một truyền và một truyền ngắt ở cùng đồng bộ tốc độ
full có thể sử dụng nhiều hơn 90% của một frame. Các bus rảnh tốc độ cao khác có thể
mang một lúc 2 truyền đồng bộ với tốc độ tối đa.
-Cái giá phải trả cho việc đảm bảo sự phân phối thời gian một khối lớn các dữ liệu
bằng viêc thực hiện truyền không có phát hiện lỗi. Do đó kiểu truyền này chỉ có thể sử
dụng được trong các ứng dụng có thể chấp nhận các lỗi nhỏ.
V)Sự điểm danh:
Trước khi ứng dụng có thể liên lạc được với thiết bị, host cấn phải nhận biết về thiết bị
và gán địa chỉ cho thiết bị. Điểm danh là sự trao đổi đầu tiên về thông tin của thiết bị để
hoàn thành việc nhận biết. Tiến trình bao gồm gán một địa chỉ cho thiết bị, đọc cấu trúc
dữ liệu từ thiết bị, cuối cùng là lựa chọn cấu hình từ các option đã được chọn thông qua
dữ liệu đã truy xuất. Thiết bị được cấu hình và sẵn sàng để vận chuyển dữ liệu thông qua
các điểm cuối đã cấu hình.
1.Tiến trình:
-Một trong những nhiệm vụ của hub là phát hiện thiết bị gắn vào h...
 

Các chủ đề có liên quan khác

Top