Thông báo

Collapse
No announcement yet.

[TUT]Hướng dẫn giao tiếp USB với PIC18F

Collapse
This is a sticky topic.
X
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Hi!
    chào các bạn gần xa, số là có rất nhiều bạn gửi mail hỏi tớ về code điều khiển led qua USB, nên tớ up lên để các bạn tham khảo, hi vọng sẽ hữu ích cho mọi người.
    Attached Files

    ----^..^----

    Comment


    • Nguyên văn bởi chuotdientu Xem bài viết
      Hi!
      chào các bạn gần xa, số là có rất nhiều bạn gửi mail hỏi tớ về code điều khiển led qua USB, nên tớ up lên để các bạn tham khảo, hi vọng sẽ hữu ích cho mọi người.
      Anh chuotdientu có thể cho em xin tài liệu về USB dc ko? Em đang cần cái này quá mà tài liệu trên mạng thì tràn lan, lại toàn ngoại ngữ, không tập trung đi sâu vào giao diện USB mà chỉ chú ý đến phát triển nó. Code về usb cũng chủ yếu là code dựng sẵn và đọc vô cùng khó hiểu, code của anh cũng thế, e đọc xong rồi không biết chỉnh sửa thế nào cho phù hợp mục đích của em nữa.
      Em còn trẻ người non dạ, có gì anh mong anh chỉ giáo thêm cho.

      Comment


      • Tài liệu về USB trên mạng thì nhiều lắm.

        Tớ không có bản tiếng Việt.

        Bạn tìm bản này: "usb complete" (khoảng 7M nên tớ không up lên)
        Bản tớ up là về HID. (1 phần nhỏ của usb complete)
        Bạn nói giao diện USB là sao?? nếu là cấu trúc USB như thế nào thì tham khảo 2 tài liệu trên, còn về thiết kế giao diện giao trên máy tính: cái này do bạn lập trình bằng ngôn ngữ nào, thì tìm hiểu riêng về ngôn ngữ đó.
        Good luck?
        Attached Files

        ----^..^----

        Comment


        • Bạn chưa add thư viện Referen chưa?

          Comment


          • Bác chuột bạch viết bài hay qua.
            Last edited by vanloi.elec; 14-11-2011, 17:20.

            Comment


            • Hi katllu ,

              Bạn tìm nguồn đầu tư để phát triển tiếp, mà bạn đang là sinh viên, học sinh hay người đi làm rồi vậy?
              Công ty tôi đang muốn tìm hợp tác với mấy bạn sinh viên để tài trợ, nghiên cứu thêm về các lĩnh vực này.

              L.N.Vu
              email: lenguyenvu007@gmail.com

              Comment


              • Anh ơi! cho em hỏi tí ạ! Em đang xài cái firmware của anh và có chỉnh sửa thêm, nhưng mà khi chỉnh sửa thì nó nói không tìm thấy file usb_desc_scope1.h và không mở được file này, sau đó em copy file này vào trong thư mục driver trong thư mục gốc của PICC thì nó báo không mở được?Click image for larger version

