您的位置 首页 知识

怎么使用使用TimerA及中止完成RTC

如何利用利用TimerA及中断实现RTC-D13x Demo – 利用Timer_A及中断实现RTC,观察LED灯的闪烁频率

// 描述:利用Timer_A及中断实现RTC;通过 P1 异或 来取反 P1.5;

// 系统处于休眠状态LPM3,中断时唤醒执行P1.5切换

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

D13x Demo – 使用TImer_A及中止完成RTC,调查LED灯的闪耀频率

// 描绘:使用TImer_A及中止完成RTC;经过 P1 异或 来取反 P1.5;

// 体系处于休眠状况LPM3,中止时唤醒履行P1.5切换

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

//

// MSP430F13x

// ——————-

// /|\| XIN|-

// | | | 32kHz

// –|RST XOUT|-

// | |

// | P1.5|–》LED

//

// 硬件电路:MSP430F135中心试验板-I型

// 硬件衔接:

//

// 调试器:MSP430FET全系列JTAG仿真器

// 调试软件: IAR Embedded Workbench Version: 3.41A 编译

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

怎么使用使用TimerA及中止完成RTC

#include

voidmain(void)

{

WDTCTL = WDTPW + WDTHOLD;// 中止看门狗

TACTL = TASSEL0 + TACLR;// ACLK, 清 TAR

CCTL0 = CCIE;// CCR0 中止使能

CCR0 = 16384;// 设定中止距离,32768Hz晶振,0.5s

P1DIR |= 0x20;// P1.5为输出口

TACTL |= MC0;// TImer_a 为增量计数形式

_EINT();// 开中止

for (;;)

{

_BIS_SR(LPM3_bits);// 进入 LPM3

}

}

#pragmavector=TIMERA0_VECTOR//Timer_A中止函数

__interruptvoidTimerA_ISR()

{

P1OUT ^= 0x20;// 经过异或取反P1.5

}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/346681.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部