久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6445|回復: 2
打印 上一主題 下一主題
收起左側

[分享]利用普通IO實現測溫

[復制鏈接]
跳轉到指定樓層
樓主
ID:3271 發表于 2011-1-18 13:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

 

//----------------------------------------
//   P6.0   P6.1
//    |      |
//   | |    | |NTC   
//   | |    | |
//   |_|    |_|
//    | ____ |
//        |
//        |
// P5.5---|
//        |
//       --- 104
//       ---
//        |
//        |
//        |
//      _____ GND 
//       ___
//        _ 
    
//----------------------------------------
unsigned char test_temperature(void)
{   
    uchar tamp=0;
    Ttmp=0;
RC_num=0;

    //1.用基準電阻充電、放電6次,記錄6次的充電時間到test_temp[6]中;
do
{
P6CR&=0xfc;  //0-output 1-input  設置P6.0, P6.1輸出
Rp_TO_OUT;   //P5.5-output
Rm=0; 
Rc=0;
Rp=0;
for(dly=0xa00;dly;dly--)
{
WDTC();
}             //3個管腳都置低,對104電容放電
     
Rm_t=0;
P6CR|=0x02;  //P6.1輸入
Rp_TO_IN;    //P5.5輸入
Rm=1;        //用基準電阻充電
while(1)
{
if(Rp)
{
break;
}
Rm_t++;
}
WDTC();
test_temp[RC_num]=Rm_t;
RC_num++;
}
while(RC_num<6);  //采樣6次

//2.對記錄的6個數據去掉min和max,其余的4個值求其平均值
//  test_temp 0    1   2   3  4  5
//           min                max
RC_num=0;
Rmin_p=0;
Rmax_p=5;
Rmin_t=test_temp[0];
Rmax_t=test_temp[5];
do
{
if(test_temp[RC_num+1]<Rmin_t)
{
Rmin_t=test_temp[RC_num+1];
Rmin_p=RC_num+1;
}
if(test_temp[4-RC_num]>Rmax_t)
{
Rmax_t=test_temp[4-RC_num];
Rmax_p=4-RC_num;
}
RC_num++;
}
while(RC_num<5);  //找出數組中的最大及最小值

RC_num=0;
Rm_t=0;
do
{
if(RC_num!=Rmin_p)
{
if(RC_num!=Rmax_p)
{
Rm_t+=test_temp[RC_num];
}
}
RC_num++;
}
while(RC_num<6); //去max,min,取平均值
Rm_t>>=2;  //除于4 求平均值

    //3.用熱敏電阻充電、放電6次,記錄6次的充電時間到test_temp[6]中;
RC_num=0;
do
{
P6CR&=0xfc;
Rp_TO_OUT;
Rm=0;
Rc=0;
Rp=0;
for(dly=0xa00;dly;dly--)
{
WDTC();
}

Rc_t=0;
P6CR|=0x01;   //用NTC充電
Rp_TO_IN;
Rc=1;
while(1)
{
if(Rp)
{
break;
}
Rc_t++;
}
WDTC();

test_temp[RC_num]=Rc_t;
RC_num++;
}
while(RC_num<6);

//4.對記錄的6個數據去掉min和max,其余的4個值求其平均值
RC_num=0;
Rmin_p=0;
Rmax_p=5;
Rmin_t=test_temp[0];
Rmax_t=test_temp[5];
do
{
if(test_temp[RC_num+1]<Rmin_t)
{
Rmin_t=test_temp[RC_num+1];
Rmin_p=RC_num+1;
}
if(test_temp[4-RC_num]>Rmax_t)
{
Rmax_t=test_temp[4-RC_num];
Rmax_p=4-RC_num;
}
RC_num++; 
}while(RC_num<5);

RC_num=0;
Rc_t=0;  //基準電阻算出的平均值放在Rm_t中
do
{
if(RC_num!=Rmin_p)
{
if(RC_num!=Rmax_p)
{
Rc_t+=test_temp[RC_num];
}
}
RC_num++;
}
while(RC_num<6);//去max,min,取平均值
Rc_t>>=2;

//5.根據公式計算溫度值
//Vc = V0(1-e^(-T/RC))  ---> Trtc/Rrtc = Tm/Rm  ---> Trtc = (Rrtc*Tm)/Rm
Ttmp=(unsigned long)Rc_t*9950;
Ttmp=Ttmp/Rm_t;//求ntc值

if(Ttmp>=32960)
{
return 0;
}
if(Ttmp<=3588)
{
return 0x50;
}

//6.查表微調的方法?
RC_num=0;
Rm_t=Ttmp; 
do
{
if(Rm_t>=temp_table[RC_num+1])  //查表微調
{
/*Rm_t-=temp_table[RC_num+1];
Rc_t=temp_table[RC_num]-temp_table[RC_num+1];
Rm_t*=10;
Rm_t=Rm_t/Rc_t;
// RC_num++;*/
break;
}
RC_num++;
}
while(RC_num<48);

tamp=Bin1toBcd(RC_num);
//Rc_t<<=4;
//Rm_t|=Rc_t;
P6CR&=0xfC;
PORT6&=0xfC;

return tamp;
}


code unsigned short temp_table[49]=

  32960,30004,28526,27048,25570, 24456,23342,22228,21114,
  20000,19152,18304,17456,16608, 15760,15110,14460,13810,
  13160,12510,12008,11506,11004, 10502,10000,9610,9220,
  8830,8050,7742,7436,7130,6824,6517,6278,6039,5800,5561,
  5322,5129,4936,4743,4550,4357,4203,4050,3897,3744,3588
};

 

[此貼子已經被作者于2011-1-18 13:34:01編輯過]
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:16521 發表于 2011-6-8 13:27 | 只看該作者

大哥,有沒有原理圖啊,我的郵箱:peture@163.com,麻煩發我一份,多謝。

回復

使用道具 舉報

板凳
ID:29361 發表于 2011-6-17 10:31 | 只看該作者
我也想要原理圖!和完整的程序可以嗎?我的郵箱270967065@QQ.com!謝謝!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品一区二区三区在线播放 | 美女毛片| 国内精品视频在线 | 91免费小视频 | aaaaaa大片免费看最大的 | 婷婷色婷婷 | 日本在线观看网址 | 中文字幕视频在线看 | 欧美日韩一区在线播放 | 九九久久精品 | 精品国产乱码久久久久久a丨 | 五月激情婷婷在线 | 免费同性女女aaa免费网站 | 一区二区三区av | 日韩精品一区二区三区在线观看 | 成人在线一区二区 | 中文字幕二区三区 | 久久久久综合 | 久久久久久中文字幕 | 日韩在线看片 | 成人av免费| 精品免费视频一区二区 | 91福利电影在线观看 | 亚洲国产成人av好男人在线观看 | 99re在线视频观看 | 在线看免费的a | 亚洲精品福利在线 | 九九综合九九 | 午夜天堂精品久久久久 | 狠狠草视频 | 成人欧美一区二区 | 国产精品色 | 国产无人区一区二区三区 | 中文字幕在线观看第一页 | 亚洲成人www | 亚洲视频在线观看 | xx性欧美肥妇精品久久久久久 | 做a视频 | 蜜臀网站| 在线激情视频 | 成人av网站在线观看 |