如何使用Timer_A让LED闪烁

这篇文章给大家介绍如何使用Timer_A让LED闪烁,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

创新互联是一家集网站建设,全州企业网站建设,全州品牌网站建设,网站定制,全州网站建设报价,网络营销,网络优化,全州网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

使用Timer_A。代码如下:

#include "./DriverLib/driverlib.h"

int main()
{
    WDT_A_hold( WDT_A_BASE );                                   // 关闭看门狗

    GPIO_setAsOutputPin( GPIO_PORT_P1, GPIO_PIN0 );             // 配置P1.0为输出模式
    GPIO_setOutputLowOnPin( GPIO_PORT_P1 , GPIO_PIN0 );         // 设置P1.0输出低电平

    Timer_A_initUpModeParam uptimer;                            // Timer_A初始化变量
    uptimer.clockSource = TIMER_A_CLOCKSOURCE_SMCLK;            // 配置时钟源为SMCLK
    uptimer.clockSourceDivider = TIMER_A_CLOCKSOURCE_DIVIDER_1; // 配置1分频
    uptimer.timerPeriod = 50000;                                // 配置CCR0
    uptimer.timerInterruptEnable_TAIE = TIMER_A_TAIE_INTERRUPT_DISABLE;
                                                                // 关闭Timer_A中断
    uptimer.captureCompareInterruptEnable_CCR0_CCIE = TIMER_A_CCIE_CCR0_INTERRUPT_ENABLE;
                                                                // 使能CCR0捕获比较中断
    uptimer.timerClear = TIMER_A_DO_CLEAR;                      // 使能清除
    uptimer.startTimer = true;                                  // 需要立即开始Timer_A

    Timer_A_initUpMode( TIMER_A0_BASE , &uptimer );             // 初始化Timer_A

    __bis_SR_register( LPM0_bits + GIE );                       // 进入LPM0,使能中断
    return 0;
}

#pragma vector = TIMER0_A0_VECTOR
__interrupt void TIMER0_A0_ISR(void)
{
    GPIO_toggleOutputOnPin( GPIO_PORT_P1, GPIO_PIN0 );          // 反转P1.0状态
}

关于如何使用Timer_A让LED闪烁就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


网站栏目:如何使用Timer_A让LED闪烁
URL标题:http://hbruida.cn/article/jjgodc.html