• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      單片機(jī)實(shí)現(xiàn)數(shù)字溫度計(jì)設(shè)計(jì)思路

      2014-07-31 15:37:12魏娟
      新媒體研究 2014年13期

      魏娟

      摘 要 介紹如何使用AT89C51單片機(jī)、PT100鉑電阻、MAX187A/D轉(zhuǎn)換芯片設(shè)計(jì)一款數(shù)字式溫度計(jì),能夠?qū)崟r(shí)檢測(cè)和顯示冰箱溫度,并具有溫度報(bào)警功能。

      關(guān)鍵詞 AT89C51;PT100鉑電阻;MAX187A/D轉(zhuǎn)換芯片

      中圖分類號(hào):TH811 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-7597(2014)13-0022-02

      隨著現(xiàn)代信息技術(shù)的飛速發(fā)展,能夠獨(dú)立工作的溫度檢測(cè)和顯示系統(tǒng)應(yīng)用于諸多領(lǐng)域。傳統(tǒng)溫度檢測(cè)以熱敏電阻為溫度敏感元件,熱敏電阻的成本低,但需要后續(xù)信號(hào)處理電路,而且可靠性相對(duì)較差,測(cè)溫準(zhǔn)確度低,檢測(cè)系統(tǒng)也有一定的誤差。與傳統(tǒng)溫度計(jì)相比,這里設(shè)計(jì)的數(shù)字溫度計(jì)具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫精確,數(shù)字顯示,適用范圍廣等優(yōu)點(diǎn)。

      1 設(shè)計(jì)概述

      本設(shè)計(jì)使用AT89C51單片機(jī)、PT100溫度傳感器等器件,監(jiān)測(cè)冰箱內(nèi)溫度的變化情況,系統(tǒng)功能概述具體如下。

      1)溫度檢測(cè):系統(tǒng)能實(shí)時(shí)監(jiān)測(cè)冰箱內(nèi)的溫度。溫度采集時(shí)間間隔為3 s,溫度分辨率為0.1℃,范圍:-50~+50℃。

      2)溫度顯示:系統(tǒng)能夠?qū)崟r(shí)顯示冰箱內(nèi)的溫度值,刷新周期為3 s,顯示到小數(shù)后一位。

      3)溫度報(bào)警:系統(tǒng)對(duì)超出范圍的溫度進(jìn)行報(bào)警處理,需具備聲、光提示功能。

      4)報(bào)警值設(shè)置:系統(tǒng)設(shè)置上、下限報(bào)警溫度值,設(shè)置精度為0.1℃。

      說明:溫度報(bào)警值由兩個(gè),上限報(bào)警值、下限報(bào)警值。當(dāng)冰箱溫度高于上限報(bào)警值則為上限報(bào)警;當(dāng)冰箱溫度低于下限報(bào)警值則為下限報(bào)警;處于兩只之間,系統(tǒng)不報(bào)警。

      2 模塊介紹

      我們?cè)诮榻B功能時(shí)可以把它分為幾種方式介紹,其中包括的模塊有:報(bào)警、電源、按鍵、溫度、顯示以及單片機(jī)模塊。具體如下圖。

      系統(tǒng)模塊圖

      從而我們?cè)偻ㄟ^應(yīng)用鍵盤模塊對(duì)共進(jìn)行相應(yīng)的設(shè)置。

      在應(yīng)用鍵盤模塊時(shí)主要是通過在按鍵上的數(shù)字鍵進(jìn)行設(shè)置,從0至9進(jìn)行輸入值,再加上應(yīng)用符號(hào)按鍵,所以,一般可以應(yīng)用4*4的行列矩陣。

      我們也可以應(yīng)用顯示模塊對(duì)其溫度進(jìn)行顯示。

      通??梢园逊秶O(shè)置成:-50~+50℃。

      并且把小數(shù)點(diǎn)一直顯示到最后一位,應(yīng)用系統(tǒng)必須要應(yīng)用相應(yīng)的數(shù)碼管,一般是以靜態(tài)顯示為主。此時(shí),應(yīng)用LED數(shù)碼管的第一位是用來顯示符號(hào)的,用二、三位是用來對(duì)溫度進(jìn)行顯示的,而最后一位是用來進(jìn)行小數(shù)顯示的。

      而所謂的溫度采集主要是用來測(cè)量溫度值的,具有非常重要的作用。

      在對(duì)這部分進(jìn)行測(cè)溫時(shí)一般是通過應(yīng)用熱電偶溫差電路進(jìn)行工作的,其檢測(cè)的部分則可以對(duì)其應(yīng)用低溫?zé)崤?。在產(chǎn)生熱電偶的部分當(dāng)中一般是由溫差電勢(shì)以及金屬接觸的電勢(shì)相結(jié)合組成。從而我們可以把參考點(diǎn)一直維持在相應(yīng)的溫度上同時(shí)對(duì)其電壓進(jìn)行測(cè)量,這樣就可以對(duì)它的溫度來檢測(cè)。

      對(duì)數(shù)據(jù)進(jìn)行采集時(shí),一般是應(yīng)用A/D通道單片機(jī),同時(shí)也可以測(cè)出變化的溫度,對(duì)電流以及電壓進(jìn)行采集,在轉(zhuǎn)換以后,便可處理它的數(shù)據(jù)了。進(jìn)而也可以在顯示電路上顯示其溫度的數(shù)值了。

      所謂的報(bào)警模塊主要是用來光報(bào)警以及提供聲音的。

      在發(fā)出了蜂鳴器時(shí)也就是報(bào)警的聲音,再應(yīng)用發(fā)光二級(jí)管進(jìn)行上限和下限的報(bào)警方式。我們一般表示上限用紅色,而下限用綠色。

      一般系統(tǒng)會(huì)表示+9 V電源主要是指外部,可以用作運(yùn)算放大器LM324的參考電壓。其他的芯片以及單片機(jī)可以應(yīng)用+5V,也可以對(duì)其進(jìn)行轉(zhuǎn)變。

      單片機(jī)模塊定時(shí)采集電壓值,將其轉(zhuǎn)換成溫度值并顯示;接收鍵盤輸入,完成設(shè)置報(bào)警值的功能,因此可選用AT89C51單片機(jī)。

      以上是對(duì)單片機(jī)實(shí)現(xiàn)數(shù)字溫度計(jì)的功能分析,選擇滿足要求的電路芯片,然后進(jìn)行硬件電路的設(shè)計(jì)即可。

      3 硬件電路設(shè)計(jì)

      通過對(duì)數(shù)字溫度計(jì)的功能分析,選擇滿足要求的電路芯片,然后進(jìn)行硬件電路的設(shè)計(jì)。系統(tǒng)中主要用的芯片包括A/D轉(zhuǎn)換芯片MAX187、PT100鉑電阻檢測(cè)器。

      1)MAX187是一款12位逐次逼近式串行模數(shù)轉(zhuǎn)換器,在單5V電源下工作,模擬量的輸入范圍是0~5 V。

      2)PT100溫度檢測(cè)器是由白金做成的電阻,它的電阻值會(huì)隨溫度的變化而改變,而且比較穩(wěn)定。系統(tǒng)獲得PT100溫度檢測(cè)器的電阻值后,可以查電阻與溫度的關(guān)系表得到當(dāng)前的溫度。

      在硬件電路設(shè)計(jì)中,關(guān)鍵是測(cè)溫電路的設(shè)計(jì)。根據(jù)測(cè)量分辨率,系統(tǒng)采用鉑電阻橋式測(cè)溫電路,電壓差經(jīng)過運(yùn)放電路進(jìn)入12位串行A/D轉(zhuǎn)換器。

      4 軟件設(shè)計(jì)

      軟件設(shè)計(jì)主要是對(duì)溫度進(jìn)行采集、顯示并判斷是否超出設(shè)定范圍;通過按鍵操作,輸入溫度上下限報(bào)警值。因此,整個(gè)軟件可分為按鍵子程序、顯示子程序、溫度采集子程序、報(bào)警子程序及系統(tǒng)主程序。

      4.1 按鍵子程序

      uchar scan_key()

      {

      uchar keytemp,i;//定義局部變量

      keyport=0xf0;//行線輸出0,列線輸出1

      keytemp=keyport;//讀按鍵端口值

      if (keytemp==0xf0)

      return no_key;//無鍵按下,返回

      delay 15ms();

      keyport=keytemp|0x0f;//列線輸出,行線輸入

      keytemp=keyport;//讀取按鍵端口值

      for (i=0;i<12;i++)

      {

      if (keytemp==keycode[i])//根據(jù)按鍵端口掃描值,查找按鍵值

      break;endprint

      }

      keyport=0xf0;//行線0,列線輸出1

      while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      }

      4.2 溫度采集子程序

      uchar scan_key()

      {

      uchar keytemp,i;//定義局部變量

      keyport=0xf0;//行線輸出0,列線輸出1

      keytemp=keyport;//讀按鍵端口值

      if (keytemp==0xf0)

      return no_key;//無鍵按下,返回

      delay 15ms();

      keyport=keytemp|0x0f;//列線輸出,行線輸入

      keytemp=keyport;//讀取按鍵端口值

      for (i=0;i<12;i++)

      {

      if (keytemp==keycode[i])

      break;

      }

      keyport=0xf0; while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      4.3 報(bào)警子程序

      void alarm (uint temp)

      { if (temp>upperv)//上限報(bào)警,紅色亮,蜂鳴器響

      {ledredcon=0;

      speakercon=0;

      }

      else if(temp

      {ledgreencin=0;

      speakercon=0;

      }

      else

      {ledgreencon=1;//沒發(fā)生報(bào)警

      speakercon=1;

      ledgreencon=1;

      }

      }

      5 結(jié)束語

      本文介紹的只是一個(gè)簡單數(shù)字式溫度計(jì)的設(shè)計(jì)思路,還可以增加存儲(chǔ)器存儲(chǔ)溫度值;可以增加通信功能,將存儲(chǔ)的數(shù)據(jù)傳給計(jì)算機(jī)進(jìn)行處理。

      參考文獻(xiàn)

      [1]寇戈.模擬電路與數(shù)字電路[M].北京:電子工業(yè)出版社,2011.

      [2]黃勤.單片機(jī)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2010.

      }

      keyport=0xf0;//行線0,列線輸出1

      while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      }

      4.2 溫度采集子程序

      uchar scan_key()

      {

      uchar keytemp,i;//定義局部變量

      keyport=0xf0;//行線輸出0,列線輸出1

      keytemp=keyport;//讀按鍵端口值

      if (keytemp==0xf0)

      return no_key;//無鍵按下,返回

      delay 15ms();

      keyport=keytemp|0x0f;//列線輸出,行線輸入

      keytemp=keyport;//讀取按鍵端口值

      for (i=0;i<12;i++)

      {

      if (keytemp==keycode[i])

      break;

      }

      keyport=0xf0; while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      4.3 報(bào)警子程序

      void alarm (uint temp)

      { if (temp>upperv)//上限報(bào)警,紅色亮,蜂鳴器響

      {ledredcon=0;

      speakercon=0;

      }

      else if(temp

      {ledgreencin=0;

      speakercon=0;

      }

      else

      {ledgreencon=1;//沒發(fā)生報(bào)警

      speakercon=1;

      ledgreencon=1;

      }

      }

      5 結(jié)束語

      本文介紹的只是一個(gè)簡單數(shù)字式溫度計(jì)的設(shè)計(jì)思路,還可以增加存儲(chǔ)器存儲(chǔ)溫度值;可以增加通信功能,將存儲(chǔ)的數(shù)據(jù)傳給計(jì)算機(jī)進(jìn)行處理。

      參考文獻(xiàn)

      [1]寇戈.模擬電路與數(shù)字電路[M].北京:電子工業(yè)出版社,2011.

      [2]黃勤.單片機(jī)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2010.

      }

      keyport=0xf0;//行線0,列線輸出1

      while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      }

      4.2 溫度采集子程序

      uchar scan_key()

      {

      uchar keytemp,i;//定義局部變量

      keyport=0xf0;//行線輸出0,列線輸出1

      keytemp=keyport;//讀按鍵端口值

      if (keytemp==0xf0)

      return no_key;//無鍵按下,返回

      delay 15ms();

      keyport=keytemp|0x0f;//列線輸出,行線輸入

      keytemp=keyport;//讀取按鍵端口值

      for (i=0;i<12;i++)

      {

      if (keytemp==keycode[i])

      break;

      }

      keyport=0xf0; while(keyport!=0xf0);//等待按鍵是否釋放

      delay 15ms();//延時(shí)

      return i;

      }

      4.3 報(bào)警子程序

      void alarm (uint temp)

      { if (temp>upperv)//上限報(bào)警,紅色亮,蜂鳴器響

      {ledredcon=0;

      speakercon=0;

      }

      else if(temp

      {ledgreencin=0;

      speakercon=0;

      }

      else

      {ledgreencon=1;//沒發(fā)生報(bào)警

      speakercon=1;

      ledgreencon=1;

      }

      }

      5 結(jié)束語

      本文介紹的只是一個(gè)簡單數(shù)字式溫度計(jì)的設(shè)計(jì)思路,還可以增加存儲(chǔ)器存儲(chǔ)溫度值;可以增加通信功能,將存儲(chǔ)的數(shù)據(jù)傳給計(jì)算機(jī)進(jìn)行處理。

      參考文獻(xiàn)

      [1]寇戈.模擬電路與數(shù)字電路[M].北京:電子工業(yè)出版社,2011.

      [2]黃勤.單片機(jī)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2010.

      泊头市| 丁青县| 如东县| 东安县| 安顺市| 福海县| 贵港市| 周至县| 商都县| 阿城市| 高唐县| 四会市| 炎陵县| 桃源县| 东源县| 孝感市| 准格尔旗| 汉源县| 三穗县| 阳西县| 吴江市| 响水县| 绥滨县| 巴林右旗| 天等县| 太康县| 克东县| 永济市| 丹凤县| 光山县| 永善县| 六安市| 黄大仙区| 鹿邑县| 彝良县| 寿宁县| 广州市| 大连市| 珠海市| 铜梁县| 沽源县|