Ktl-icon-tai-lieu

GIAO TIẾP PIC VỚI VI ĐIỀU KHIỂN

Được đăng lên bởi Khanh Chelsea Arshavin
Số trang: 12 trang   |   Lượt xem: 615 lần   |   Lượt tải: 1 lần
Câu lạc bộ Khoa học - THPT Chuyên Lê Hồng Phong TPHCM

LHPSC



Giao tiếp USB qua WinUSB
Bùi Quang Minh – CLB Khoa học Sáng tạo THPT Chuyên
Lê Hồng Phong TPHCM - 2012

Giới thiệu
WinUSB là một driver chung cho các thiết bị USB được phát triển với WDF (Windows Driver
Framework) cho Windows XP SP2. Kiến trúc WinUSB bao gồm driver kernel-mode (winusb.sys) và
thư viện liên kết động ở user-mode (winusb.dll) chứa các hàm WinUSB, đã được cài sẵn trên
Windows XP SP2 trở lên. Bằng cách sử dụng các hàm này, bạn có thể quản lý thiết bị USB với phần
mềm ở user-mode.
Tài liệu này sẽ giúp bạn có thể thực hiện một kết nối USB với khả năng cho phép Bulk Transfer (HID
chỉ cho phép Interrupt Transfer) một cách nhanh chóng. Bulk Transfer tuy có độ ưu tiên thấp nhưng ở
full speed, tốc độ truyền lại gấp 19 lần Interrupt.
Tuy nhiên, bạn cũng có thể dùng các chương trình như WinDriver để tạo driver cho bạn, nhưng mình
ở đây sẽ giới thiệu 1 cách khác mà không cần qua các chương trình như vậy.

Thiết bị ngoại vi
Phần cứng
Có rất nhiều loại vi xử lý có thể tích hợp sẵn giao tiếp USB, trong tài liệu này, mình sẽ sử dụng
PIC18F14K50. Với phần mềm CCS để lập trình firmware. Bạn cũng cần một header ICSP để nạp vì
đây là IC dán (không có trong sơ đồ, bạn tham khảo thêm ICSP ở ngoài).




U1: PIC18F14K50
C1: Tụ ceramic 470nF

Giao tiếp USB qua WinUSB

Trang 1

Câu lạc bộ Khoa học - THPT Chuyên Lê Hồng Phong TPHCM

LHPSC









C2, C3: Tụ ceramic từ 15 đến 33 pF
X1: thạch anh 12MHz (bắt buộc phải là 12MHz)
RED, GREEN: LED đỏ và xanh
R1: trở 10kΩ
J1: cổng kết nối USB

Thạch anh bắt buộc phải chọn là 12MHz, để có thể xung đồng hồ 48MHz sử dụng cho USB Full
Speed. Đối với các loại PIC và MCU khác, nên đọc datasheet để có thể mắc thạch anh cho chính xác.
Nhìn hình sau để hiểu rõ hơn (trích từ datasheet của PIC18F14K50):

Xung thạch anh
vào (12MHz)

Xung đồng
hồ sử dụng
cho USB

PLL sẽ nhân 4
lần tần số thạch
anh (12 * 4 = 48
MHz)

Firmware
Trong tài liệu này, mình sẽ sử dụng CCS để viết Firmware.
Bắt đầu với việc tạo Project mới bằng cách sử dụng PIC Wizard. Nhấp vào biểu tượng PIC Wizard để
tạo project mới.

Giao tiếp USB qua WinUSB

Trang 2

Câu lạc bộ Khoa học - THPT Chuyên Lê Hồng Phong TPHCM

LHPSC



Chọn thư mục lưu project. Sau đó nhấn Save.

Chọn tên PIC là PIC18F14K50, tần số hoạt động là 48 000 000 và chế độ dao động là High Speed
Osc như tr...
Câu lạc bộ Khoa học - THPT Chuyên Hồng Phong TPHCM LHPSC
https://sites.google.com/site/lhpscienceclub
Giao tiếp USB qua WinUSB Trang 1
Giao tiếp USB qua WinUSB
Bùi Quang Minh CLB Khoa hc Sáng to THPT Chuyên
Lê Hng Phong TPHCM - 2012
Giới thiệu
WinUSB một driver chung cho các thiết bị USB được phát triển với WDF (Windows Driver
Framework) cho Windows XP SP2. Kiến trúc WinUSB bao gồm driver kernel-mode (winusb.sys)
thư viện liên kết động ở user-mode (winusb.dll) chứa các hàm WinUSB, đã được cài sẵn trên
Windows XP SP2 trở lên. Bằng cách sử dụng các hàm này, bạn có thể quản thiết bị USB với phần
mềm ở user-mode.
Tài liệu này sẽ giúp bạn có thể thực hiện một kết nối USB với khả năng cho phép Bulk Transfer (HID
chỉ cho phép Interrupt Transfer) một cách nhanh chóng. Bulk Transfer tuy có độ ưu tiên thấp nhưng ở
full speed, tốc độ truyền lại gấp 19 lần Interrupt.
Tuy nhiên, bạn cũng thể dùng các chương trình như WinDriver để tạo driver cho bạn, nhưng mình
ở đây sẽ giới thiệu 1 cách khác mà không cần qua các chương trình như vậy.
Thiết bị ngoại vi
Phần cứng
rất nhiều loại vi xử thể tích hợp sẵn giao tiếp USB, trong tài liệu này, mình sẽ sử dụng
PIC18F14K50. Với phần mềm CCS để lập trình firmware. Bạn cũng cần một header ICSP để nạp
đây là IC dán (không có trong sơ đồ, bạn tham khảo thêm ICSP ở ngoài).
U1: PIC18F14K50
C1: Tụ ceramic 470nF
GIAO TIẾP PIC VỚI VI ĐIỀU KHIỂN - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
GIAO TIẾP PIC VỚI VI ĐIỀU KHIỂN - Người đăng: Khanh Chelsea Arshavin
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
12 Vietnamese
GIAO TIẾP PIC VỚI VI ĐIỀU KHIỂN 9 10 911