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 Bài Trong Ngày 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 07-04-2009, 11:23 AM   #1
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Điều khiển LED qua USB

Nay đệ muốn điều khiển 10 LED thông qua cổng USB theo kiểu: trên màn hình máy tính có giao diện, sau khi qua cổng USB thì có PIC P16F877A viết bởi CCS. Vấn đề này không mới, song bản thân chưa có nhiều hiểu biết sâu sắc. Vì vậy, muốn tham khảo các sư huynh:
Mô hình thực hiện vấn đề này như thế nào. Rất mong hồi âm!
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 06:17 PM   #2
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 TANDEM View Post
Nay đệ muốn điều khiển 10 LED thông qua cổng USB theo kiểu: trên màn hình máy tính có giao diện, sau khi qua cổng USB thì có PIC P16F877A viết bởi CCS. Vấn đề này không mới, song bản thân chưa có nhiều hiểu biết sâu sắc. Vì vậy, muốn tham khảo các sư huynh:
Mô hình thực hiện vấn đề này như thế nào. Rất mong hồi âm!
Đơn giản nhất là bạn dùng mô hình sau:

Máy tính <=> USB-to-serial converter <=> PIC16F877A => LED

Giao diện trên máy tính chỉ cần dùng giao tiếp RS-232 qua cổng COM ảo của bộ USB-to-serial converter. PIC16877A chỉ cần dùng giao tiếp RS-232, và xuất dữ liệu ra LED. Những vấn đề này đều đã được đề cập ở picvietnam.

Cần chú ý là PIC16F877A không hỗ trợ giao tiếp USB, do đó nếu bạn muốn dùng trực tiếp giao tiếp USB (sẽ tốn nhiều thời gian và công sức) thì nên chuyển sang một PIC18 có hỗ trợ module ngoại vi USB như PIC18Fx450, hoặc PIC18Fx455, hoặc PIC18Fx550.

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 07-04-2009, 06:21 PM   #3
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Sao không thấy huynh nào giúp mình vậy?
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 06:28 PM   #4
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Cám ơn namqn! Quả thật “Giao diện trên máy tính chỉ cần dùng giao tiếp RS-232 qua cổng COM ảo của bộ USB-to-serial converter.” Đây là vấn đề tôi còn “Gà mờ” lắm, viết giao diện như thế nào? Bạn có thể cho tôi một đọan mẫu được không?
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 06:56 PM   #5
phungtung
Đệ tử 1 túi
 
Tham gia ngày: Mar 2008
Bài gửi: 14
:
You must find by yourself!
phungtung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 07:08 PM   #6
lequocbao
Đệ tử 6 túi
 
lequocbao's Avatar
 
Tham gia ngày: Oct 2008
Nơi Cư Ngụ: HCM
Bài gửi: 137
:
Trích:
Nguyên văn bởi TANDEM View Post
Cám ơn namqn! Quả thật “Giao diện trên máy tính chỉ cần dùng giao tiếp RS-232 qua cổng COM ảo của bộ USB-to-serial converter.” Đây là vấn đề tôi còn “Gà mờ” lắm, viết giao diện như thế nào? Bạn có thể cho tôi một đọan mẫu được không?
Bạn kiếm chổ nào gần nhà học một khóa cấp tốc về Visual Basic trước cái đã.
lequocbao vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 08:44 PM   #7
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Quả thật, đệ là dân ngoại đạo, cho nên lờ mờ về IT lắm, nay gặp vấn đề này cũng tự mình muốn mày mò để làm song khó quá. Bữa trước, đệ có đọc cái TUT “Hướng dẫn giao tiếp máy tính từ A đến Z”của minhtuan04 trên diễn đàn điện tử, tối về “vọc ” như hướng dẫn thì thành công liền với mô phỏng Protues. Có điều, bây giờ đệ muốn thay C# bởi Visual Basic, thay 8051 bởi PIC P16F887A. Với Pic thì đệ mới học và cũng có thể thao tác được với vài bài tập đơn giản, song với Visual Basic thì khó quá, cho nên bây giờ đệ muốn “ăn” xong phần “Máy tính <=> USB-to-serial converter” như lời trưởng lão PIC bang đã nói. Mong các huynh chỉ giúp!
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 09:16 PM   #8
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 TANDEM View Post
Quả thật, đệ là dân ngoại đạo, cho nên lờ mờ về IT lắm, nay gặp vấn đề này cũng tự mình muốn mày mò để làm song khó quá. Bữa trước, đệ có đọc cái TUT “Hướng dẫn giao tiếp máy tính từ A đến Z”của minhtuan04 trên diễn đàn điện tử, tối về “vọc ” như hướng dẫn thì thành công liền với mô phỏng Protues. Có điều, bây giờ đệ muốn thay C# bởi Visual Basic, thay 8051 bởi PIC P16F887A. Với Pic thì đệ mới học và cũng có thể thao tác được với vài bài tập đơn giản, song với Visual Basic thì khó quá, cho nên bây giờ đệ muốn “ăn” xong phần “Máy tính <=> USB-to-serial converter” như lời trưởng lão PIC bang đã nói. Mong các huynh chỉ giúp!
Bạn cứ xem cái USB-to-serial converter là một cổng COM, và đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=869

