Trích:
Nguyên văn bởi eldest_daica
thân ,
Mục đích của mình là truyền thông số về dòng điện lên máy tính ,sau đó đk động cơ .
Do đk vòng lặp dòng điện nên mình nó đáp ứng nhanh trong khoảng 0.1 ms .
Vì thời gian trao đổi là của frames là 1ms .Mình quan tâm đến vấn đề là trong một frames ấy mình cấn thực hiện được khoảng 10 transaction với các endpoint in và 10 transaction với các endpoint out .
Mục đích của mình không phải gửi một lần với số lượng dữ liệu lớn mà là thực hiện được cành nhiều trao đổi dữ liệu nhưng với kích thước nhỏ trong 1frames để đảm bảo đk dòng điện .
Mình ban đầu của mình là đk một động cơ ,sau thì đk nhiều hơn ,nên mình rất quan tâm đến vấn đề này !
|
=> Một giải pháp, theo tôi thế này:
Như bạn biết: một frame (1ms) có 8 micro-frame (125us). Bạn có thể sử dụng chế độ interrupt trong USB host controller 2.0. Ta có thể đặt ngưỡng để xảy ra interrupt là từ 1 tới 8 micro-frame trong frame sẽ xảy ra interrupt.
Note: Interrupt này là đường interrupt của USB về Interrupt controller của CPU.
Điều kiện để làm đc điều này là chip ( MCU, SOC, Processor ..) của bạn hỗ trợ điều này.
Còn tùy vào tần số làm việc của chip bạn nữa.
Regards,