p269_s1.c

来自「msp430开发版程序」· C语言 代码 · 共 38 行

C
38
字号
//序列通道单次转换举例:P269
//#include  "msp430x44x.h"

/*
将8路精密可调电阻电路板接到P6口,然后运行仿真,查看结果
*/

#include  "msp430x14x.h"
static unsigned int results[4];
void main(void)
{
	WDTCTL = WDTPW + WDTHOLD;
	P6SEL = 0x0F;  //使能A/D通道
	ADC12CTL0 = ADC12ON + MSC + SHT0_2;
	ADC12CTL1 = SHP + CONSEQ_1;  //序列通道单次转换
	ADC12MCTL0 = INCH_0;  //ref+=Avcc,通道A0
	ADC12MCTL1 = INCH_1;  //ref+=Avcc,通道A1
	ADC12MCTL2 = INCH_2;  //ref+=Avcc,通道A2
	ADC12MCTL3 = INCH_3 + EOS;  //ref+=Avcc,通道A3,最后序列。
	ADC12IE = 0x08;  //使能中断ADC12IFG.3
	ADC12CTL0 |= ENC;  //使能转换
	_EINT();
	while(1)
	{
		ADC12CTL0 |= ADC12SC;  //开始转换
		_BIS_SR(LPM0_bits);  //进入LPM0	
	}	
}
#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR (void)
{
	results[0] = ADC12MEM0;  //存结果,清除IFG
	results[1] = ADC12MEM1;
	results[2] = ADC12MEM2;
	results[3] = ADC12MEM3;	
	_BIC_SR_IRQ(LPM0_bits);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?