亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? adc12.c

?? MSP430z_f247.rar
?? C
字號:
# include "ADC12.h"

//設(shè)定序列轉(zhuǎn)換通道,從A0通道開始,共五個(gè)通道
static unsigned int A0_Results[NUM_OF_RESULTS]={0};
static unsigned int A1_Results[NUM_OF_RESULTS]={0};
static unsigned int A2_Results[NUM_OF_RESULTS]={0};
static unsigned int A3_Results[NUM_OF_RESULTS]={0};
static unsigned int A4_Results[NUM_OF_RESULTS]={0};

//序列通道單次轉(zhuǎn)換忙標(biāo)志
static unsigned char ADC12_CON_Flag=1;
static unsigned int ADC12_Index = 0;

void ADC12_Device_INIT(void)
{
	//ADC12_INIT();
 	ADC12_SM_INIT();
  	ADC12_PORT_INIT();
}

void ADC12_PORT_INIT(void)
{
	//P1DIR |= 0xff;
	//P1OUT |= 0xff;
}
/****************************************/
//單通道單次轉(zhuǎn)換初始化與獲取轉(zhuǎn)換結(jié)果
void ADC12_INIT(void)
{
	ADC12CTL0 = ADC12ON+SHT0_8+ MSC;
	ADC12CTL1 = SHP+ CONSEQ_2; 
	ADC12IE |= 0x01;
	ADC12CTL0 |= ENC;
	ADC12CTL0 |= ADC12SC;
}           
//獲取單通道單次轉(zhuǎn)換的結(jié)果
//相關(guān)寄存器設(shè)定
void ADC12_SS_INIT(void)
{
  	P6SEL |= BIT0; 							//初始化默認(rèn)選擇A0通道
  	ADC12CTL0 &= ~ENC;						
	
  	ADC12CTL0 = ADC12ON+SHT0_8;				//使用采樣保持定時(shí)器,單通道單次模式
  	ADC12CTL1 |= SHP| CONSEQ_0| CSTARTADD_0;//默認(rèn)存儲地址為ADC12MEM0
	
	ADC12MCTL0 |= INCH_0;					//選擇對應(yīng)轉(zhuǎn)換存儲器的采樣通道(A0)
	
	ADC12CTL0 |= ENC;						//允許轉(zhuǎn)換
}
//單通道單次轉(zhuǎn)換,通道可選
unsigned int Get_ADC12_SS(unsigned char ch_INCH)
{
	//因?yàn)槭菃瓮ǖ绬未无D(zhuǎn)換,所以存儲寄存器不用選擇,
  	//這里使用ADC12MEM0
  	unsigned int SS_Result=0;
	
	while(ADC12CTL0 & ADC12BUSY)
	  	;
  	ADC12CTL0 &= ~ENC;
	
	ADC12MCTL0 &= ~0x0f;					//清除上次轉(zhuǎn)換選擇通道
	ADC12MCTL0 |= ch_INCH;					//選擇本次轉(zhuǎn)換使用通道
	
	P6SEL &= ~0xff;
	P6SEL |= BIT(ch_INCH);					//選擇復(fù)用通道
	
	ADC12CTL0 |= ENC;
	ADC12CTL0 |= ADC12SC; 					//開始轉(zhuǎn)換
	
    while (!(ADC12IFG & BIT0));           	//等待轉(zhuǎn)換結(jié)束                
		;
	SS_Result=ADC12MEM0;
	return SS_Result;
}

unsigned int Get_Real_Value(unsigned int Value, unsigned char Is_Real)
{
	unsigned long Temp_Value=(unsigned long)Value;
	
  	if(Is_Real)
	{
		Temp_Value = Temp_Value*329/409;//325
	}
  	return (unsigned int)Temp_Value;
}

void Get_Real_ADC12(unsigned int* p_Array, unsigned int* p_Result, 
					unsigned char ch_Sum)
{
	unsigned char i = 0; 
	for(i = 0; i < ch_Sum; i++)
	{
		p_Array[i] = Get_Real_Value(p_Result[i], 1);
	}
}
/******************************************/

