Thông báo

Collapse
No announcement yet.

Phan_IT Xin giới thiệu các chương trình ví dụ về dòng vi điều khiển MSP430 của Texas

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

  • #16
    Thanks ae mình tìm dc rồi hơi nóng vội :d.

    Comment


    • #17
      Nguyên văn bởi minhtuan99bk Xem bài viết
      Mình code tạo 2 xung PWM ra chân P1.2 và P1.3, dựa vào code mẫu của TI cho msp430. Mình biên dịch và đã mô phỏng thành công trên protues nhưng không hiểu sao thử trên mạch thực tế thì chỉ có mỗi chân P1.2 có xung, chân 1.3 ko hề có xung. Mình thử với các code mẫu khác và cả code trên mạng nhưng kết quả vẫn như vậy. Có cao thủ nào biết tình trạng này không?
      Đây là code:
      Code:
      #include  <msp430g2553.h>
      void main(void)
      {
        WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
        P1DIR |= 0x0C;                            // P1.2 and P1.3 output
        P1SEL |= 0x0C;                            // P1.2 and P1.3 TA1/2 otions
        CCR0 = 655;                               // PWM Period/2
        CCTL1 = OUTMOD_6;                         // CCR1 toggle/set
        CCR1 = 32;                                // CCR1 PWM duty cycle
        CCTL2 = OUTMOD_6;                         // CCR2 toggle/set
        CCR2 = 49;                                // CCR2 PWM duty cycle
        TACTL = TASSEL_1 + MC_1;                  // ACLK, up mode
      
        _BIS_SR(LPM0_bits);                       // Enter LPM0
      }
      P1.2 là chân TA0.1 ==> có xung
      P1.3 không phải là chân TA0.2 ==> không có xung
      Bạn xem lại datasheet nhé

      Comment


      • #18
        Nguyên văn bởi minhtuan99bk Xem bài viết
        Mình code tạo 2 xung PWM ra chân P1.2 và P1.3, dựa vào code mẫu của TI cho msp430. Mình biên dịch và đã mô phỏng thành công trên protues nhưng không hiểu sao thử trên mạch thực tế thì chỉ có mỗi chân P1.2 có xung, chân 1.3 ko hề có xung. Mình thử với các code mẫu khác và cả code trên mạng nhưng kết quả vẫn như vậy. Có cao thủ nào biết tình trạng này không?
        Đây là code:
        Code:
        #include  <msp430g2553.h>
        void main(void)
        {
          WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
          P1DIR |= 0x0C;                            // P1.2 and P1.3 output
          P1SEL |= 0x0C;                            // P1.2 and P1.3 TA1/2 otions
          CCR0 = 655;                               // PWM Period/2
          CCTL1 = OUTMOD_6;                         // CCR1 toggle/set
          CCR1 = 32;                                // CCR1 PWM duty cycle
          CCTL2 = OUTMOD_6;                         // CCR2 toggle/set
          CCR2 = 49;                                // CCR2 PWM duty cycle
          TACTL = TASSEL_1 + MC_1;                  // ACLK, up mode
        
          _BIS_SR(LPM0_bits);                       // Enter LPM0
        }
        P1.2 là chân TA0.1 ==> có xung
        P1.3 không phải là chân TA0.2 ==> không có xung
        Bạn xem lại datasheet nhé

        Comment


        • #19
          @ngoctan: thank bạn, mình thử với con g2231 cũng ko có xung luôn.
          Vậy nếu muốn tạo 2 xung ra chân P2.3 (TA1.0) và P2.5 (TA1.2) của MSP430G2553 thì phải code thế nào bạn? Mình làm theo code mẫu của TI mà chưa bao h tạo xung được ở chân P2 của chip đó

          Comment


          • #20
            Bạn tham khảo thêm phần code về MSP430 clock system and timer thử xem có các ví dụ mẫu đó!!
            mail:dqnam952@gmail.com

            Comment


            • #21
              Hic, mình nói rồi, quái lắm. Mình tham khảo code của TI và mô phỏng = protues, đều ra xung ok cả nhưng cho vào mạch thực tế (hoặc ngay cả trên cái KIT) cũng chả có xung

              Comment


              • #22
                Nguyên văn bởi minhtuan99bk Xem bài viết
                @ngoctan: thank bạn, mình thử với con g2231 cũng ko có xung luôn.
                Vậy nếu muốn tạo 2 xung ra chân P2.3 (TA1.0) và P2.5 (TA1.2) của MSP430G2553 thì phải code thế nào bạn? Mình làm theo code mẫu của TI mà chưa bao h tạo xung được ở chân P2 của chip đó
                Bạn thử đoạn code này xem

                #include <msp430g2553.h>

                void main(void)
                {
                WDTCTL = WDTPW + WDTHOLD; // Stop WDT
                P2DIR |= 0x28; // P2.3 and P2.5 output
                P2SEL |= 0x28; // P2.3 and P2.5 option
                TA1CCR0 = 128; // PWM Period
                TA1CCTL1 = OUTMOD_7; // CCR1 reset/set
                TA1CCR1 = 32; // CCR1 PWM duty cycle
                TA1CTL = TASSEL_1 + MC_1; // ACLK, up mode

                _BIS_SR(LPM3_bits); // Enter LPM3
                }

                Bạn lưu ý trong thư viện msp430g2553.h chỉ định nghĩa rút gọn cho timerA_0, còn timerA_1 không có định nghĩa rút gọn vì nó giống hệt nên bạn muốn dùng timerA_1 thì phải gọi thẳng cái tên dài dài của nó ra hoặc tự định nghĩa lấy.

                Còn với 2231 nó chỉ có 1 timer và mình đã xuất xung rất ổn với launchpad. Cậu đưa code lên để anh em cùng xem.
                Last edited by phamngoctan; 13-11-2011, 23:16.

                Comment


                • #23
                  Có bạn nào làm hiển thị ki tự lên lcd 16x02 dùng msp430g2452 chưa(dùng port2 chế độ 4bit),port1 thì mình làm chạy rồi.
                  mail:dqnam952@gmail.com

                  Comment


                  • #24
                    Hi mình làm được rồi.Nhân đây mình hỏi thêm các bạn làm đồ án đo tốc độ động cơ hiển thị LCD16x02 dùng msp430g2452 chưa nếu có làm rồi cho mình tham khảo hay có ý kiến gì các bạn giúp mình nhé!!thank a lot!!
                    mail:dqnam952@gmail.com

                    Comment


                    • #25
                      Các bạn cho mình hỏi xí, mình thấy trong ảnh đính kèm của ban Phan_it con chip G2211 hoạt động không cần Thạch Anh hả? sao lạ vậy???
                      Mình mới tìm hiểu về MSP430 nên hơi gà

                      Comment


                      • #26
                        MSP430 vào đầu chương trình nếu ko dùng WDT phải stop nó đi vì mặc định là nó enable. Nhiều bạn mới dùng MSP430, viết ct dịch ko báo lỗi nhưng ko chạy đa phần là do lỗi này...
                        |

                        Comment

                        Về tác giả

                        Collapse

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

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

                        Collapse

                        Đang tải...
                        X