当前位置:文档之家› MSP430定时器A的使用

MSP430定时器A的使用

//******************************************************************************
说明:本例子为MSP430的定时器A的使用例子,可以作为参考。
定时器主频MCLK使用默认的时钟~1.045MHz
相关的寄存器要查阅用户手册。
使用的宏定义基本在“msp430x54x.h”这个库文件;

时间: 2015-01-29
创建:柏龄J(百度)
//******************************************************************************

#include "msp430x54x.h"

void main(void)
{
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
P1DIR |= 0x01; //P1.0设置为输出
TA1CCTL0 = CCIE; //CCR0开启中断
TA1CCR0 = 50000; //计数值为50000,那么定时时间为 50000/1.045M,这里要注意定时器A的时钟源,以及是否分频。
TA1CTL = TASSEL_2 + MC_2 + TACLR; //定时器A时钟源选择SMCLK,连续模式,清除TAR,无分频

__bis_SR_register(LPM0_bits + GIE); //进入LPM0, 开启总中断!
while(1)
{
; //主循环
}
}

//定时器A0的中断服务程序
#pragma vector=TIMER1_A0_VECTOR
__interrupt void TIMER1_A0_ISR(void)
{
P1OUT ^= 0x01; //P1.0输出反转
TA1CCR0 += 50000; //重新填入计数器
}


相关主题
文本预览
相关文档 最新文档