主题中讨论的其他器件: MSP430F5529
您好!
我正在使用 MSP430F5659来测量通过 ADC 的电压。 我正在使用下面提到的代码来初始化 ADC、测量结果正常。
ADC12CTL0 |= ADC12ON;//打开 ADC
//注意:缺省采样保持时间为4个 ADC 时钟
//注意:缺省采样保持源是 ADC10SC 位
ADC12CTL1 = ADC12SHP;//选择脉冲采样模式
ADC12CTL1 = ADC12DIV1 | ADC12DIV0;//将 I/p 时钟除以4
ADC12CTL1 = ADC12SSEL1 | ADC12SSEL0;//选择 SMCLK 作为 ADC 时钟源
//注意:默认的 ADC 转换序列是单通道、单次转换
ADC12CTL2 |= ADC12PDIV;//将时钟预分频4,使总 div。 比率= 16
ADC12CTL2 |= ADC12RES1;// ADC 12位选择
//注意:VREF+的默认基准选择为 AVCC、VREF-的默认基准选择为 AVSS
//注意:缺省输入通道选择为 A4
ADC12MCTL0 = ADC12INCH_4;
ADC12IE = ADC12IE0;//启用 ADC 中断
ADC12CTL0 |= ADC12ENC;//启用 ADC 转换
###从 ADC 获取响应
ADC_ISR (void){
#ifdef __MSP430F5529__
ADC_RESULT = ADC12MEM0;
其他
ADC_RESULT = ADC12MEM0;
但是、我需要将通道更改为 A5并重新执行我面临的问题的测量。 我正在使用下面提到的代码来更改频道、但没有更改。
ADC12CTL0 |=~ADC12ENC;//禁用 ADC 转换
ADC12MCTL0 = ADC12INCH_5;
ADC12CTL0 |= ADC12ENC |ADC12SC;//启用 ADC 转换并开始该过程
请告诉我如何更改信道并进行测量。