//單通道重復(fù)轉(zhuǎn)換初始化與獲取轉(zhuǎn)換結(jié)果
void ADC12_SM_INIT(void)
{
	P6SEL |= BIT0| BIT1| BIT2| BIT3| BIT4;      // Enable A/D channel inputs
	
  	ADC12CTL0 |= ADC12ON| MSC| SHT0_8;          // Turn on ADC12, extend sampling time
                                            	// to avoid overflow of results
  	ADC12CTL1 |= SHP| CONSEQ_3| CSTARTADD_0;    // Use sampling timer, repeated sequence

  	ADC12MCTL0 |= INCH_0;                      	// ref+=AVcc, channel = A0
  	ADC12MCTL1 |= INCH_1;                      	// ref+=AVcc, channel = A1
  	ADC12MCTL2 |= INCH_2;                      	// ref+=AVcc, channel = A2
  	ADC12MCTL3 |= INCH_3;                  		// ref+=AVcc, channel = A3, end seq.
	ADC12MCTL4 |= INCH_4| EOS;
  	
	ADC12IE |= BIT4;                           	// Enable ADC12IFG.4

  	ADC12CTL0 |= ENC;                         	// Enable conversions
 	ADC12CTL0 |= ADC12SC;                     	// Start convn - software trigger
	Stop_ADC12_SM();
}
void Clear_ADC_Register(void)
{
	ADC12CTL0 = 0;
	ADC12CTL1 = 0;
	ADC12IE &= ~BIT4;
}

void Begin_ADC12_SM(void)
{
	ADC12CTL0 |= ENC;                         	// Enable conversions
 	ADC12CTL0 |= ADC12SC;                     	// Start convn - software trigger
}

void Stop_ADC12_SM(void)
{
	ADC12CTL0 &= ~ENC;                         
 	ADC12CTL0 &= ~ADC12SC;                     
}

void Get_ADC12_SM(unsigned int* p_Result)
{
	//通過取平均值增加了精確度	
  	unsigned char i = 0;
	unsigned int Temp_Result_Sum=0;
	Begin_ADC12_SM();						//啟動單通道序列轉(zhuǎn)換
	while(ADC12_CON_Flag)					//等待一輪轉(zhuǎn)換結(jié)束
	  	;
	//這段代碼看似冗長,但可以節(jié)約一定時(shí)間
	//****************************************
	//A0通道
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		Temp_Result_Sum += A0_Results[i];
	}
	p_Result[0] = Temp_Result_Sum / NUM_OF_RESULTS;
	Temp_Result_Sum = 0;
	//A1通道
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		Temp_Result_Sum += A1_Results[i];
	}
	p_Result[1] = Temp_Result_Sum / NUM_OF_RESULTS;
	Temp_Result_Sum = 0;
	//A2通道
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		Temp_Result_Sum += A2_Results[i];
	}
	p_Result[2] = Temp_Result_Sum / NUM_OF_RESULTS;
	Temp_Result_Sum = 0;
	//A3通道
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		Temp_Result_Sum += A3_Results[i];
	}
	p_Result[3] = Temp_Result_Sum / NUM_OF_RESULTS;
	Temp_Result_Sum = 0;
	//A4通道
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		Temp_Result_Sum += A4_Results[i];
	}
	p_Result[4] = Temp_Result_Sum / NUM_OF_RESULTS;
	Temp_Result_Sum = 0;
	//Clear_ADC_Buffer();
	//*************************************************
}

void Clear_ADC_Buffer(void)
{
	unsigned char i = 0;
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		A0_Results[i]=0;
	}
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		A1_Results[i]=0;
	}
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		A2_Results[i]=0;
	}
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		A3_Results[i]=0;
	}
	for(i=0; i<NUM_OF_RESULTS; i++)
	{
		A4_Results[i]=0;
	}
}

#pragma vector=ADC12_VECTOR
__interrupt void ADC12ISR (void)
{
  	A0_Results[ADC12_Index] = ADC12MEM0;            // Move A0 results, IFG is cleared
  	A1_Results[ADC12_Index] = ADC12MEM1;            // Move A1 results, IFG is cleared
  	A2_Results[ADC12_Index] = ADC12MEM2;            // Move A2 results, IFG is cleared
  	A3_Results[ADC12_Index] = ADC12MEM3;            // Move A3 results, IFG is cleared
	A4_Results[ADC12_Index] = ADC12MEM4;            // Move A3 results, IFG is cleared
	
	ADC12_Index = (ADC12_Index+1)%NUM_OF_RESULTS;  	// Increment results index, modulo; Set Breakpoint1 here
	
	if(ADC12_Index==0)								//一輪轉(zhuǎn)換完成,數(shù)據(jù)將被讀出
	{
		ADC12_CON_Flag=0;							//清除忙標(biāo)志
		Stop_ADC12_SM();							//轉(zhuǎn)換結(jié)束
	}
	else
	{
		ADC12_CON_Flag=1;							//設(shè)置忙標(biāo)志,正在轉(zhuǎn)換
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久中文综合久久97| 欧美日韩国产大片| 五月婷婷久久丁香| 中文字幕国产一区二区| 在线观看国产一区二区| 国产一区二区三区高清播放| 亚洲一区二区在线免费观看视频 | 高清久久久久久| 天天操天天综合网| 亚洲人成网站在线| 国产欧美视频一区二区| 欧美一级生活片| 日本乱人伦一区| 粉嫩嫩av羞羞动漫久久久| 男男gaygay亚洲| 亚洲一区欧美一区| 亚洲美女在线一区| 亚洲欧洲国产日韩| 久久久精品免费免费| 日韩欧美国产一二三区| 欧美色精品在线视频| 色综合天天狠狠| 成人午夜看片网址| 国产suv一区二区三区88区| 精品制服美女丁香| 奇米精品一区二区三区四区| 亚洲第四色夜色| 一区二区国产盗摄色噜噜| 国产亚洲精品福利| 久久综合国产精品| 久久久精品2019中文字幕之3| 91精品婷婷国产综合久久| 91久久人澡人人添人人爽欧美| 成人av网站在线观看免费| 国产成人在线视频免费播放| 久久精品国产精品亚洲精品| 日韩电影在线一区| 视频精品一区二区| 日韩激情一二三区| 美洲天堂一区二卡三卡四卡视频| 亚洲成人午夜电影| 日韩国产欧美在线播放| 日韩国产在线观看| 久久精品国产免费| 国产精品综合一区二区三区| 国产综合色产在线精品| 国内久久精品视频| 国产成人99久久亚洲综合精品| 国产成人亚洲综合a∨婷婷| 国产成人av在线影院| 国产91精品露脸国语对白| 成人精品免费视频| 93久久精品日日躁夜夜躁欧美| 99久久99久久久精品齐齐| 97se亚洲国产综合自在线不卡| 色婷婷综合在线| 91国内精品野花午夜精品| 欧美日韩在线综合| 日韩视频在线观看一区二区| 日韩精品综合一本久道在线视频| 久久久久久**毛片大全| 国产精品久久免费看| 一二三区精品视频| 蜜桃视频一区二区三区| 国产又粗又猛又爽又黄91精品| 高清国产一区二区| 日本高清视频一区二区| 在线成人免费观看| 久久综合av免费| 亚洲同性gay激情无套| 亚洲综合久久久久| 奇米精品一区二区三区在线观看| 国产麻豆成人传媒免费观看| 99久久精品免费精品国产| 欧美日韩国产综合一区二区三区 | 一区二区日韩av| 喷白浆一区二区| 不卡av电影在线播放| 欧美性猛交xxxx黑人交| 日韩精品一区二区三区在线播放| 中文字幕欧美日韩一区| 午夜精品久久久久久久99水蜜桃| 国内精品自线一区二区三区视频| 99久久久精品免费观看国产蜜| 91麻豆精品国产无毒不卡在线观看 | 欧美三级中文字幕在线观看| 精品欧美乱码久久久久久1区2区| 18欧美亚洲精品| 久久国产精品99久久久久久老狼| 色诱视频网站一区| 久久亚洲影视婷婷| 亚洲第一成年网| 成人aa视频在线观看| 欧美一级一区二区| 亚洲另类在线制服丝袜| 狠狠色丁香婷婷综合久久片| 色噜噜久久综合| 久久九九影视网| 视频精品一区二区| 99re热这里只有精品视频| 日韩欧美国产一区二区在线播放| 亚洲精品国产无天堂网2021| 国产成人精品午夜视频免费| 欧美美女bb生活片| 亚洲激情综合网| 成人性生交大片免费看中文| 欧美本精品男人aⅴ天堂| 亚洲国产裸拍裸体视频在线观看乱了| 国产精品一区二区在线播放| 欧美精品一卡二卡| 一区二区三区精品视频| 粉嫩欧美一区二区三区高清影视| 日韩欧美123| 日日噜噜夜夜狠狠视频欧美人| 99久久99久久综合| 国产精品久久久久久久久免费相片 | 日韩欧美电影在线| 日韩在线卡一卡二| 在线观看区一区二| 亚洲欧洲制服丝袜| 不卡视频一二三| 国产精品视频九色porn| 国产高清精品久久久久| 久久综合久久综合亚洲| 麻豆精品久久精品色综合| 欧美日高清视频| 亚洲一区二区视频在线观看| 97久久精品人人澡人人爽| 国产精品久久看| 成人免费视频免费观看| 亚洲国产岛国毛片在线| 成人性视频免费网站| 国产精品视频九色porn| www.亚洲色图| 亚洲视频每日更新| 在线观看日韩一区| 亚洲高清一区二区三区| 欧美日韩一区三区| 午夜精品福利一区二区三区av| 欧美亚洲一区二区在线| 一区二区三区四区五区视频在线观看| 91亚洲国产成人精品一区二区三| 国产精品久久久久久久久免费相片| www.视频一区| 一区二区三区中文免费| 在线观看欧美黄色| 视频一区视频二区中文字幕| 欧美一区二区三区视频免费播放| 免费欧美在线视频| 久久九九久久九九| www.亚洲色图| 亚洲va在线va天堂| 日韩免费视频一区| 成人精品亚洲人成在线| 亚洲美女精品一区| 欧美一区二区三区啪啪| 麻豆精品国产传媒mv男同| 欧美精品一区二区高清在线观看| 国产福利一区二区三区视频在线| 国产精品国产三级国产三级人妇| 91视视频在线观看入口直接观看www| 一区二区在线看| 337p亚洲精品色噜噜噜| 精品在线观看视频| 中文字幕一区免费在线观看| 在线亚洲免费视频| 黑人巨大精品欧美一区| 国产精品久久久久久久久免费相片 | 99久久夜色精品国产网站| 亚洲综合999| 日韩女优制服丝袜电影| 成人免费毛片高清视频| 亚洲一区二区三区四区在线免费观看 | 欧美日韩一区在线| 国产综合久久久久久久久久久久| 中文字幕av一区 二区| 欧美日韩国产三级| 国产精品性做久久久久久| 亚洲欧美一区二区久久| 欧美一级日韩一级| 91热门视频在线观看| 日韩av中文字幕一区二区三区| 国产精品热久久久久夜色精品三区| 欧美亚洲国产一区二区三区 | 最新国产成人在线观看| 91精品国产综合久久福利软件 | 国产精品一区不卡| 亚洲一区二区黄色| 国产日韩欧美在线一区| 欧美日韩高清在线| 成人h精品动漫一区二区三区| 亚洲成av人片一区二区梦乃| 亚洲国产精品99久久久久久久久| 91精品久久久久久蜜臀| 色综合中文字幕| 国产成人午夜高潮毛片| 五月天丁香久久| 亚洲色图都市小说| 亚洲精品一区在线观看| 5566中文字幕一区二区电影 |