⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 detect.c

📁 凌阳61单片机做的酒精控制器源码 凌阳61单片机做的酒精控制器源码 凌阳61单片机做的酒精控制器源码 凌阳61单片机做的酒精控制器源码
💻 C
字号:
#include"SPCE061A.H"
#include"Detect.h"

#define DETECT_DATA_STATE_VALIDATE  	0x0001
#define DETECT_DATA_STATE_INVALIDATE	0x0000

#define DETECT_AD_LINE1		0x01
#define DETECT_AD_ENABLE	0x01

#define R0				3000 /*R0 */
#define RL				5000
#define THICKSTART		200
#define SLOPE			1/4         
#define RSR0_START		2

typedef struct _DetectData{
	unsigned int 	unDetectData;
	unsigned char 	ucDetectDataState;
}DETECT_DATA_s;


static DETECT_DATA_s	stDetectData;


void vDetectSysInit(void){
	*Port_AD_MUX_Ctrl = DETECT_AD_LINE1;
}

void vDetect(void){
	unsigned int unData;
	float fData;
	stDetectData.unDetectData = DETECT_DATA_VALUE_INVALIDATE;
	stDetectData.ucDetectDataState = DETECT_DATA_STATE_INVALIDATE;
	*Port_AD_Ctrl = DETECT_AD_ENABLE;
	while(!(*Port_AD_MUX_Ctrl&0x8000));
	unData = *Port_AD_MUX_Data;
	unData >>=6;
	fData = RSR0_START/SLOPE + (RL/SLOPE)/R0 - 1024/SLOPE*RL/R0/unData*3.3/5;
	stDetectData.unDetectData = (unsigned int)fData;
	stDetectData.ucDetectDataState = DETECT_DATA_STATE_VALIDATE;
}

unsigned int unGetDetectValue(void){
	if(DETECT_DATA_STATE_VALIDATE == stDetectData.ucDetectDataState){
		return stDetectData.unDetectData;
	}else{
		return DETECT_DATA_VALUE_INVALIDATE;
	}
}

⌨️ 快捷键说明

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