📄 adc12内部模块演示程序之多通道单次采样.c
字号:
/**********************************************************/
//MSP430 Advanced Developping Components - [BaseComponents_06.C]
////ADC12, Sequence Conversions
////->>> http://www.dutzm.cn
////->>> tel :(0)13130044096
/**********************************************************/
//MSP430高级实验开发组件 - ADC12内部模块演示程序之多通道单次采样
//时钟设置:
////ACLK=N/A,MCLK=SMCLK=default(DCO~800k)
//当前演示程序功能描述:
////利用MSP430F14X的AD0~AD2,进行多通道单次转换实验,P60~P62悬空即可
////通过断点在View->Watch中观察转换结果A0_Results.A1_Results.A2_Results一次
/*********************************************************/
#include <msp430x14x.h>
unsigned int A0_Results; //保存A0结果
unsigned int A1_Results; //保存A1结果
unsigned int A2_Results; //保存A2结果
void main(void) {
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
P6SEL |= (BIT0 + BIT1 + BIT2); //端口的第二功能
ADC12CTL0 = ADC12ON + MSC + SHT0_8; //打开ADC12,设置采样时间
ADC12CTL1 = SHP + CONSEQ_1; //使用采样时钟,多通道单次采样
ADC12MCTL0 = INCH_0; //A0,ref+ = AVCC
ADC12MCTL1 = INCH_1; //A1,ref+ = AVCC
ADC12MCTL2 = INCH_2 + EOS; //A1,ref+ = AVCC
ADC12IE = BIT2; //允许P63中断
ADC12CTL0 |= ENC; //允许进行转换
ADC12CTL0 |= ADC12SC; //开始进行转换
_BIS_SR(GIE); //允许系统总中断
}
#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR(void) {
A0_Results = ADC12MEM0; //保存A0转换结果
A1_Results = ADC12MEM1; //保存A1转换结果
A2_Results = ADC12MEM2; //保存A2转换结果
_NOP(); //在此处添加断点观察数据
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -