Thông báo

Collapse
No announcement yet.

Tần số xung Clock với PIC18F2550

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Tần số xung Clock với PIC18F2550

    Chào các bạn. Đây là lần đâu mình làm đề tài có liên quan đến MCU nên gặp rất nhiều điều khó hiểu. Mong mọi ngườii giúp đỡ.
    Thật ra mình dùng PIC18F không phải muốn giao tiếp USB mà chỉ dùng mức tần số dao động cao của nó thôi. Mình cần tần số xung Clock (Microcontroller Clock Frequency) >=32MHz (cụ thể 48MHz). Ở đây theo Talbe 2-3, Data sheet trang 31, nếu mình dùng Thạch anh 20MHz --> PLL Division /5 --> Clock mode HSPLL --> MCU Clock Division /2 --> Microcontroller Clock Frequency = 48MHz. Mình biết nguyên tắc như thế thôi nhưng không biết cụ thể hóa bằng code C như thế nào. Mong anh em chỉ giúp. Luận văn gần nộp nên miệt mài tìm hiểu, hok có ai để hỏi nên rất mong mọi người giúp đỡ. hic
    Cảm ơn nhiều !!!

  • #2
    bạn cứ khai báo như đối với usb ý. thực tế là thạch anh 20M chia cho 5 được 4 nhân 12 là được 48M. hjhj
    Làm roài nên biết

    Comment


    • #3
      Nguyên văn bởi hspro Xem bài viết
      bạn cứ khai báo như đối với usb ý. thực tế là thạch anh 20M chia cho 5 được 4 nhân 12 là được 48M. hjhj
      Làm roài nên biết
      Cảm ơn bác. Mình biết nguyên tắc như vậy nhưng chưa biết code ra sao với nó. Bác làm rồi có thể cho mình code tham khảo để làm theo với. Hi^^

      Comment


      • #4
        Trong CCS C bạn có thể dùng PIC Wizard cho đơn giản. Các dòng nó tự tạo cho mình là:
        #FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)
        #FUSES PLL5 //Divide By 5(20MHz oscillator input)
        #FUSES CPUDIV1 //No System Clock Postscaler
        #use delay(clock=48000000)
        Computer Science major - Vietnamese-German University
        Sponsored by

        Comment


        • #5
          bạn có thể dùng code này, mình sử dụng cho code USB của mình rồi nên bạn có thể yên tâm ^^
          #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CP UDIV1,VREGEN
          #use delay(clock=48000000)

          sử dụng thạch anh 20Mhz

          Comment


          • #6
            mjn cũng giống như chủ topic vậy, nhưng gõ giống bạn nhưng vẫn không được!mong bạn giúp

            Comment


            • #7
              Để sử dụng 48MHz cho CPU bạn phải sử dụng thạch anh ngoài bội 4. Mục đích là dao động thạch anh sẽ qua bộ chia n để được 4Mhz, sau đó được nhân tần lên 96mhz, tiếp tục chia 2 để được 48mhz cho cpu và usb.
              Các bạn cần 3 config/fuse sau:
              HSPLL - sử dụng bộ dao động ngoài có nhân tần số.
              PLL1 ->PLL12 - để chia được 4mhz( ví dụ 20mhz /5 =4 nên sẽ dùng PLL5).
              CPUDIV2- chia từ 96mhz được 48mhz).
              Với mỗi trình biên dịch các bạn xem cách sử dụng config bit hoặc fuses để cấu hình 3 cái trên là ok.

              Comment

              Về tác giả

              Collapse

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

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

              Collapse

              Đang tải...
              X