cần giúp về timer trong pic

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • ptit_et
    Thành viên tích cực
    • Feb 2012
    • 264

    #1

    cần giúp về timer trong pic

    e đang làm bài tập dùng timer 1 tạo hàm delay 1s dể chớp tắt led nhưng không biết dùng timer như thế nào rồi còn ngắt nữa gọi nó ra sao rồi làm sao để ngắt chớp tắt được led mong các bác có thể hướng dẫn giúp e
    e dùng pic 18f4680 và timer1 16bit
  • doremon_nvn
    Thành viên mới
    • Jul 2010
    • 25

    #2
    bạn dùng program gì để buil nhi

    Comment

    • ptit_et
      Thành viên tích cực
      • Feb 2012
      • 264

      #3
      dạ e dùng mplab anh ơi a giúp e với

      Comment

      • duong_act
        Thành viên tích cực
        • Nov 2008
        • 4903

        #4
        Cụ thể là cái gì chứ ?
        HT PIC hay CCS hay cái chi chi :S.

        Comment

        • ptit_et
          Thành viên tích cực
          • Feb 2012
          • 264

          #5
          ccs a ak

          Comment

          • hoang_3i
            Thành viên tích cực
            • Jun 2012
            • 455

            #6
            Nguyên văn bởi ptit_et Xem bài viết
            e đang làm bài tập dùng timer 1 tạo hàm delay 1s dể chớp tắt led nhưng không biết dùng timer như thế nào rồi còn ngắt nữa gọi nó ra sao rồi làm sao để ngắt chớp tắt được led mong các bác có thể hướng dẫn giúp e
            e dùng pic 18f4680 và timer1 16bit
            mới học pic tại sao bạn chon con này thế 18f4680.
            nếu dùng PIC16F877 thì bạn tìm cách lập trình timer sẽ dễ hơn.
            (^_^) hoangnv.3i@gmail.com

            Comment

            • ptit_et
              Thành viên tích cực
              • Feb 2012
              • 264

              #7
              cái này em được tặng a ơi a ráng giúp e với

              Comment

              • ptit_et
                Thành viên tích cực
                • Feb 2012
                • 264

                #8
                ùa sao ko ai trả lời e nữa hết vậy, ai biết giúp e với

                Comment

                • ksclc07i
                  Thành viên chính thức
                  • Jul 2011
                  • 44

                  #9
                  Hàm phục vụ ngắt Timer1:
                  Code:
                  #int_TIMER1
                  void  TIMER1_isr(void) 
                  {
                    if(++n==10)
                    {n=0; led=~led;}
                  }
                  Cấu hình cho Timer1 (trong hàm main:
                  Inserted into .c file in main():
                  Code:
                     setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);[I]//Khởi tạo Timer1[/I]
                     enable_interrupts(INT_TIMER1);[I]//Khai báo cho phép ngắt Timer1[/I]
                     enable_interrupts(GLOBAL);[I]//Khai báo cho phép ngắt Toàn cục[/I]
                     set_timer1(0x09D9);[I]//Timer1 ngắt sau 100ms[/I]
                  Vậy muốn sau 1s mới thự hiện nội dung ngắt thì trong hàm ngắt của Timer1 dùng một biến đếm nữa, bao giờ đếm được 10 lần (10*100ms=1000ms=1s) mới thực hiện các lệnh.

                  Comment

                  • vuxuansyhut
                    Thành viên tích cực
                    • Jul 2009
                    • 303

                    #10
                    Bạn ah. Bạn đã dùng CCS để lập trình thì cũng đã nhẹ nhàng hơn rất nhiều rồi. CCS giúp ta lập trình mà ít cần quan tâm tới cấu trúc các thanh ghi. Cách tốt nhất là bạn mở file help của trình biên dịch để xem hướng dẫn. Với CCS bạn nên dùng trực tiếp trình biên dịch và công cụ edittor của nó không nên dùng thông qua mplab-ide. Khi sử dụng tính năng pic-wizard bạn có thể set các thông số của bộ timer và lựa chọn các ngắt sử dụng, chương trình sẽ tự động thêm code tương ứng.
                    Trong file help bạn có thể search từ khóa timer1 bạn sẽ thấy những thứ liên quan. VD
                    Click image for larger version

Name:	Untitled.jpg
Views:	1
Size:	76.0 KB
ID:	1364040
                    hàm setup_timer_1 (mode) dùng set các thông số cho bộ timer1 (có giải thích rất rõ về cách dùng trong phần help)
                    với ngắt bạn vô interrupt
                    Click image for larger version

Name:	Untitled2.jpg
Views:	1
Size:	118.1 KB
ID:	1364041
                    sẽ có đầy đủ thông tin về cách sử dụng các hàm này. Bạn cần enable ngắt timer 1, enable ngắt toàn cục.

                    Giải pháp điện tử của bạn

                    Comment

                    • ptit_et
                      Thành viên tích cực
                      • Feb 2012
                      • 264

                      #11
                      thank bạn nha để mình code thử có gì hỏi tiếp

                      Comment

                      • ptit_et
                        Thành viên tích cực
                        • Feb 2012
                        • 264

                        #12
                        các anh ơi e code rồi sao chạy ko đ ai sửa lỗi giúp e với
                        bai 3.zip
                        Attached Files

                        Comment

                        Về tác giả

                        Collapse

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

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

                        Collapse

                        Đang tải...