131 1300 0010
其他
當(dāng)前位置: 首頁(yè)>> 元件技術(shù)>>其他>>
  • 導(dǎo)航欄目
  • 二極管
  • 整流橋
  • MOS管
  • 其他
  • MSP430單片機(jī)實(shí)現(xiàn)PWM控制LED燈的設(shè)計(jì)
    MSP430單片機(jī)實(shí)現(xiàn)PWM控制LED燈的設(shè)計(jì)
  • MSP430單片機(jī)實(shí)現(xiàn)PWM控制LED燈的設(shè)計(jì)
  •   發(fā)布日期: 2019-04-08  瀏覽次數(shù): 1,363

    描述:MSP430實(shí)現(xiàn)PWM。反映在LED燈上,可以看到LED燈的亮度不斷變化

    //

     

    // ACLK= n/a, MCLK= SMCLK= default DCO ~ 800k

    //

    // MSP430F13x

    // -------------------

    // /|| XIN|-

    // | | | 32kHz

    // --|RST XOUT|-

    // | |

    // | P1.2|--》LED

    //

    //

    // 硬件電路:MSP430F135核心實(shí)驗(yàn)板-I型

    // 硬件連接:

    //

    // 調(diào)試器:MSP430FET全系列JTAG仿真器

    // 調(diào)試軟件: IAR Embedded Workbench Version: 3.41A 編譯

    //******************************************************************************

    MSP430單片機(jī)實(shí)現(xiàn)PWM控制LED燈的設(shè)計(jì)

    #include

    void Init_CLK(void);

    void Init_TimerA(void);

    unsigned int nCount;

    void Init_CLK(void)

    {

    unsigned int i;

    //將寄存器的內(nèi)容清零

    //XT2震蕩器開(kāi)啟

    //LFTX1工作在低頻模式

    //ACLK的分頻因子為1

    BCSCTL1 = 0X00;

    do

    {

    // 清除OSCFault標(biāo)志

    IFG1 &= ~OFIFG;

    for (i = 0x20; i 》 0; i--);

    }

    while ((IFG1 & OFIFG) == OFIFG);

    BCSCTL2 = 0X00;

    //MCLK的時(shí)鐘源為TX2CLK:2.048MHz,分頻因子為0

    BCSCTL2 += SELM1 + DIVM_0;

    //SMCLK的時(shí)鐘源為TX2CLK:2.048MHz,分頻因子為1

    BCSCTL2 += SELS + DIVS_0;

    return;

    }

    void Init_TImerA(void)

    {

    nCount = 0;

    TACTL = TASSEL1 + TACLR;// 選擇SMCLK,清除TAR

    CCTL0 = CCIE;// CCR0 中斷允許

    CCR0 = 65535 - 1;// PWM周期為256

    CCTL1 = OUTMOD_7;// CCR1輸出模式為“復(fù)位/置位”模式

    TACTL |= MC1;// 增記數(shù)模式

    return;

    }

    #pragmavector=TIMERA0_VECTOR//TImer_A中斷函數(shù)

    __interrupt void TImerA_ISR()

    {

    nCount += 655;

    CCR1 = nCount;

    }

    int main(void)

    {

    // 關(guān)閉看門狗

    WDTCTL = WDTPW + WDTHOLD;

    P1DIR |= BIT2;// P1.2為輸出

    P1SEL |= BIT2;// 選擇P1.2為TA1管腳

    // 關(guān)閉中斷

    _DINT();

    // 初始化

    Init_CLK();

    Init_TimerA();

    // 打開(kāi)中斷

    _EINT();

    for(;;)

    {

    //CUP進(jìn)入低功耗模式

    _BIS_SR(LPM0_bits);

    _NOP();

    }

    }


  • ·上一篇:
    ·下一篇:
  • 其他關(guān)聯(lián)資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區(qū)松崗鎮(zhèn)潭頭第二工業(yè)城A區(qū)27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機(jī):131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權(quán)所有:Copyright?2010-2023 www.kqne.cn 電話:13113000010 粵ICP備2021111333號(hào)