PIC Vietnam

Go Back   PIC Vietnam > Các Đề Tài > Các dự án mã nguồn mở

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

Các dự án mã nguồn mở Nếu bạn không mở mã nguồn, ít nhất là một phần nào đó trong dự án của bạn, xin đừng vào đây.

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 12-08-2009, 02:28 PM   #1
phamminhtuan
Super Moderator
 
phamminhtuan's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 150
:
Ứng dụng chuyển đổi USB2COM dùng PIC giá rẻ

Đây là thiết kế mạch chuyển đổi từ USB sang UART và ngược lại được xây dựng trên USB Stack của MCHP( sửa chữa + bổ sung) dành cho PIC18F14K50 giá rẻ.

Những đặc tính của thiết kế USB2UART
  • UART I/F Supports 7 / 8 Bit Data, 1 / 2 Stop Bits and Odd/Even/Mark/Space/No Parity
  • Baudrate đạt tối đa 115200, có thể tùy chỉnh bằng software(CDC class) trên máy tính
  • Set_Line_Coding, Set_Control_Line_State, Get_Line_Coding, and Serial_State commands
  • Data flow control (Half - Only RTS)
  • USB transmiter interrupts
  • USB Full Speed, Low Speed
  • VIRTUAL COM PORT (VCP) DRIVERS XP, Vista, Windows 7

và những ưu điểm của PIC18F14K50
  • 1 Enhanced Capture/Compare/PWM
  • Master Synchronous Serial Port (I2C, SPI)
  • Enhanced Addressable USART module hỗ trợ RS485, RS422, LIN2.0
  • 10-bit, up to 9-channel Analog-to-Digital
  • Comparator with SR Latch -> Hỗ trợ Touch
  • 256 Bytes EEPROM

Ứng dụng:
  • Ứng dụng chủ yếu là làm cổng COM ảo, chuyển đổi USB <->UART
  • Ứng dụng giao tiếp máy tính đơn giản
  • Ứng dụng đo lường
  • Điều khiển mạng RS485
  • Và còn nhiều nữa vì Code có thể sửa, có hướng dẫn và giải đáp thắc mắc tại thread này

BOM:
Item Quantity Reference Part
______________________________________________

1 1 C5 0.1uF
2 2 C6,C7 27p
3 1 C8 0.47uF
4 1 J9 CON2
5 1 J10 CON5
6 1 U2 PIC18F14k50
7 1 Y2 12MHz

Mạch nguyên lý:

Nếu dùng Flow Control thì cần bỏ comment như hình dưới trong file usb_config.h
và định nghĩa 2 PIN cho Flow Control

Sau hoàn thành mạch, kết nối vào máy tính thì được yêu cầu driver cho mạch, trong folder inf có đính kèm







Có thể chỉnh tốc độ Baud bằng phần mềm thông thường như sử dụng với cổng COM thật.
Firmware + Code(included .inf) + Schematic (Tested)
File Kèm Theo
File Type: zip HEX_USB2COM_PIC18F14K50.zip (5.9 KB, 420 lần tải)
File Type: zip Schematic_USB2COM_PIC18F14K50.zip (11.6 KB, 470 lần tải)
File Type: zip Code + INF.zip (126.2 KB, 874 lần tải)

thay đổi nội dung bởi: phamminhtuan, 29-09-2009 lúc 04:54 PM.
phamminhtuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-08-2009, 06:56 PM   #2
vidieukhiencdn
Đệ tử 7 túi
 
vidieukhiencdn's Avatar
 
Tham gia ngày: May 2009
Bài gửi: 242
:
Con ic này giá bán lẻ là bao nhiêu vậy anh
vidieukhiencdn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-08-2009, 10:34 PM   #3
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Giá 1-9 con = 2.39*1.1(vận chuyển)*1.1(VAT)*18,700 (tỉ giá)
Giá 10-25 con = 2.39*1.05*1.1*18,700
Giá 26-99 con = 2.19*1.05*1.1*18,700

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-08-2009, 01:04 AM   #4
jackiele
Đệ tử 3 túi
 
