久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4327|回復: 0
打印 上一主題 下一主題
收起左側

MSP430F6736 PWM 無法調整duty cycle

[復制鏈接]
跳轉到指定樓層
樓主
ID:101175 發表于 2015-12-30 09:44 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位大大:
      以下是我的source code ,照理說當我調整TA1CCR1 的數據時duty cycle就會隨之改變,但是不管我數值改多少duty cycle都沒有變,會是我clock選擇的問題嗎?
在麻煩各位前輩幫幫我看一下了>< 謝謝.

int main(void)
{
  // Stop watchdog
  WDTCTL = WDTPW + WDTHOLD;
  UCS_init();
  P8DIR |= BIT4;
  P8SEL |= BIT4;              

  InitSystemCLK();
  TA1CCR1 = 0;
  __enable_interrupt();
  // LPM0 (shut down the CPU) with interrupts enabled
  //__bis_SR_register(CPUOFF | GIE);
while(1)
{

}

}



// This will be called when timer counts to TACCR1.
#pragma vector=TIMER1_A0_VECTOR
__interrupt void TIMER1_A0_ISR(void)
{
  int new_ccr1 = 2000;

  // Clear interrupt flag
  TA1CCTL1 &= ~CCIFG;

  TA1CCR1 = new_ccr1 ;
}



void UCS_init(void)
{
   // Set Vcore to accomodate for max. allowed system speed
   PMM_setVCore(PMM_BASE,PMMCOREV_3);  // Used PMM_CORE_LEVEL_3

  // Initialize LFXT1
    UCSCTL6 &= ~(XT1OFF);                   // Enable XT1
    UCSCTL6 |= XCAP_3;                      // Internal load cap 12pF

  // Loop until XT1 fault flag is cleared
    do
    {
        UCSCTL7 &= ~XT1LFOFFG;             // Clear XT1 fault flags
    } while (UCSCTL7 & XT1LFOFFG);         // Test XT1 fault flag

  // Use 32.768kHz XTAL as reference
  //  LFXT_Start(XT1DRIVE_3);

  // Setup UCS
    UCSCTL3 |= SELREF_0;                   // Set DCO FLL reference = REFO
    UCSCTL4 |= SELA_0;                     // Set ACLK = REFO

  // Initialize DCO to 2.45MHz
    __bis_SR_register(SCG0);               // Disable the FLL control loop
    UCSCTL0 = 0x0000;                      // Set lowest possible DCOx, MODx
    UCSCTL1 = DCORSEL_7;                   // Set RSELx for DCO = 24 MHz
    UCSCTL2 = FLLD_0 | 611;                 // Set DCO Multiplier for 20MHz
                                                            // (N + 1) * FLLRef = Fdco
                                                             // (611 + 1) * 32768 = 20MHz
                                                             // Set FLL Div = fDCOCLK/2

    __bic_SR_register(SCG0);               // Enable the FLL control loop

  // Worst-case settling time for the DCO when the DCO range bits have been
  // changed is n x 32 x 32 x f_MCLK / f_FLL_reference. See UCS chapter in 5xx
  // UG for optimization.
  // 32 x 32 x 12 MHz / 32,768 Hz = 375000 = MCLK cycles for DCO to settle
  __delay_cycles(625000);

  // Loop until XT1, XT2 & DCO fault flag is cleared
  do
  {
      UCSCTL7 &= ~(XT2OFFG | XT1LFOFFG | DCOFFG);
      // Clear XT2,XT1,DCO fault flags
      SFRIFG1 &= ~OFIFG;                 // Clear fault flags
  } while (SFRIFG1 & OFIFG);             // Test oscillator fault flag

     __no_operation();  
}

void InitSystemCLK(void)
{
   // Setup TA1
   // PWM period
    TA1CCR0 = 4500;  
    TA1CTL = TASSEL_2 | MC_1 ;       // SMCLK, upmode, clear TAR
    TA1CCTL0 = OUTMOD_7 | CCIE;      // CCR0 interrupt enabled

}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久影院一区 | 久久久久无码国产精品一区 | 国产一区二区三区四区在线观看 | 欧美日韩在线一区二区三区 | 五月综合久久 | 国产精品成人品 | 99精品一区二区三区 | 中文在线一区二区 | 欧美一区二区久久 | 日本精品视频在线 | 国产你懂的在线观看 | 亚洲欧美一区在线 | 欧美黑人又粗大 | 欧美精品综合在线 | 久久9视频 | 久久精品一区二区三区四区 | 天天爱天天操 | 久久精品视频在线观看 | 中文字幕一区二区三区精彩视频 | 亚洲一区 中文字幕 | 国产福利在线视频 | 国产精品一区二区精品 | 欧美精品久久久久 | 国产一区二区三区免费 | 国产欧美一区二区三区在线看蜜臀 | 日韩综合在线 | 国产欧美一区二区久久性色99 | 国产精品一区二区在线免费观看 | 伊人久久大香线 | 国产日屁 | 成人在线观看黄 | 天天综合网天天综合色 | 国产欧美日韩在线一区 | 日韩精品一区二区三区在线观看 | 成人免费看黄网站在线观看 | 久久久九九 | 亚洲综合99| 色综合久久天天综合网 | 日韩欧美网 | 毛片免费视频 | 日韩毛片中文字幕 |