Name:	error.jpg
Views:	1
Size:	44.3 KB
ID:	1354010
                cái này phải làm sao ạ!

                Comment


                • download Windriver 9.21 free ở đâu?

                  Cảm ơn bạn Hung Nguyen.
                  Cho mình hỏi tải free
                  Windriver 9.21 ở đâu nhỉ?





                  Nguyên văn bởi hung_nguyen
                  HIHI! vấn đề về giao tiếp USB đã có nhiều luồng bàn luận nhưng tôi thấy đa số các luồng đều chỉ bàn về một phần trong cả một project về USB, và chủ yếu là dùng driver, thư viện lập trình giao diện có sẵn của nhà sản xuất vì thế rất khó khăn khi ta muốn giao tiếp USB mà dùng loại chíp khác. Còn tài liệu thì chưa thât sự tỷ mỷ nên nhưng người mới học khó tiếp cận được đặc biệt là các sinh viên. Với mục đính hướng dẫn tốt nhất cho các bạn mới học có thể nhanh chóng tiếp cận tôi xin mở ra một luồng mới hy vọng được sự quan tâm của tất cả các bạn.
                  Trong tài liệu hướng dẫn này tôi đã chỉ ra cho các bạn cách làm phần cứng, viết fimware, tạo driver và viết một giao diện đơn giản trên máy tính. Mong rằng có nó sẽ giúp ích cho tất cả ai muốn làm về USB. Phần mềm mà tôi sử dụng đó là:
                  - CCS
                  - Windriver 9.21
                  - visual studio 2005
                  tài liệu này đuợc viết khi tôi làm Project nó được tổng hợp từ nhiều nguồn tài liệu, do kiến thức còn hạn chế nên có thể sẽ có sai sót mong đuợc sự chỉ giáo của tất cả các bạn từ đó xây dựng lên một tài liệu phổ thông nhất để càng ngày càng có nhiều người làm đuợc giao tiếp USB. thân ái!
                  down ở đây! đọc xong làm ngay..

                  Comment


                  • Các bác cho em hỏi cái, em làm giao tiếp USB, windriver đã phát hiện được cổng USB của PIC, nhưng quá trình enumeration vẫn chưa thực hiện được là vì sao ạ?
                    Đoạn code như thế này:
                    if(usb_enumerated())
                    {
                    output_high(PIN_B2);
                    if (!send_timer)
                    {
                    count++;
                    send_timer=250;
                    out_data[0]=count;
                    if (usb_put_packet(1, out_data, 1, USB_DTS_TOGGLE))
                    printf("\r\n<-- Sending 2 bytes: 0x%X", out_data[0]);
                    }
                    if (usb_kbhit(1))
                    {
                    usb_get_packet(1, in_data, 1);
                    printf("\r\n--> Received data: 0x%X",in_data[0]);;
                    }
                    send_timer--;
                    delay_ms(1);
                    }

                    Windriver đã phát hiện ra thiết bị nhưng led ở chân B2 không sáng.

                    Comment


                    • mọi người cho em hỏi, muốn gửi dữ liệu từ pic18f2550 lên pc thì phải viết câu lệnh như thế nào? em đọc datasheet của nó mà không hiểu cách gửi dữ liệu cũng như đọc dữ liệu từ hót gửi xuống, đọc trong các code có sẵn cũng không hiểu, mọi người giúp em với!!



                      làm sao để có thể trả lời dữ liệu tới host được ?
                      Last edited by thelaxong; 31-12-2011, 16:55.

                      Comment


                      • không ai trả lời sao ?

                        Comment


                        • Từ Pic Bạn không thể gởi dữ liệu lên PC được do driver của bạn không hổ trợ.
                          Để gởi được dữ liệu lên PC ,trước tiên từ PC bạn gởi từ ĐK xuống Pic khi pic nhận được từ ĐK sẻ gởi dữ liệu lên PC(chú ý Khi PC truyền xuống Pic bạn phải có lệnh nhận dữ liệu để nhận dữ liệu).

                          Comment


                          • cám ơn bạn đã trả lời, giờ mình đã mô phỏng được cách gửi dữ liệu lên PC rồi, nhưng khi nạp vào mạch thực thì mình lại có vấn đề mới đó là giai đoạn suspend, theo tài liệu USB complete thì khi trong giai đoạn suspend thì pic phải được đưa vào trạng thái nguồn thấp, sau đó nó sẽ được đánh thức nhờ các ngắt. Tuy nhiên, mình vẫn chưa thể đưa pic vào trạng thái nguồn thấp này, cho nên mình không thể thoát khỏi giai đoạn suspend để tiếp tục giao tiếp, bạn có thể giúp mình thoát khỏi giai đoạn suspend này ko ?

                            Comment


                            • Bạn gởi đoạn code để các bạn khác tham khảo và cho ý kiến.
                              Khi giao tiếp USB bạn cần chú ý :Phải đồng bộ về thời gian khi phát từ Pic với khi nhận từ PC vì hàm xử lý nhận chỉ kiểm tra thời gian khi nhận bé < 1000ms

                              Comment


                              • code mình viết lung tung lắm, giờ mình đang viết code lại theo hướng sử dụng các ngắt của pic 18f2550

                                Comment

                                Về tác giả

                                Collapse

                                hung_nguyen Tìm hiểu thêm về hung_nguyen

                                Bài viết mới nhất

                                Collapse

                                Đang tải...
                                X