PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Giao tiếp USB, CAN, I2C, SPI, USART... (http://www.picvietnam.com/forum/forumdisplay.php?f=45)
-   -   USB có khủng khiếp như bạn nghĩ không? (http://www.picvietnam.com/forum/showthread.php?t=472)

HaiAu2005 23-08-2009 02:23 PM

Có ai có kinh nghiệm lập trình nhận và xuất dữ liệu qua cổng USB của một bảng USB I/O board đã có Driver (của hãng sản xuất), xem trao đổi ở địa chỉ sau:

http://www.dieukhien.net/vn/discuss....3047&pagenum=1

xin trao đổi giùm. Tôi đang muốn dùng Visual Studio/.NET để nhận dữ liệu và xuất dữ liệu tới bảng giao diện USB đã nạp driver (có file dll) rồi liệu có thể được không?

Hải Âu

falleaf 23-08-2009 08:41 PM

Trích:

Nguyên văn bởi HaiAu2005 (Post 28867)
Có ai có kinh nghiệm lập trình nhận và xuất dữ liệu qua cổng USB của một bảng USB I/O board đã có Driver (của hãng sản xuất), xem trao đổi ở địa chỉ sau:

http://www.dieukhien.net/vn/discuss....3047&pagenum=1

xin trao đổi giùm. Tôi đang muốn dùng Visual Studio/.NET để nhận dữ liệu và xuất dữ liệu tới bảng giao diện USB đã nạp driver (có file dll) rồi liệu có thể được không?

Hải Âu

Anh Hùng, cái này làm cực kỳ đơn giản, nếu cần thiết anh gửi yêu cầu lên, em nghĩ sẽ có nhà thiết kế làm được cái này cho anh bằng PIC.

Cần có yêu cầu cụ thể hơn.

Chúc vui

HaiAu2005 23-08-2009 11:14 PM

Nếu Falleap có gửi cho mấy dòng mã làm mẫu giao tiếp hoặc tài liệu nào hướng dẫn ngắn gọn thì tốt. Không/chưa cần làm bằng PIC, chỉ cần chương trình mẫu để sử dụng thiết bị ở Lab thôi. Mình không/chưa có nhu cầu và thời gian làm PIC, hiện tại để phục vụ cho việc phát triển thuật toán điều khiển dùng Driver và USB DAQ Card đã có sẵn thì sẽ nhanh hơn.

Hải Âu

falleaf 24-08-2009 07:38 AM

Trích:

Nguyên văn bởi HaiAu2005 (Post 28879)
Nếu Falleap có gửi cho mấy dòng mã làm mẫu giao tiếp hoặc tài liệu nào hướng dẫn ngắn gọn thì tốt. Không/chưa cần làm bằng PIC, chỉ cần chương trình mẫu để sử dụng thiết bị ở Lab thôi. Mình không/chưa có nhu cầu và thời gian làm PIC, hiện tại để phục vụ cho việc phát triển thuật toán điều khiển dùng Driver và USB DAQ Card đã có sẵn thì sẽ nhanh hơn.

Hải Âu

http://www.icsharpcode.net/OpenSourc...b/default.aspx

Nếu anh muốn tự làm cái này thì anh có thể lên mạng gõ đại một cái USB, nó có hàng đống cái người ta đã làm sẵn.

Cái này em nghĩ anh nên đặt hàng ai đó làm sẽ tốt hơn, vì nếu có code mẫu mà anh làm được thì em nghĩ chắc anh đã làm lâu rồi.

Chúc vui

ngocthanh07 28-08-2009 12:01 PM

Em thấy các anh dần dần bàn về những điều càng ngày càng to lớn và vượt xa kiến thức bình thường của đa số tụi em.
Cho em hỏi một câu

muốn dùng PIC(PIC nào phù hợp) để mở USB, đọc một file text hoặc tạo và ghi vào một file text thì nên làm những gì.
Phần biệt mấy cái Embeeded USB Host, Stack, Mass Storage, HID ... gì đó như thế nào. Chỉ liên quan đến việc mở và đọc file trên USB bằng cách dùng PIC thôi(không liên quan gì đến máy tính ) thì nên xem tài liệu về phần nào.
Quả thật em thấy cái này thật khủng khiếp. Mong các anh nói vài câu đơn giản định hướng giúp em

bien_van_khat 28-08-2009 12:56 PM

Trích:

Nguyên văn bởi ngocthanh07 (Post 29043)
muốn dùng PIC(PIC nào phù hợp) để mở USB, đọc một file text hoặc tạo và ghi vào một file text thì nên làm những gì.
Phần biệt mấy cái Embeeded USB Host, Stack, Mass Storage, HID ... gì đó như thế nào. Chỉ liên quan đến việc mở và đọc file trên USB bằng cách dùng PIC thôi(không liên quan gì đến máy tính ) thì nên xem tài liệu về phần nào.
Quả thật em thấy cái này thật khủng khiếp. Mong các anh nói vài câu đơn giản định hướng giúp em

Bus USB là bus Master-Slave, trong đó thiết bị điều khiển bus được gọi là USB host. USB host trong PC là full host, với tính năng đầy đủ.

Embedded Host: USB host với các tính năng tối thiểu, chỉ hỗ trợ 1 số thiết bị nhất định.

Sofware Stack: nói chung là 1 mớ các file mã nguồn, các phần mềm hỗ trợ để thực hiện một giao thức gì đó (USB, TCP/IP, Bluetooth, ZigBee...), để dựa trên nền đó bạn phát triển ứng dụng của bạn. Bạn ko cần phải tự code lại toàn bộ phần giao thức của nó.

Mass Storage Device (MSD): là 1 class của USB, các USB flash drive là MSD.

Nếu bạn muốn mở USB Flash Drive, đọc file trên đó thì cần dùng PIC có USB Embedded Host, có thể tham khảo ở đây:
http://forum.microchip.com/usb

Microchip cung cấp miễn phí stack và rất nhiều ví dụ để thực hiện công việc này.

Bạn có thể xem 1 số demo ở đây:

http://www.picvietnam.com/forum/showthread.php?t=3584

ngocthanh07 11-09-2009 12:07 PM

1 Attachment(s)
Trích:

Nguyên văn bởi bien_van_khat (Post 29046)
Nếu bạn muốn mở USB Flash Drive, đọc file trên đó thì cần dùng PIC có USB Embedded Host, có thể tham khảo ở đây:
http://forum.microchip.com/usb

Microchip cung cấp miễn phí stack và rất nhiều ví dụ để thực hiện công việc này.
[/url]

Mình muốn vẽ mạch sử dụng PIC32 để đọc và ghi dữ liệu vào file (Tức là USB Embbedded HOST ?), tham khảo cái
PIC32 USB Starter kit thì thấy nó vẽ sơ đồ như hình đính kèm
Mình muốn hỏi liệu có cần con TPS20X1B (datasheet
http://focus.ti.com/lit/ds/symlink/tps2041b.pdf
)

Nếu cần dùng con đó, thì ở VN có thể mua có không, hoặc nếu không mua có thì có con nào thay thế có thể mua đuợc không ?
Sợ vẽ mạch ra, mua PIC về mà không có con đó cái phải bỏ thì uổng phí.


Mình có tham khảo cái luồng R&P USB Embedded host. http://www.picvietnam.com/forum/showthread.php?t=3584
Trong luồn đó theo sơ đồ R&P vẽ thì đưa thẳng chân VBUS của PIC24 vào chân nguồn của USB rồi nói chúng vào 5V, không hề dùng đến TPS20X1B, liệu với PIC32 mình có thể làm vậy không ?

Thank

bien_van_khat 11-09-2009 12:55 PM

Trích:

Nguyên văn bởi ngocthanh07 (Post 29515)
Mình muốn vẽ mạch sử dụng PIC32 để đọc và ghi dữ liệu vào file (Tức là USB Embbedded HOST ?), tham khảo cái
PIC32 USB Starter kit thì thấy nó vẽ sơ đồ như hình đính kèm
Mình muốn hỏi liệu có cần con TPS20X1B (datasheet
http://focus.ti.com/lit/ds/symlink/tps2041b.pdf
)

Nếu cần dùng con đó, thì ở VN có thể mua có không, hoặc nếu không mua có thì có con nào thay thế có thể mua đuợc không ?
Sợ vẽ mạch ra, mua PIC về mà không có con đó cái phải bỏ thì uổng phí.


Mình có tham khảo cái luồng R&P USB Embedded host. http://www.picvietnam.com/forum/showthread.php?t=3584
Trong luồn đó theo sơ đồ R&P vẽ thì đưa thẳng chân VBUS của PIC24 vào chân nguồn của USB rồi nói chúng vào 5V, không hề dùng đến TPS20X1B, liệu với PIC32 mình có thể làm vậy không ?

Thank

Theo PIC32 Family Reference Manual chân Vbus của PIC luôn luôn phải nối vào chân Vbus trên USB connector .

Ở sơ đồ trên, con TPS20x1B dùng để đóng mở nguồn 5v cấp cho device. Nguồn này được đóng mở bằng chân VUSBON, do module USB host điều khiển.

Trong sơ đồ USB Embedded host của RP, PIC được thiết kế chỉ đóng vai trò là Host do đó nó luôn phải cấp nguồn ra USB connector, nên Vbus của connector luôn nối lên 5v.

Đối với PIC32 USB Starter kit, PIC32 được thiết kế để có thể là Host hoặc là Device do đó nó cần phải có cơ chế để ngắt nguồn cấp ra USB connector khi là device. Ở đây người thiết kế sử dụng 1 con switch, thực chất tương đương 1 con MOSFET.

Do đó:
* Nếu bạn muốn PIC của bạn vừa có thể làm device vừa có thể làm host thì bạn cần đặt 1 cái switch ở chân Vbus của USB Connector. Khi làm host thì đóng, khi làm device thì hở. Switch có thể là jumper hay 1 con FET. Trong trường hợp trên board của bạn không có nguồn 5v. Bạn có thể dùng MCP1253-33X50 để chuyển mức từ 3v3 lên 5v, có khả năng cấp 100mA vừa đủ với spec của USB

* Nếu bạn ko cần device mode, thì nối thẳng nó lên 5v.

vagabondtt1503 21-09-2009 03:37 PM

Xin được giúp đỡ:

Mình sử dụng source giao tiếp HID bằng C++ tại trang web http://www.lvr.com/hidpage.htm nhưng khi về build bằng visual c++ 2008 thì xuất hiện lỗi

http://www.fileden.com/files/2007/12...0/errors_1.jpg

sau khi lên google tìm kiếm thì thấy có 1 bài viết hướng dẫn include thêm file wdm.h trong WDK,sau khi thực hiện thì xuất hiện 1 lỗi khác


http://www.fileden.com/files/2007/12...0/errors_2.jpg



Lỗi này mình không cách nào khắc phục được,tìm kiếm cũng không thấy.Mong mọi người có thể giúp đỡ.Xin cảm ơn


Mình sử dụng:

OS: Window 7 professional
IDE : visual studio 2008 (C++)
WDK:7600.16385.0
SDK : v7.0

Một lần nữa rất mong sự giúp đỡ của mọi người

ToanZ8 23-10-2009 04:55 PM

Z
 
Trích:

Nguyên văn bởi hopeman (Post 16601)
trước đây mình dùng thạch anh 20M thì cắm vào cái là nó nhận ra chuẩn HID ngay, giờ mình thay bằng thạch anh 48M nhằm mục đích chạy nhanh hơn thì USB HID ko nhận ra nữa, có ai giải thích giúp mình với? mình cấu hình ban đầu như sau :
#define USB_USE_FULL_SPEED TRUE
#include <18F4550.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CP UDIV1,VREGEN
#use delay(clock=48000000)

liệu có gì sai ở đây ko nhể vì thực sự mình ko hiểu cái đám cấu hình này lắm, nếu phải sửa thì sửa như thế nào để mạch với ta 48M chạy được?

#fuses PLL12

HaiAu2005 04-11-2009 07:48 PM

To bác bqviet: Hồi trước trao đổi trong mục này về bảng giao diện USB, bác bqviet có nhận làm một cái USB I/O board (các nội dung trao đổi đã bị xóa mất tiêu rồi), đã lâu không thấy bác nhắn gì không hiểu tình hình bác thực hiện đến đâu rồi. Bác PM cho tôi hoặc email tới kamome.seagull@gmail.com cho tôi biết chi tiết để tôi nhắn người nhà đến gửi tiền cho bác (chắc có lẽ bác tổng LMĐ của bác không ứng trước?) và nhận hàng chuyển cho tôi.

Lần tới khi có dịp đi VN thế nào cũng phải bố trí thời gian ở HN gặp bác LMĐ và bác dài dài chút.

Hải Âu

chau_2007 27-03-2010 03:29 AM

Bố cha cái thằng INTEL, phát minh ra cái giao tiếp USB gì mà khó thế. Protocol lằng nhằng, dân IT đọc chưa chắc nổi

NBTrung 10-11-2010 10:34 AM

http://www.ebook.edu.vn/?page=1.39&view=11009 chắc đây là bản dịch của bác Ngọc Du rồi. Em hiện đang làm nhg khi cắm usb vào PC có hiện tượng PC bị dump. Bác nào có exp chỉ giúp em với, em cảm ơn nhiều!

CHITAIDEPTRAI 29-03-2011 03:23 AM

em đang làm đồ án về lập trình driver cho cong usb,demo trên webcome bac nào biet thi chỉ cho em với.

trietbuivien 05-10-2011 09:12 PM

thật sự là cái vấn đề Pic giao tiếp với máy tính này cực kỳ phức tạp. thời gian thì ko co nhiều để đầu tư mà mấy ông thầy cứ bắt sinh viên làm mấy cái đề tài cực kỳ phức tạp. nhức cả đầu. bà con cô bác có tài liệu cho e tham khảo về vần đề này ko?


Múi giờ GMT. Hiện tại là 10:25 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam