ADC12转换模式:

1、单通道单次转换。

单通道多次转换指对选定的通道进行多次转换,直到关闭该功能或ENC=0需要进行如下设置。

①x=CSTARTADDx,指向转换通道。
②ADC12MEMx存放转换结果。
③ADC12MCTLx寄存器中定义了通道和参考电压。
此模式下,当改变转换模式时,不必先停止转换,在当前转换结束后,可改变转换模式。n该模式的停止可以采用以下方法。
①使CONSEQ=0,改变为单通道单次转换。
②使ENC=0,直接使当前转换完成后停止。
③使用单通道单模式替换当前模式,同时使ENC=0。

 

cv单通道转多通道 python 单通道单次转换_状态图

2、序列通道单次转换。

对序列通道进行单次转换要进行如下设置。
①X=CSTARTADDx,指示转换开始通道。
②EOS(ADCI2MCTLx.7=1)标志转换通道序列中最后通道,非最后通道的EOS位为0,表示序列转换没有结束。
③ADC12MEMx,....ADC12MEM.y存放转换结果。
④ADC12IFGx,....ADC12IFG,y为对应的中断标志。
⑤ADC12MCTLx寄存器中定义了通道和参考电压。
当有其他任何触发源用于开始转换时,在每次转换之间ENC必须固定。其他的采样输入信号将在ENC复位并置位前被忽略

序列通道单次转换的状态图 

 

cv单通道转多通道 python 单通道单次转换_寄存器_02

3、单通道多次转换。

单通道多次转换指对选定的通道进行多次转换,直到关闭该功能或ENC=0.需要进行如下设置

①x=CSTARTADDx,指向转换通道。
②ADC12MEMx存放转换结果。
③ADC12MCTLx寄存器中定义了通道和参考电压。
此模式下,当改变转换模式时,不必先停止转换,在当前转换结束后,可改变转换模式。该模式的停止可以采用以下方法。
①使CONSEQ=0,改变为单通道单次转换。
②使ENC=0,直接使当前转换完成后停止。
③使用单通道单模式替换当前模式,同时使ENC=0。

单通道多次转化状态图

 

cv单通道转多通道 python 单通道单次转换_寄存器_03

4、序列通道多次转换。

序列通道多次转换指对序列通道进行多次转换,直到关闭该功能或ENC-0。其需要进行如下设置。
①x=CSTARTADDx,指示转换开始地址。

②EOS(ADC12MCTLx.7=1)标志转换通道序列中的最后通道y。
③ADC12MCTLx寄存器中定义了通道和参考电压。
改变转换模式,不必先停止转换。一旦改变模式

序列通道多次转换的状态图

 

cv单通道转多通道 python 单通道单次转换_寄存器_04

单通道单词转换代码。选用AVcc为参考电压。检测P6.0引脚电压,如果引脚电压大于0.5×AVcc,则点亮P1.0口的LED,否则LED灭。

#include<msp430f169>
void main(void)
{
    WDTCTL = WDTPW + WDTHOLD;                     //关闭WDT
    ADC12CTL0 = SHT0_2 + ADC12ON;    //设定采样时间,打开ADC12,n=4
    ADC12CTL1 = SHP;                           //单通道单次转换,使用采样定时器,选择同相输入
                                                           //ADC12SC,ADC12内部时钟源
    ADC12IE = 0x01;                             //使能转换中断
    ADC12CTL0 |= ENC;                         //使能转换器
    P6SEL |= 0x01;                               //选取p6.0为A/D通道AD0
    P1DIR |= 0x01;                               //p1.0输出
    while(1)     
    {
        ADC12CTL0 |= ADC12SC;            //开启采样    
    }
}
#pragma vector=ADC_VETOR
 _interrupt void ADC12_deal (void)
{
    if (ADC12MEM0 <0x7FF)
        P1OUT &= ~0x01;                       //清p1.0 LED,灭
    else 
        P1OUT |= 0x01;                          //置p1.0 LED,亮
}

 

 参考ccs官网msp430f169的使用手册和《16位单片机原理及应用:基于msp430》