msp149 8通道AD采集辣手问题
片子是149型号,之前调单路P6.0通道ad采集,一切正常,现在要采集8路ad,用P6脚 序列多通道多次转换,初始化如下。调试发现,AD1通道依旧正常,AD2...AD8采集数不正确。望哪位朋友赐教。谢谢
P6DIR =0x00; //p6=input
P6SEL = 0xff; // Enable A/D channel A0 A1 A2 A3 ....A7
ADC12MCTL0 |=0x020; //sel channel A0 Sref=1 OUTVR+=VEREF
ADC12MCTL1 |=0x020; //sel channel A1 Sref=1 OUTVR+=VEREF
ADC12MCTL2 |=0x022; //sel channel A2 Sref=1 OUTVR+=VEREF
ADC12MCTL3 |=0x023; //sel channel A3 Sref=1 OUTVR+=VEREF
ADC12MCTL4 |=0x024; //sel channel A4 Sref=1 OUTVR+=VEREF
ADC12MCTL5 |=0x025; //sel channel A5 Sref=1 OUTVR+=VEREF
ADC12MCTL6 |=0x026; //sel channel A6 Sref=1 OUTVR+=VEREF
ADC12MCTL7 |=0x027; //sel channel A7 Sref=1 OUTVR+=VEREF
//ADC12MCTL7 |=0x080; // set channel A7 last time
ADC12CTL0 = ADC12ON;//+SHT0_0;//+SHT1_0;
ADC12CTL0 |= 0x0080; //MSC=1
ADC12CTL1 = SHP; // Use sampling timer /ADC12OSC
ADC12CTL1 |= 0x0008; // ADC12SSEL=1 Use sampling timer /ACLK
ADC12CTL1 |= 0x0006; //mult channel conseq continue ad
ADC12CTL0 |= ENC; // Enable conversions
ADC12CTL0 |= ADC12SC; // Start conversion 怎么没人回复啊。求版主发话了。 好象不是这样初始化的吧。
#define P6OUT_INIT 0xff
#define P6SEL_INIT 0xff // P6-Modules:A0,A1,A2,A3,A4,A5,A6,A7 ADC option select
#define P6DIR_INIT 0 // Init of Port6 Data-Direction Reg (Out=1 / Inp=0)
ADC12CTL0 = ADC12ON | MSC | REF2_5V | REFON | SHT0_DIV8; // Turn on ADC12, RefV = 2.5V,set sampling time 8us
ADC12CTL1 = SHP | ADC12DIV_7 | ADC12SSEL_MCLK | CONSEQ_1; // Use sampling timer, single sequence
ADC12MCTL0 = SREF_VREF_AVSS | INCH_0; // VR+ = VREF+ and VR-= AVSS, channel = A0
ADC12MCTL1 = SREF_VREF_AVSS | INCH_1; // VR+ = VREF+ and VR-= AVSS, channel = A1
ADC12MCTL2 = SREF_VREF_AVSS | INCH_7; // VR+ = VREF+ and VR-= AVSS, channel = A7(BATT)
ADC12MCTL3 = SREF_VREF_AVSS | INCH_TEMP; // VR+ = VREF+ and VR-= AVSS, channel =Temperature diode
ADC12MCTL4 = SREF_VREF_AVSS | INCH_VCC2 | EOS; //VR+ = VREF+ and VR-= AVSS, channel = (AVCC - AVSS) / 2, end seq.
ADC12IE = BIT4; // Enable ADC12IFG.4
ADC12CTL0 |= ENC; // Enable conversions 谢谢3楼回复,按你那样初始化按寄存器名定义,看起来方便,
问题也解决,初始化没修改,在采集时加了ADC12MCTL7 &=~0x080; //继续采集语句,
8通道一切就正常了。
页:
[1]