cần giúp Nhận biết chân PWM của MSP430g2553

Discussion in 'Lớp C12' started by huunho, Nov 20, 2015.

  1. huunho

    huunho Trứng gà

    Chào các anh chị.
    Em không biết cách phân biệt chân nào hỗ trợ PWM của MSP430g2553 loại 20 chân cắm. xem data shet thì có ghi là chân
    P1.1 là TA0.0
    P1.2 là TA0.1
    P1.3 là ADC10CLK/A3/VREF-/VEREF-CA3/CAOUT
    Nhưng chỉ có chân P1.2, và P1.3 là xuất ra PWM được trong khi 2 chân P1.2 và 1.3 khác nhau.
    còn chân P1.1 và P1.2 giống nhau mà P1.1 lại không cho ra PWM?
    Anh chị nào biết trả lời giúp em với ạ
     
  2. Fujiko

    Fujiko Thành Viên PIF

    Chào bạn, theo mình biết thì các chân có ghi TA0.0 (hoặc TA1.0) không dùng xuất PWM được do tính khác biệt của ngắt CCR0 so với CCR1,CCR2.
    Trong G2553(DIP20) có 1 số chân hỗ trợ sẵn PWM: P1.2(TA0.1), P1.6(TA0.1), P2.1(TA1.1), P2.2(TA1.1), P2.4(TA1.2), P2.5(TA1.2), P2.6(TA0.1).
    Tuy nhiên, bạn cũng có thể tự tạo xung PWM bằng việc config các pin là output và dùng timer ON/OFF các pin đó theo ý mình mà đúng không???
    Còn nếu muốn sử dụng các mode OUTPUT PWM thì đương nhiên phải sử dụng các chân có hỗ trợ PWM rồi :)
    Về pin P1.3 thì mình thấy nó không hề ghi có hỗ trợ PWM.
     
    huunho likes this.
  3. huunho

    huunho Trứng gà

    cam ơn bạn. Chân 1.3 có cho ra PWM được vì code mẫu của TI có dùng chân này và thực tế đã kiểm tra rồi. bạn có thể giải thích cho mình tại sao 1.3 lại cho ra PWM ko?
     
  4. Fujiko

    Fujiko Thành Viên PIF

    Mình xem qua trong CCS thì không có sample code nào cho xuất xung PWM (dùng Hardware PWM) tại chân P1.3. Bạn có thể post code lên cho mình xem thử.
     
  5. huunho

    huunho Trứng gà

    Code đây bạn, sao bạn không xem thật nhỉ?

    Code:
    ******************************************************************************
    //  MSP430G2xx3 Demo - Timer_A, PWM TA1, Up/Down Mode, DCO SMCLK
    //
    //  Description: This program generates one PWM output on P1.2 using
    //  Timer_A configured for up/down mode. The value in CCR0, 128, defines the PWM
    //  period/2 and the value in CCR1 the PWM duty cycles.
    //  A 75% duty cycle is on P1.2.
    //  SMCLK = MCLK = TACLK = default DCO
    //
    //              MSP430G2xx3
    //            -----------------
    //        /|\|              XIN|-
    //        | |                |
    //        --|RST          XOUT|-
    //          |                |
    //          |        P1.2/TA1|--> CCR1 - 75% PWM
    //
    //  D. Dang
    //  Texas Instruments, Inc
    //  December 2010
    //  Built with CCS Version 4.2.0 and IAR Embedded Workbench Version: 5.10
    //******************************************************************************
     
    #include <msp430.h>
     
    int main(void)
    {
      WDTCTL = WDTPW + WDTHOLD;                // Stop WDT
      P1DIR |= 0x0C;                            // P1.2 and P1.3 output
      P1SEL |= 0x0C;                            // P1.2 and P1.3 TA1/2 options
      CCR0 = 128;                              // PWM Period/2
      CCTL1 = OUTMOD_6;                        // CCR1 toggle/set
      CCR1 = 32;                                // CCR1 PWM duty cycle
      TACTL = TASSEL_2 + MC_3;                  // SMCLK, up-down mode
     
      _BIS_SR(LPM0_bits);                      // Enter LPM0
    }
    
     
  6. Fujiko

    Fujiko Thành Viên PIF

    Mình chắc chắn là bạn sai, với G2553 (20 chân) thì P1.3 không thể dùng hardware PWM được. Trong code trên cũng GHI RÕ LÀ XUẤT PWM P1.2.
    Còn phần config thêm P1.3 là phần code viết dư, không có tác dụng gì cả.
     
    huunho likes this.
  7. huunho

    huunho Trứng gà

    Thế mà mình thử nạp code này vào kít thì chân p1.2 ra tín hiệu thế nào thì chân 1.3 ra thế đó, bạn có thể tụ kiểm tra lại.
    chân 1.2 ko sáng hay sang yếu thì chân 1.3 cũng như vậy luôn
     
Loading...

Share This Page