#include "main.h"
void adc_init(void)
{
ADC10CTL0 = ADC10SHT_1 + ADC10ON; // ADC10ON, interrupt enabled
ADC10AE0 |= 0x02; // P7.5 ADC option select
ADC10AE0 |= 0x04; // P6.0 ADC option select
ADC10AE0 |= 0x08; // P6.3 ADC option select
}
//只有在采集电流数据的时候开始中断
void Adc_Irq_Enable(void)
{
sys.ad_aindex = 0;
sys.ad_dindex = 0;
ADC10CTL1 = SHS_1 + INCH_2 + CONSEQ_2; //单通道连续转换
ADC10CTL0 = ADC10SHT_1 + ADC10ON + ADC10IE;
ADC10CTL0 |= ENC;
TACCR0 = 20-1; // PWM Period
TACCTL1 = OUTMOD_3; // TACCR1 set/reset
TACCR1 = 10; // TACCR1 PWM Duty Cycle
TACTL = TASSEL_2 + MC_1 + ID_3; // ACLK, up mode
}
void Adc_Irq_Disable(void)
{
ADC10CTL1 = INCH_2;
ADC10CTL0 = ADC10SHT_1 + ADC10ON;
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR (void)
{
ad_abuffer[adindex] = ADC10MEM;
}
#include "main.h"
void adc_init(void)
{
ADC10CTL0 = ADC10SHT_1 + ADC10ON; // ADC10ON, interrupt enabled
ADC10AE0 |= 0x02; // P7.5 ADC option select
ADC10AE0 |= 0x04; // P6.0 ADC option select
ADC10AE0 |= 0x08; // P6.3 ADC option select
}
//只有在采集电流数据的时候开始中断
void Adc_Irq_Enable(void)
{
sys.ad_aindex = 0;
sys.ad_dindex = 0;
ADC10CTL1 = SHS_1 + INCH_2 + CONSEQ_2; //单通道连续转换
ADC10CTL0 = ADC10SHT_1 + ADC10ON + ADC10IE;
ADC10CTL0 |= ENC;
TACCR0 = 20-1; // PWM Period
TACCTL1 = OUTMOD_3; // TACCR1 set/reset
TACCR1 = 10; // TACCR1 PWM Duty Cycle
TACTL = TASSEL_2 + MC_1 + ID_3; // ACLK, up mode
}
void Adc_Irq_Disable(void)
{
ADC10CTL1 = INCH_2;
ADC10CTL0 = ADC10SHT_1 + ADC10ON;
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR (void)
{
ad_abuffer[adindex] = ADC10MEM;
}
举报