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

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 ạ
 

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

Trứng gà
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.
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?
 

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ử.
 

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
}
 

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

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
 
Top