Việc ứng dụng thì thực ra khá đơn giản, chỉ cần dùng địa chỉ cổng COM ảo thay cho địa chỉ cổng COM trong hướng dẫn trên.

Về chi tiết cách tạo giao diện thì bạn có thể tham khảo thêm tutorial sau (viết cho VC++):
http://www.picvietnam.com/forum/showthread.php?t=274

Cả hai tutorial đều sử dụng MSComm control của Microsoft. Bạn có thể tham khảo cách dùng MSComm trong VB ở đây:
http://www.users.on.net/~cit/html/vi...m_control.html

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 07-04-2009, 10:49 PM   #9
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Cám ơn bác namqn! Em sẽ làm theo hướng dẫn, mắc chỗ nào em sẽ thảo luận với bác sau.
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 07-04-2009, 11:26 PM   #10
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Bác namqn à! như em biết thì địa chỉ cổng COM1 là 3F8 và COM2 là 2F8. Vậy địa chỉ của cổng COM ảo là bao nhiêu vậy?
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 12:43 AM   #11
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 TANDEM View Post
Bác namqn à! như em biết thì địa chỉ cổng COM1 là 3F8 và COM2 là 2F8. Vậy địa chỉ của cổng COM ảo là bao nhiêu vậy?
Bạn không cần địa chỉ kiểu đó đâu. Cổng COM ảo thường khác với COM1 .. COM4. Bạn chỉ cần xem nó xuất hiện ở máy của bạn dưới tên nào, giả thiết là COMx, rồi bạn dùng x đó trong câu lệnh thiết lập port (tức là thay MSComm1.CommPort = 1 thành MSComm1.CommPort = x). Thế thôi.

Nếu MSComm không thể mở cổng với giá trị x quá lớn thì bạn tìm cách thiết lập địa chỉ của cổng COM ảo thành một trong các giá trị COM1 .. COM4 (vì máy tính của bạn chắc sẽ không có đến 4 cổng COM). Các bộ USB-to-serial dùng chip của FTDI chắc chắn có thể thay đổi được địa chỉ theo cách vừa nói.

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 08-04-2009, 01:02 AM   #12
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Em hỏi thế này bác namqn ơi, khi nào thì PIC nhận ra rằng dữ liệu đã được gửi xuống từ PC vậy?
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-04-2009, 02:22 AM   #13
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Cám ơn bác "Trưởng lão PIC bang" hôm nay đệ mở được to con mắt hơn rồi! Chúc các bác ngủ ngon!
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-04-2009, 10:43 PM   #14
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Báo cáo với các sư huynh về dự án của đệ: "Điều khiển LED qua USB". Hiện nay đệ đã làm xong mô hình mà Trưởng lão PIC bang khuyến cáo 'Máy tính <=> USB-to-serial converter <=> PIC16F877A => LED', tuy nhiên đệ chỉ mới mô phỏng bằng Proteus và chưa giả lập được cổng COM. Còn một điều nữa là khi check các LED thì LED đã được check trước lại tắt, đệ không biết giải quyết thế nào? Nhờ các huynh chỉ giáo!
File Kèm Theo
File Type: rar COM.rar (65.2 KB, 330 lần tải)
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 26-04-2009, 03:59 PM   #15
TANDEM
Đệ tử 2 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 40
:
Bác Nam ơi, bác giúp em cái vấn đề mà em đang mắc với!
TANDEM vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Tags
reretret, trich


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à 08:00 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