<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用單片機(jī)多余I/O口實(shí)現(xiàn)溫度檢測(cè)電路

          利用單片機(jī)多余I/O口實(shí)現(xiàn)溫度檢測(cè)電路

          作者: 時(shí)間:2011-10-12 來(lái)源:網(wǎng)絡(luò) 收藏

            在電子產(chǎn)品中的應(yīng)用已經(jīng)越來(lái)越廣泛,在很多的電子產(chǎn)品中也用到了和溫度控制,但那些與控制電路通常較復(fù)雜,成本也高,本文提供了一種低成本的利用多余I/O口實(shí)現(xiàn)的電路,該電路非常簡(jiǎn)單,且易于實(shí)現(xiàn),并且適用于幾乎所有類型的。其電路如下圖所示:

            

          利用單片機(jī)多余I/O口實(shí)現(xiàn)溫度檢測(cè)電路

            左圖中:

            P1.0、P1.1和P1.2是單片機(jī)的3個(gè)I/O腳,RK為100k的精密電阻,RT為100K-精度為1%的熱敏電阻,R1為100Ω的普通電阻,C1為0.1μ的瓷介電容。其工作原理為:

            先將P1.0、P1.1、P1.2都設(shè)為低電平輸出,使C1放電至放完。

            將P1.1、P1.2設(shè)置為輸入狀態(tài),P1.0設(shè)為高電平輸出,通過(guò)RK電阻對(duì)C1充電,單片機(jī)內(nèi)部計(jì)時(shí)器清零并開(kāi)始計(jì)時(shí),檢測(cè)P1.2口狀態(tài),當(dāng)P1.2口檢測(cè)為高電平時(shí),即C1上的電壓達(dá)到單片機(jī)高電平輸入的門嵌電壓時(shí),單片機(jī)計(jì)時(shí)器記錄下從開(kāi)始充電到P1.2口轉(zhuǎn)變?yōu)楦唠娖降臅r(shí)間T1。

            將P1.0、P1.1、P1.2都設(shè)為低電平輸出,使C1放電至放完。

            再將P1.0、P1.2設(shè)置為輸入狀態(tài),P1.1設(shè)為高電平輸出,通過(guò)RT電阻對(duì)C1充電,單片機(jī)內(nèi)部計(jì)時(shí)器清零并開(kāi)始計(jì)時(shí),檢測(cè)P1.2口狀態(tài),當(dāng)P1.2口檢測(cè)為高電平時(shí),單片機(jī)計(jì)時(shí)器記錄下從開(kāi)始充電到P1.2口轉(zhuǎn)變?yōu)楦唠娖降臅r(shí)間T2。

            從電容的電壓公式:

          利用單片機(jī)多余I/O口實(shí)現(xiàn)溫度檢測(cè)電路

            可以得到:T1/RK=T2/RT,即 RT=T2×RK/T1

            通過(guò)單片機(jī)計(jì)算得到熱敏電阻RT的阻值。并通過(guò)查表法可以得到溫度值。

            從上面所述可以看出,該測(cè)溫電路的誤差來(lái)源于這幾個(gè)方面:?jiǎn)纹瑱C(jī)的定時(shí)器精度,RK電阻的精度,熱敏電阻RT的精度,而與單片機(jī)的輸出電壓值、門嵌電壓值、電容精度無(wú)關(guān)。因此,適當(dāng)選取熱敏電阻和精密電阻的精度,單片機(jī)的工作頻率夠高,就可以得到較好的測(cè)溫精度。當(dāng)單片機(jī)選用4M工作頻率,RK、RT均為1%精度的電阻時(shí),溫度誤差可以做到小于1℃。 如果P1.2具有外部上升沿中斷的功能,程序可以更簡(jiǎn)單,效果更好。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 單片機(jī) 溫度檢測(cè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();