Danh mục

Tài liệu hướng dẫn tự làm thiết bị USB (Phần 2)

Số trang: 9      Loại file: pdf      Dung lượng: 97.18 KB      Lượt xem: 2      Lượt tải: 0    
Hoai.2512

Hỗ trợ phí lưu trữ khi tải xuống: 1,000 VND Tải xuống file đầy đủ (9 trang) 0

Báo xấu

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Viết Fimware cho Pic18f4550 ( hoặc Pic18f2550)
Nội dung trích xuất từ tài liệu:
Tài liệu hướng dẫn tự làm thiết bị USB (Phần 2)Nguy n Ng c H ng L p TKTL 40 HVKTQSPh n 2:Vi t Fimware cho Pic18f4550 ( ho c Pic18f2550)1. Trình biên d ch:Có th vi t Fimware b ng t t c các trình biên d ch thông d ng, song theo ý ki n a tôi CCS là trình biên d ch h tr vi t Fimware cho chíp USB khá t t. Trongví d c a CCS có các ví d cho c HID, Costume Driver và CDC. ng th i cácth vi n hàm cho USB c xây d ng t ng i thu n l i khi s d ng vì v y r tthu n l i các b n có th nhanh chóng th c hi n USB.2. Các th c th nghi m:Sau khi ph n c ng ã c un i y b n có th n p thcác các fimware có s n t ng thích v i ph n c ng và c m thi t b vào máy tính. u ph n c ng úng và fimware t ng thích máy tính s thông báo “FoundNew Hardware” và òi h i cài t Driver cho thi t b . C n l u ý n u ph n m ntrong chíp cài t t n s th ch anh không kh p v i th ch anh ph n c ng s gâyra l i và máy tính không th nh n di n thi t b . N u khi ã t ng thích v th chanh mà máy tính v n không detect thi t b thì có th ph n c ng c a b n v n còn n ho c c ng USB có v n v ti p xúc hãy ki m tra k . u thi t b c a b n không b l i và fimware chính xác: Khi nó òi Driver hãy t m th i b qua và th c hi n t o Driver m i cho nó b ngph n m m WinDriver, khi t o xong Driver thì thi t b s ct ng updatedriver, chi ti t vi c t o driver c h ng d n ph n 3. 3. Các th vi n và hàm s d ng chính vi t USB: Có 3 file b n c n include vào project CCS c a b n là: - #include - #include - #include Hai file trên có s n trong th vi n c a CCS ch a các nh ngh a và các hàm ph c cho giao ti p USB, file th 3 là file mô t thi t b c ch nh s a t fileusb_desc_scope.h ng có s n trong th vi n c a CCS phù h p v i yêu c u a b n. Ngoài ra còn m t file n a là: - #include . ng d n/ usb_demo_bulk.h>File này không có s n trong CCS nh các file trên. Nó c t o ra khi b n l p t Project trên CCS qua PIC Wizard, tên file do b n t. -1-Nguy n Ng c H ng L p TKTL 40 HVKTQS 4. Các hàm u khi n và giao ti p USB:Khi xem các mã ngu n c a các file trên trong CCS, b n s th y r t nhi u hàm và nh ngh a khó hi u. Nh ng ph n l n b n s không c n quan tâm t i các hàm óvì chúng c xây d ng trình biên d ch s d ng. Cái chúng ta quan tâm ch là p hàm “User Functions” mà CCS ã xây d ng s n://// **************** USER FUNCTIONS *********************** //////// //////// usb_init() - Initializes the USB stack, the USB peripheral and //////// attaches the unit to the usb bus. Enables //////// interrupts. //////// //////// usb_init_cs() - A smaller usb_init(), does not attach unit //////// to usb bus or enable interrupts. //////// //////// usb_put_packet() - Sends one packet to the host. //////// If you need to send a message that spans //////// more than one packet then see usb_puts() in //////// usb.c //////// //////// usb_kbhit() - Returns true if OUT endpoint contains data from //////// host. //////// //////// usb_rx_packet_size() - Returns the size of packet that was //////// received. usb_kbhit() must return TRUE else //////// this is not valid. Dont forget in USB there //////// are 0 len packets! //////// //////// usb_get_packet() - Gets one packet that from the host. //////// usb_kbhit() must return true before you call //////// this routine or your data may not be valid. //////// Once usb_kbhit() returns true you want to //////// call this as soon as possible to get data //////// out of the endpoint buffer so the PC can //////// start sending more data, if needed. //////// This only receives one packet, if you are //////// trying to receive a multi-packet message //////// see usb_gets() in usb.c. //////// //////// usb_detach() - De-attach USB from the system. //////// //////// usb_attach() - Attach USB to the system. //////// //////// usb_attached() - Returns TRUE if the device is attached to a //////// USB cable. A macro that looks at the defined //////// connection sense pin. //////// //////// usb_task() - Keeps track of connection sense, calling //////// usb_detach() and usb_attach() when needed. //////// //////// For more documentation on these functions read the comments at //// -2-Nguy n Ng c H ng L p TKTL 40 HVKTQS//// each function. //////// //////// The other functions defined in this file are for use by the //////// USB code, and is not meant to be used by the user. ////Các b n có th d dàng tìm hi u thêm cách th c s d ng các hàm này qua cácExample và các Comment c a CCS. V i các hàm này b n ã có th u khi nmodul USB c a pic18 khá linh ho t và có th m r ng chúng phù h p v i c ích c ...

Tài liệu được xem nhiều: