PDA

View Full Version : XIn hỏi lập trình đơn giản với cổng USB


sungucu123
17-02-2009, 11:49 PM
Mình đang muốn làm 1 chương trình về USB, nhưng điều kiện là mình không có các con VDK để thử nghiệm, đồng thời mục đích của mình là: Dựa vào cổng USB để điều khiển trực tiếp 1 con Mô tơ bước.

Mình đã đọc khá nhiều những bài viết trong diễn đàn, rất tiếc hầu hết đều cần VDK.

Vậy bạn nào có hướng giải quyết đơn giản hơn cho bài toán của mình không?

Mình xin cảm ơn !

namqn
18-02-2009, 12:39 AM
Mình đang muốn làm 1 chương trình về USB, nhưng điều kiện là mình không có các con VDK để thử nghiệm, đồng thời mục đích của mình là: Dựa vào cổng USB để điều khiển trực tiếp 1 con Mô tơ bước.

Mình đã đọc khá nhiều những bài viết trong diễn đàn, rất tiếc hầu hết đều cần VDK.

Vậy bạn nào có hướng giải quyết đơn giản hơn cho bài toán của mình không?

Mình xin cảm ơn !
Điều khiển trực tiếp ngoại vi bằng máy tính thông qua USB: Mission Impossible!

USB là một giao thức nối tiếp. Cổng USB được nối vào một bus, bao gồm 4 dây: hai dây nguồn, và hai dây dữ liệu dạng vi sai. Vi mạch host USB của máy tính điều khiển hoạt động của hai dây dữ liệu, và bạn thậm chí không thể điều chỉnh tùy ý trạng thái của các dây dữ liệu này.

Cổng USB hoàn toàn không giống cổng COM hay LPT, là những cổng mà bạn có địa chỉ để ghi dữ liệu, hay lệnh điều khiển.

Thân,

txnghia
18-02-2009, 02:10 PM
USB rất tiện lợi cho người dùng. Càng tiện lợi cho người dùng bao nhiêu thì người khai triển lập trình cho USB phức tạp bấy nhiêu. Khi cắp một thiết bị USB vào ổ USB của máy tính, hàng loạt cách chuổi dữ liệu trao đổi giữa thiết bị USB và máy tính được thực hiện theo nghi thức qui định. Để làm một mạch điện với các linh kiện điện tử thông thường tạo ra một chức năng như VĐK USB thì gần như là không thể.

Tuy nhiên một cách đơn giản bạn có thể làm là dùng một bộ chuyển USB-UART (Cổng nối tiếp hay COM.) Phần điều khiển động cơ sẽ nối đến UART. Bên trong bộ chuyển này có VĐK USB và nó sẽ đóng vai trò thực hiện nghi thức trao đổi với máy tính. Và cái hay nữa của bộ chuyển USB-UART là khi bạn cắm bộ này vào máy tính, thì máy tính sẽ tự động nhận ra được một thiết bị USB được cắm vào và nó tạo ra một cổng nối tiếp UART ảo. Tuy là ảo nhưng nó hoạt động như một cổng nối tiếp thông thường. Khi lập trình bạn chỉ cần lập trình gởi và nhận các dữ liệu điểu khiển qua cổng nối tiếp này, mà không cần để ý USB.

Có bộ chuyển USB-UART có thể mua sẵn ngoài thị trườing hay có thể mua chíp về làm.

Cảm ơn namqn đã ủng hộ cho myPIC32. I'm in the Great 8 :)

http://mypic32.com/web/guest

txnghia