Tham gia ngày: Jun 2008
Bài gửi: 51
:
Hihi! Đắt quá nhỉ! Trong khi con PL2303Hx - con chip chuyển USB to UART - trên thị trường khoảng 22000 Vnđ.

Tuy nhiên nếu dùng con này để làm thiết bị giao tiếp với máy tính qua USB thì có vẽ rẽ thiệt so với 18F2550 và 18F4550.

Chúc vui.

thay đổi nội dung bởi: jackiele, 13-08-2009 lúc 01:10 AM.
jackiele vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-08-2009, 03:48 PM   #5
phamminhtuan
Super Moderator
 
phamminhtuan's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 150
:
Trích:
Nguyên văn bởi jackiele View Post
Hihi! Đắt quá nhỉ! Trong khi con PL2303Hx - con chip chuyển USB to UART - trên thị trường khoảng 22000 Vnđ.

Tuy nhiên nếu dùng con này để làm thiết bị giao tiếp với máy tính qua USB thì có vẽ rẽ thiệt so với 18F2550 và 18F4550.

Chúc vui.
Bạn không thể dùng con PL2303Hx một mình, trong khi nếu như ứng dụng của bạn là đo lường bằng máy tính chẳng hạn, một con PIC18F14K50 với cảm biến nữa là ok rồi. Giả sử với ứng dụng trên, bạn dùng PL2303Hx + 8051 + ADC + cảm biến sẽ thấy cái nào tiện hơn liền.

Nói chung cổng COM ảo không có nghĩa là phải biến con PIC18F14K50 cầu nối giữa máy tính và con MCU khác thông qua USB. Giả sử 1 ứng dụng đơn giản như điều khiển đèn LED. Mở Terminal lên và gõ LEDA ON -> Chân RB0 xuất mức 1, gõ GET ADC0 , gởi về dữ liệu từ kênh ADC 0 ...

Bạn để ý những ưu điểm của PIC18F14K50, bạn có thể dùng nó để thiết kế ứng dụng cho mình một cách tiện nhất
phamminhtuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-08-2009, 05:38 PM   #6
kimhuynguyen
Đệ tử 3 túi
 
Tham gia ngày: Nov 2007
Nơi Cư Ngụ: Vietnam
Bài gửi: 48
:
Kết hợp 2 đề tài:
USB2UART + Uart2Ethernet --> USB2Ethernet

Không biết có khả thi và kinh tế không nhỉ?
__________________
More friends more foods
kimhuynguyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-08-2009, 05:57 PM   #7
phamminhtuan
Super Moderator
 
phamminhtuan's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 150
:
Trích:
Nguyên văn bởi kimhuynguyen View Post
Kết hợp 2 đề tài:
USB2UART + Uart2Ethernet --> USB2Ethernet

Không biết có khả thi và kinh tế không nhỉ?
Khả thi, hoàn toàn có thể ghép nối 2 module này với nhau, nhưng ... dùng luôn cái card ethernet của máy tính cho rồi

thay đổi nội dung bởi: phamminhtuan, 30-03-2010 lúc 11:35 AM.
phamminhtuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-08-2009, 07:00 PM   #8
jackiele
Đệ tử 3 túi
 
Tham gia ngày: Jun 2008
Bài gửi: 51
:
Trích:
Nguyên văn bởi phamminhtuan View Post
Bạn không thể dùng con PL2303Hx một mình, trong khi nếu như ứng dụng của bạn là đo lường bằng máy tính chẳng hạn, một con PIC18F14K50 với cảm biến nữa là ok rồi. Giả sử với ứng dụng trên, bạn dùng PL2303Hx + 8051 + ADC + cảm biến sẽ thấy cái nào tiện hơn liền.

