?? zu.c
字號:
/****************************************************************************
文件名:main.c
編寫者:czhang
描述:適用比較器A測電阻值模塊。用于13xx 14xx 15xx 16xx系列。
MCLK:DCO ACLK:32.768kHz
版本:2005-4 V1.0
*****************************************************************************/
#include <msp430xw42x.h>
//#include "general.h"
#include "comparator.h"
#include "df_bh_timera.h"
#include "zu.h"
#define RDIR P3DIR
#define ROUT P3OUT
#define REF BIT3 //參考電阻接 P3.3
#define RSEN BIT4 //被測電阻接 P3.4
#define REF_ZHI 0.986 //參考電阻的阻值,K歐姆
void DelayMs(void)
{
unsigned int k;
for (k=0;k<10000;k++){};
}
/****************************************************************************
測量電阻阻值
返回值:電阻值
*****************************************************************************/
float MeasureR()
{
unsigned int time_ref0,time_ref1,time_rsen0,time_rsen1,iq0,iq1;
float fr;
//充電
RDIR |= REF; //通過REF充電
ROUT |= REF;
DelayMs(); //延時15ms
//測REF放電時間
ClearBuHuo();
time_ref0=TAR;
ROUT &= ~REF; //通過REF放電
while(GetTime(&time_ref1)==0); //讀REF放電的時間
iq1=time_ref1-time_ref0;
//充電
RDIR |= REF; //通過REF充電
ROUT |= REF;
DelayMs(); //延時15ms
//測RSEN放電時間
ClearBuHuo();
time_rsen0=TAR;
RDIR &= ~REF; //停止通過REF充電
ROUT &= ~RSEN; //通過RSEN放電
RDIR |= RSEN;
while(GetTime(&time_rsen1)==0); //讀REF放電的時間
iq0=time_rsen1-time_rsen0;
RDIR &= ~RSEN; //停止放電
//計算電阻值
fr=(float)REF_ZHI*iq0;
fr=fr/iq1;
return fr;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -