PIC Vietnam

Go Back   PIC Vietnam > Truyền thông > Giao tiếp USB, CAN, I2C, SPI, USART...

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

Giao tiếp USB, CAN, I2C, SPI, USART... Những giao tiếp được tích hợp trên PIC

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 24-03-2009, 10:26 PM   #1
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi eldest_daica View Post
hi ,
Những điều bạn nói ,có nghĩa là với khối lượng lớn hay nhỏ thì với full speed mình chỉ có thể thiết lập được một kênh truyền dũ liệu giữa host và ngoại vi sau mỗi 1ms ,và vói hi speed là 125micoro giây .pic nào hỗ chợ chuẩn hi speed vậy bạn
Bạn có sử biết đến một chuẩn nào khác có tốc độ update cao hơn không ?

Rất mong được giúp đỡ .
Nói chính xác hơn, với full-speed thì bạn chỉ có thể gửi thông tin cập nhật trạng thái của ngoại vi sau mỗi 1 ms, và với hi-speed thì thời gian này là 125 us.

Cho đến thời điểm này, không có PIC nào hỗ trợ hi-speed.

Các cổng song song (LPT) và nối tiếp (COM) của máy tính thường có tốc độ update cao hơn USB (nhắc lại một lần nữa là USB không được thiết kế cho mục đích này). Các minh chứng có thể thấy là các mạch nạp đơn giản không có smart chip dùng cổng song song và nối tiếp, chúng có thể tạo ra xung tín hiệu có độ rộng chỉ khoảng vài us hay thậm chí nhỏ hơn nữa. Tuy nhiên, các giao tiếp loại này không thể đạt được data rate cao.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-03-2009, 10:39 PM   #2
binhbk2008
Nhập môn đệ tử
 
Tham gia ngày: Nov 2008
Bài gửi: 4
:
Trích:
Nguyên văn bởi eldest_daica View Post
Mình đọc tài liệu về usb .Có một vài điểm chưa dõ mong các bạn giải thích hộ với .
Trong usb 2.0 có frame là 1ms hay nó là microframe là 125micro giây .?
Tại sao tốc độ của full speed là 12Mbps và của Hi speed là 480Mbps ?
Tại sao tốc độ thấy ko thể dùng kiều bulk và iso ?Vì mình thấy việc cấu hình các endpoint ko có gì khác biệt giứa các kiều truyền ?
Trong một frame thì max ta có thể thực hiện được bao nhiêu transaction ứng với mỗi kiểu truyền ?
Mình cũng không được dõ lắm về thông số binterval trong endpoint descriptor ,mong các bạn giải thích kỹ hộ mình !
Một cái nữa là các bạn giải thích hộ mình về thiết bị hỗ chợ hi speed ?làm soa để biết được ?
Rất mong mõi người cùng thảo luận để có thể cùng nhau tiến lên!


mình chỉ giúp được bạn một ít thôi mong bạn thông cảm.
1. Trong 1 frame là 1ms. Chúng ta biết máy tính có thể nhận nhiều thiết bị USb cùng một lúc có thể đến 127 thiết bị. Vì vậy trong 1ms đó máy tính sẽ trao đổi dữ liệu với các thiết bị đó. Nếu không có thiết bị nào khác thì cũng mất 1ms mới quay trở lại thiết bị usb của mình. Tại sao tốc độ như vậy thì mình không biết tuy nhiên mình biết rằn tốc độ đó là tốc độ tối đa trên bus của máy tính để hỗ trợ cho tất cả các thiết bị USB khi chúng ta cắm vào. Con tốc độ thực sự của một thiết bị USB là với kiếu truyền Bulk max full speed : 1.216 Mbyte/s high speed là 53.248 Mbyte/s.
2. Thiết bị hỗ trợ high speed mình được biết là 18f4550.
3. Cấu hình end point mình thấy ở CCS nó hỗ trợ luôn rồi 0 is control, 1 is iso, 2 is bulk, 3 is interrupt.
Bạn nên đọc USB complete !
binhbk2008 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-03-2009, 11:39 PM   #3
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi binhbk2008 View Post
mình chỉ giúp được bạn một ít thôi mong bạn thông cảm.
1. Trong 1 frame là 1ms. Chúng ta biết máy tính có thể nhận nhiều thiết bị USb cùng một lúc có thể đến 127 thiết bị. Vì vậy trong 1ms đó máy tính sẽ trao đổi dữ liệu với các thiết bị đó. Nếu không có thiết bị nào khác thì cũng mất 1ms mới quay trở lại thiết bị usb của mình. Tại sao tốc độ như vậy thì mình không biết tuy nhiên mình biết rằn tốc độ đó là tốc độ tối đa trên bus của máy tính để hỗ trợ cho tất cả các thiết bị USB khi chúng ta cắm vào. Con tốc độ thực sự của một thiết bị USB là với kiếu truyền Bulk max full speed : 1.216 Mbyte/s high speed là 53.248 Mbyte/s.
2. Thiết bị hỗ trợ high speed mình được biết là 18f4550.
3. Cấu hình end point mình thấy ở CCS nó hỗ trợ luôn rồi 0 is control, 1 is iso, 2 is bulk, 3 is interrupt.
Bạn nên đọc USB complete !
1. Các tốc độ mà bạn đã nêu là tốc độ cực đại lý thuyết của một bus rỗi, được nói đến trong tài liệu "USB Complete".

2. Bạn có thể chỉ ra tài liệu nào nói rằng PIC18F4550 hỗ trợ hi-speed hay không? (Chứ tôi thấy trang này của Microchip http://www.microchip.com/wwwproducts...cName=en010300 lại nói rằng PIC18F4550 là thiết bị hỗ trợ full-speed. Còn trang này của Microchip http://www.microchip.com/stellent/id...GE&nodeId=2654 liệt kê tất cả các PIC hỗ trợ USB, nhưng không thấy có chip nào hỗ trợ hi-speed).

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 28-05-2009, 12:24 AM   #4
mgdaubo
Đệ tử 1 túi
 
Tham gia ngày: Oct 2006
Bài gửi: 19
:
cũng đang làm 1 device update data lên máy tính liên tục, nhưng em chỉ cần tần suất khoảng 1 lần/1ms là được. Em định dùng usb_cdc của CCS làm, usb->rs232 có baud tối đa đến 921600bps, ko biết với baud rate đó thì có phải là truyền 1 byte sẽ chỉ mất khoảng 10.85us ?? (8bit data, start bit, stop bit) và liệu có thể truyền liên tục các byte ?? nếu được như vậy thì nếu khung data chỉ 1 byte thì ta có thể có tần suất update data lên PC đạt gần 100000 lần/s (chỉ xét đến truyền data, chưa xét đến vđk còn phải làm việc khác) ??
Em chỉ mới trong giai đoạn thiết kế mạch chứ chưa thi công phần cứng nên chưa thử được, xin hỏi mấy anh có kinh nghiệm là với baud đó thì update data lên PC nhanh nhất được bao nhiêu?
mgdaubo vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 28-05-2009, 09:25 AM   #5
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi mgdaubo View Post
cũng đang làm 1 device update data lên máy tính liên tục, nhưng em chỉ cần tần suất khoảng 1 lần/1ms là được. Em định dùng usb_cdc của CCS làm, usb->rs232 có baud tối đa đến 921600bps, ko biết với baud rate đó thì có phải là truyền 1 byte sẽ chỉ mất khoảng 10.85us ?? (8bit data, start bit, stop bit) và liệu có thể truyền liên tục các byte ?? nếu được như vậy thì nếu khung data chỉ 1 byte thì ta có thể có tần suất update data lên PC đạt gần 100000 lần/s (chỉ xét đến truyền data, chưa xét đến vđk còn phải làm việc khác) ??
Em chỉ mới trong giai đoạn thiết kế mạch chứ chưa thi công phần cứng nên chưa thử được, xin hỏi mấy anh có kinh nghiệm là với baud đó thì update data lên PC nhanh nhất được bao nhiêu?
Baud rate nào thì bạn vẫn chỉ có thể gửi loạt dữ liệu mới sau mỗi ms. Tuy nhiên, nếu việc lấy mẫu dữ liệu là đều đặn và bạn chỉ gửi dữ liệu từ thiết bị lên máy tính thì bạn có thể dùng thuật toán để có tốc độ cập nhật dữ liệu trên PC cao hơn 1 lần/ms (các dao động ký PC-based là ví dụ cho trường hợp này).

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 30-05-2009, 11:52 PM   #6
ngocduc3000
Nhập môn đệ tử
 
Tham gia ngày: Oct 2008
Bài gửi: 6
:
Mấy anh ơi em tìm hiểu thử về USB nhưng lại không hiểu enumerate và endpoint là gì ? Mong các anh hổ trợ em với ! chuối quá..
ngocduc3000 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 31-05-2009, 12:03 AM   #7
phungtung
Đệ tử 1 túi
 
Tham gia ngày: Mar 2008
Bài gửi: 14
:
Tìm lớp dạy thêm đi thì hiểu ngay thôi.
phungtung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 04:34 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam