程序代码如下:
#include <msp430.h>
void main(void)
{ unsigned int i;
WDTCTL = WDTPW + WDTHOLD;
if(CALBC1_1MHZ==0XFF || CALDCO_1MHZ==0XFF)
{
while(1);
}
do
{
IFG1 &= ~OFIFG;
for(i=0xff;i>0;i--);
}
while((IFG1&OFIFG));
P1DIR |= BIT0;
P1OUT =0;
ADC10CTL0 |= ADC10ON + ADC10IE + SREF_1 + ADC10SHT_3 + REF2_5V + REFON;
ADC10CTL1 |= INCH_10 + ADC10SSEL_2 + SHS_1 + CONSEQ_2;
__enable_interrupt();
TA0CCR0 = 30;
TA0CCTL0 |= CCIE;
TA0CTL = TASSEL_2 | MC_1;
LPM0;
}
#pragma vector=TIMER0_A0_VECTOR
__interrupt void timer0_isr(void)
{
TA0CTL = 0;
TA0CCR0 =32767;
TA0CCR1 = 2500;
TA0CCTL0 &=~CCIE;
TA0CCTL1 = OUTMOD_3;
TA0CTL = TASSEL_2 + MC_1;
ADC10CTL0 |= ENC;
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_isr(void)
{
P1OUT ^= BIT0;
}
|