Nói chung cổng COM ảo không có nghĩa là phải biến con PIC18F14K50 cầu nối giữa máy tính và con MCU khác thông qua USB. Giả sử 1 ứng dụng đơn giản như điều khiển đèn LED. Mở Terminal lên và gõ LEDA ON -> Chân RB0 xuất mức 1, gõ GET ADC0 , gởi về dữ liệu từ kênh ADC 0 ...

Bạn để ý những ưu điểm của PIC18F14K50, bạn có thể dùng nó để thiết kế ứng dụng cho mình một cách tiện nhất
Đúng rồi thì mình đã bảo là dùng 18F14K50 cho thiết bị giao tiếp máy tính qua USB thì rẽ hơn mà.
Nhưng nếu dùng nó như thiết bị chuyên chuyển USB qua UART thì theo mình là không khả thi.

Mình cũng đang muốn dùng 18F14K50 làm thiết bị giao tiep USB đọc giá trị đồng hồ so của Mitoyo lên máy tính.
Nếu các bạn có ý tưởng gần giống mình thì 18F14K50 sẽ được dùng phổ biến hơn.

Chúc vui!
jackiele vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-08-2009, 07:52 AM   #9
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Trích:
Nguyên văn bởi jackiele View Post
Đúng rồi thì mình đã bảo là dùng 18F14K50 cho thiết bị giao tiếp máy tính qua USB thì rẽ hơn mà.
Nhưng nếu dùng nó như thiết bị chuyên chuyển USB qua UART thì theo mình là không khả thi.

Mình cũng đang muốn dùng 18F14K50 làm thiết bị giao tiep USB đọc giá trị đồng hồ so của Mitoyo lên máy tính.
Nếu các bạn có ý tưởng gần giống mình thì 18F14K50 sẽ được dùng phổ biến hơn.

Chúc vui!
Bạn đừng hiểu làm USB2COM là một đầu phải cắm vào USB, một đầu còn lại cắm vào UART/COM.

Lưu ý rằng PIC USB nói chung, cho phép ta làm 2 công việc:
- Giao tiếp bằng USB thực, có nghĩa là thiết bị được máy tính nhận ra là một thiết bị USB.
- USB2COM ở đây, là máy tính nhận ra thiết bị đó như một cổng COM ảo. Khi đó người lập trình điều khiển chỉ điều khiển thiết bị đó với phần mềm được viết cho cổng COM ảo (những thiết bị cũ, phần mềm cũ), hoặc những người chưa quen lập trình giao tiếp USB trên máy tính, hoàn toàn có thể sử dụng.
- Việc đầu ra của thiết bị là cổng COM, hay là thiết bị điều khiển, LED, nút bấm, cảm biến, ADC,.... là do lựa chọn của người dùng.

Như vậy, đối với các thiết bị chip chuyên dụng, nó chỉ làm được 1 việc:
- COM ảo trên máy tính
- Đầu ra thiết bị là cổng COM

Trong khi đó, với PIC, ta có thể làm rất nhiều tổ hợp:
a) USB thực, đầu bên kia ta truyền dữ liệu tùy ý qua UART/COM (vd: truyền dữ liệu giữa 2 máy tính, một máy tính cắm USB thực, một máy tính nối vào UART của PIC)
b) USB thực, đầu bên kia ta điều khiển gì tùy ý, giao thức nào tùy ý (thiết bị điều khiển từ xa cho máy tính chẳng hạn)
c) USB thành COM ảo, đầu bên kia là COM (cái này giống chip chuyên dụng, chip chuyên dụng chỉ làm được duy nhất việc này)
d) USB thành COM ảo, đầu bên kia điều khiển thiết bị tùy ý, giao thức tùy ý (thiết bị điều khiển từ xa cho máy tính, nhưng người lập trình không cần quan tâm giao tiếp USB, họ làm việc với cổng COM ảo như một cổng COM bình thường)

Giải pháp của R&P ở đây là biến USB thành COM ảo, để những người làm lập trình trên máy tính làm được bất kỳ những gì người ta muốn với cách làm y hệt như với cổng COM trước đây, mà không cần tìm hiểu thêm về USB.

Các bạn đừng hiểu lầm USB2COM là sản phẩm một đầu là USB, một đầu là cổng COM.

Chúc vui

thay đổi nội dung bởi: falleaf, 14-08-2009 lúc 07:58 AM.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-08-2009, 08:00 AM   #10
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Mục đích của dự án này, đó là làm sao giúp nhà thiết kế giảm thiểu được thời gian nghiên cứu, đọc hiểu những thứ về USB quá nhiều và quá tốn kém thời gian.

Khi có nhu cầu về sản phẩm, họ có thể nhanh chóng đưa ra được sản phẩm ra thị trường.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-08-2009, 12:31 PM   #11
phucthinhel
Đệ tử 4 túi
 
Tham gia ngày: Feb 2006
Bài gửi: 68
:
Send a message via Yahoo to phucthinhel
Con này mình thấy củng rất là hay . Bên RP có hàng không vậy mình chạy qua lấy 2 con về chơi thử HID thui . Còn nếu mà có PCB chuyển đổi gì đó thì mình qua mua luôn . À cho mình hỏi bên đó cái dự án Enthernet - RS232 con đó có pcb không mình cũng muốn mua !
__________________
Mạch nạp Little Programmer
MSC-51,AVR,EEPROM ... etc
cung cấp : 320x240 2.4" 2.8" 3.2" 3.5" 4.3" LCD
Site Fukusei shop :
http://phucthinhel.googlepages.com/
phucthinhel vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-08-2009, 02:00 PM   #12
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Trích:
Nguyên văn bởi phucthinhel View Post
Con này mình thấy củng rất là hay . Bên RP có hàng không vậy mình chạy qua lấy 2 con về chơi thử HID thui . Còn nếu mà có PCB chuyển đổi gì đó thì mình qua mua luôn . À cho mình hỏi bên đó cái dự án Enthernet - RS232 con đó có pcb không mình cũng muốn mua !
Dự án USB2COM là dự án mới, nên chưa làm thành bo mạch thành phẩm, sẽ làm sớm thôi. Nếu bạn nào thấy mình có khả năng làm mạch in thì có thể R&P sẽ tiêu thụ giúp (nếu muốn).

Dự án UART2Ethernet thì khoảng 10 ngày nữa mới có bo mạch cho phiên bản mới. Hiện nay phiên bản cũ làm với con 18F67J60, dung lượng lớn, và hơi dư thừa. R&P đang cho tối ưu code để chuyển đổi sang PIC18F66J65, dung lượng tối ưu hơn. Khi đó, nếu ai dùng 67J60 thì cũng có thể sử dụng được cho phiên bản này, nếu ai không cần chỉnh sửa code để thực hiện các công việc khác thì sử dụng 66J65 cũng vừa đủ.

Bo mạch hoàn toàn giống nhau, vì chân của hai loại này hoàn toàn tương thích.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 04-10-2009, 06:15 PM   #13
ngocphuc1076116
Nhập môn đệ tử
 
Tham gia ngày: Jun 2009
Bài gửi: 1
:
các bài viết quá hay. Em cảm ơn tất cả mọi người.
ngocphuc1076116 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-02-2010, 10:22 AM   #14
seaking7641
Đệ tử 1 túi
 
Tham gia ngày: Nov 2007
Bài gửi: 20
:
Unhappy

Em vẫn không hiểu, cái schematic của anh Tuấn đầu nào nối với usb và đầu nào nối với cổng COM? Xin anh chỉ bảo
seaking7641 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-02-2010, 12:01 PM   #15
0903579509
Đệ tử 4 túi
 
Tham gia ngày: Mar 2007
Nơi Cư Ngụ: Da Nang
Bài gửi: 69
:
Trích:
Nguyên văn bởi seaking7641 View Post
Em vẫn không hiểu, cái schematic của anh Tuấn đầu nào nối với usb và đầu nào nối với cổng COM? Xin anh chỉ bảo
J10 : USB
J9 : com
Thân!
0903579509 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lờ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à 10:42 AM.


Đượ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