Thông báo

Collapse
No announcement yet.

Timer0 của pic16f54,57

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

  • Timer0 của pic16f54,57

    Đây là chương trình ngắt timer0 hay làm:
    HTML Code:
    #int_timer0
    void interrupt_timer0()
    {
       set_timer0(6);
       ++count;
       if(count == 2000)   // 2000*500us = 500000us = 1s
          {
             count=0;
             rotate_left(&a,1);
          }
    }
    //Chuong trinh chinh
    void main(void)
    {
       set_tris_b(0);
       enable_interrupts(int_timer0);
       setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2); 
       enable_interrupts(global);
       set_timer0(6);// T_dinhthi = 2*(256 - 6)*1us = 500us
       a = 0x01;
       
       while(true)
       {
          PORTB = a;
       }
    }

    Mình sử dụng ccs c. Nhưng khi lập trình cho con vdk 16f54 thì ko biết cách gọi ngắt timer của con vdk này. Có bác nào biết xin chỉ giúp.

    Nó ko cho khai báo những hàm như sau:
    - enable_interrupts(INT_TIMER0);
    - enable_interrupts(global);

    Nó chi cho sử dụng hàm sau:
    - setup_TIMER_0(RTCC_INTERNAL );
    - set_timer0();
    get_timer0();

    Vậy thì ko biết nên sử dụng thế nào nữa. Khi nào thì ngắt timer sẽ tràn.

    Mình có thể làm như thế này ko:

    if (get_timer0()=100) { work... }

    Web:[url]www.ledviet.info/url]
    Email:
    DĐ:0949299699

  • #2
    Check lai datasheet PIC16f54, loại PIC này hình như không hỗ trợ ngắt đâu. Nó tối giản thiết kế để giảm chi phí mà. Nếu dùng timer thì chỉ còn cách check giá trị timer để biết có tràn hay không.
    Ethernet-RS232, PIC Webserver, RFID Reader
    CallerID, Cảnh báo BTS, ...
    0988006696
    linhnc308@gmail.com
    http://linhnc308.blogspot.com

    Comment


    • #3
      Làm mãi mà ko được. Bỏ luôn con này.

      Web:[url]www.ledviet.info/url]
      Email:
      DĐ:0949299699

      Comment


      • #4
        Dòng 16F5x không có bất kỳ ngắt nào, làm việc mệt muốn chết. Tuy nhiên vì ít tài nguyên nên cũng rất thú vị khi áp dụng các kỹ thuật lập trình đa nhiệm của hệ điều hành thời gian thực (mutex, semaphore ...) Với các dòng PIC mạnh hơn thì lại chả cần.
        Phần mềm tự do hoặc không dùng máy tính nữa !.

        Comment


        • #5
          Con 16F54 , 16F57 mua ở đâu hả các bác .Muốn thử 1 cái chơi . Dòng này chắc rẻ lắm

          Comment


          • #6
            Tới R&P mua, hai con này lúc nào cũng có.

            Mấy con này bán sỉ thì cực rẻ rồi. Trong dòng nạp lại được (không kể mấy con chip đổ và chip nạp một lần của Tàu) thì nói chung bọn này là thiên hạ vô địch rẻ rồi.

            Chúc vui
            Falleaf
            Công ty TNHH Thương mại và Giao nhận R&P
            58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
            mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

            Comment


            • #7
              Tiện thể Falleaf cho hỏi chỗ R&P có bán pic C không nhỉ

              Comment


              • #8
                Bạn không nên "tiện thể" vì các Mod sẽ không "ngó lơ" với các bài viết "tiện thể" đâu.

                Nếu bạn muốn mua bán gì, xin email cho F, hoặc gọi điện tới công ty. Rất vui nếu bạn định mua phần mềm PICC, vì từ ngay HTPICC được MCHP mua lại, chưa có ai hỏi mua cái này.

                Chúc vui
                Falleaf
                Công ty TNHH Thương mại và Giao nhận R&P
                58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
                mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

                Comment


                • #9
                  Thấy datasheet có ghi timer0(ngắt nội), mà ko biết làm thế nào. Có anh em nào làm thì chỉ nhé. Giá rẻ mà khó xài quá. Ccs c lập trình ko thành công

                  Web:[url]www.ledviet.info/url]
                  Email:
                  DĐ:0949299699

                  Comment


                  • #10
                    Nguyên văn bởi manhha2799 Xem bài viết
                    Thấy datasheet có ghi timer0(ngắt nội), mà ko biết làm thế nào. Có anh em nào làm thì chỉ nhé. Giá rẻ mà khó xài quá. Ccs c lập trình ko thành công
                    Bác chỉ cho e xem chỗ nào trong datasheet ghi timer0 có ngắt với, xưa giờ e làm với hàng đống ứng dụng với PIC16F54, 57, 59 mà chẳng biết là cái datasheet nó có ghi có ngắt timer0. Với kinh nghiệm mà e làm trên PIC, thì có thể nói, CCS C dịch tốt nhất cho dòng Base Line. Trước giờ e cũng toàn làm bằng CCS C cho dòng Base Line, rất ổn, không có chuyện không thành công. Với dòng Mid Range trở lên, có lẽ Hi-Tech C ổn định hơn
                    Diễn đàn Vi điều khiển:

                    Comment


                    • #11
                      Nguyên văn bởi manhha2799 Xem bài viết
                      Đây là chương trình ngắt timer0 hay làm:
                      HTML Code:
                      #int_timer0
                      void interrupt_timer0()
                      {
                         set_timer0(6);
                         ++count;
                         if(count == 2000)   // 2000*500us = 500000us = 1s
                            {
                               count=0;
                               rotate_left(&a,1);
                            }
                      }
                      //Chuong trinh chinh
                      void main(void)
                      {
                         set_tris_b(0);
                         enable_interrupts(int_timer0);
                         setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2); 
                         enable_interrupts(global);
                         set_timer0(6);// T_dinhthi = 2*(256 - 6)*1us = 500us
                         a = 0x01;
                         
                         while(true)
                         {
                            PORTB = a;
                         }
                      }

                      Mình sử dụng ccs c. Nhưng khi lập trình cho con vdk 16f54 thì ko biết cách gọi ngắt timer của con vdk này. Có bác nào biết xin chỉ giúp.

                      Nó ko cho khai báo những hàm như sau:
                      - enable_interrupts(INT_TIMER0);
                      - enable_interrupts(global);

                      Nó chi cho sử dụng hàm sau:
                      - setup_TIMER_0(RTCC_INTERNAL );
                      - set_timer0();
                      get_timer0();

                      Vậy thì ko biết nên sử dụng thế nào nữa. Khi nào thì ngắt timer sẽ tràn.

                      Mình có thể làm như thế này ko:

                      if (get_timer0()=100) { work... }

                      pic 16f5x không bao giờ có ngát đâu bạn ạ. kiếm ra cái ngát trong đó là chuyện khó đó bạn.
                      chúc vui
                      email:
                      chỉ được liên lạc từ 19h00 - 21h30



                      Comment

                      Về tác giả

                      Collapse

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

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

                      Collapse

                      • mansion123
                        Bật mí những điều ít ai biết về thi công gỗ óc chó
                        bởi mansion123
                        Thi công gỗ óc chó giúp không gian trở nên sang trọng, ấm cúng, gần gũi hơn. Sự kết hợp giữa thẩm mỹ và chất lượng cao của gỗ óc chó chắc chắn sẽ mang lại giá trị lâu dài và làm hài lòng ngay cả những khách hàng khó tính nhất. Vậy đằng
                        ...
                        hôm nay, 16:08
                      • tuyennhan
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi tuyennhan
                        Cái thư sai ngay câu chào Dear sir mới đúng Hi chỉ dùng cho người quen , các vấn đề về kỹ thuật nó không trả lời hoặc nói loanh quanh tránh ảnh hưởng đến công ty .
                        Giup1 người cần không giúp người không cần với lại văn mình vợ người nha đừng quên .
                        hôm nay, 07:44
                      • vi van pham
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi vi van pham
                        Cám ơn những lời chúc tốt đẹp của em.

                        Việc em làm giống như chê sếp dốt, chẳng những không có miếng xôi nào để ăn mà còn chịu nhiều trù dập lên bờ , xuống ruộng.

                        Hãy tránh vết xe đổ của tui đi. Dành thời gian lo cho gia đình....
                        hôm nay, 02:00
                      • nhathung1101
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi nhathung1101
                        Ngoại ngữ là không thể thiếu, nhất là làm việc với công nghệ.

                        Nhưng học để tán gái hay để đọc datasheet, manual là chuyện cần quan tâm.

                        Và đọc ở nguồn nào đáng tin cậy, chứ cứ lên tictok hay facebook học lỏm thì...
                        Hôm qua, 22:18
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Bác nói rất khách quan và chính xác. Ngoại ngữ là chìa khóa thăng tiến dù làm gì. Chả thế mà nay nước mình dạy tiếng Anh từ tiểu học.

                        Nhớ hồi năm 2006 em ra Hải Phòng, Hải Dương tìm việc, thời đó ở Bình Dương lương công...
                        Hôm qua, 14:51
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Cảm ơn bạn, ĐT cũng có ý nghĩ như vậy.

                        Thực ra, lỗi của hãng đó ( gọi là hãng vì không chỉ một model sản phẩm) là về phần cứng, ĐT tuy không biết về lập trình phần mềm nhưng cũng thấy rằng sẽ chẳng khó khăn gì đáng...
                        Hôm qua, 14:39
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Dạ, bác bảy mấy tuổi đời rồi cũng không kém bố cháu bao nhiêu. Tuổi nghề thì bác cũng đáng tuổi cha chú.

                        Nhưng 2 điều trên thì chưa hẳn đã đáng quí và đáng tôn trọng bằng việc bác rất nhiệt tình chia sẻ kinh nghiệm chuyên...
                        Hôm qua, 14:28
                      • bqviet
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi bqviet
                        Đúng, nếu chú tâm thì chỉ cần mỗi tiếng Việt là đã khá đủ để làm đa số công việc thông thường, ở thời đại ngày nay khi tài liệu sách vở phương tiện thông tin liên lạc đã nhiều. Nhưng cũng chính ở thời nay giao lưu các nước nhiều...
                        21-02-2025, 20:26
                      • mèomướp
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi mèomướp
                        Dạ cháu nghĩ chú dinh... cứ mạnh dạn gửi thư đi ạ, chú có thể gửi bằng văn bản in chuyển phát nhanh sẽ có giá trị hơn. Vấn đề chưa hẳn là cần hãng làm gì đó, mà chỉ đơn giản là mình cảm thấy nhẹ lòng vì đã làm những việc bản...
                        21-02-2025, 12:32
                      • vi van pham
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi vi van pham
                        Những lần hắt hơi sổ mũi làm tôi mệt lã, phải dùng rượu uống để ngũ. Tôi cũng đang uống rượu 1 mình, viết vài dòng này cho em ( có lẽ dt chỉ bằng tuổi em tôi).

                        Dinh thuong dang đi vào vết xe đổ của tôi. Càng chứng minh, có...
                        20-02-2025, 21:31
                      Đang tải...
                      X