我用
proteus搭载了一个
电路,下面是程序,但是没有结果,本人刚刚入手430,还望各位爱好者给看一下是怎么回事,谢谢了
#include <msp430x14x.h>
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
P1DIR |= 0x01; // P1.0 output
CCTL0 = CCIE; // CCR0 interrupt enabled用到CCR0定时中断的时候必须记得让CCR0中断使能
CCR0 = 50000; //设置进入定时器中断的时间
TACTL = TASSEL_1 + MC_0; // SMCLK, contmode。功能的选择:时钟1—ACLK比较慢,2—SMCLK时钟比较快;0—暂停;1—从0连续增长到CCRO,就进入中断。然后清0;2—从0连续增长到0ffffh;3—递增到CCR0再递减到0。若使用2模式则不需要定义CCR0
_BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt
}
//
timer A0 interrupt service routine
#pragma vector=TIMER0_A0_VECTOR //使用CCR0的话就用TIMER0_A0就行
__interrupt void Timer_A (void) //若不使用CCRO就用TIME0_A1,然后用switch函数如下一个例子
{
P1OUT ^= 0x01; // Toggle P1.0
CCR0 += 50000; // Add Offset to CCR0。。。重新给CCR0一个值
}
一周热门 更多>