本文提供了一種低成本的利用單片機多余I/O口實現的溫度檢測電路,該電路非常簡單,且易于實現,并且適用于幾乎所有類型的單片機。其電路如下圖所示:
圖中:
P1.0、P1.1和P1.2是單片機的3個I/O腳;
RK為100k的精密電阻;
RT為100K-精度為1%的熱敏電阻;
R1為100Ω的普通電阻;
C1為0.1μ的瓷介電容。
其工作原理為:
1.先將P1.0、P1.1、P1.2都設為低電平輸出,使C1放電至放完。
2.將P1.1、P1.2設置為輸入狀態,P1.0設為高電平輸出,通過RK電阻對C1充電,單片機內部計時器清零并開始計時,檢測P1.2口狀態,當P1.2口檢測為高電平時,即C1上的電壓達到單片機高電平輸入的門嵌電壓時,單片機計時器記錄下從開始充電到P1.2口轉變為高電平的時間T1。
3.將P1.0、P1.1、P1.2都設為低電平輸出,使C1放電至放完。
4.再將P1.0、P1.2設置為輸入狀態,P1.1設為高電平輸出,通過RT電阻對C1充電,單片機內部計時器清零并開始計時,檢測P1.2口狀態,當P1.2口檢測為高電平時,單片機計時器記錄下從開始充電到P1.2口轉變為高電平的時間T2。
5.從電容的電壓公式
?

?
可以得到:T1/RK=T2/RT,即RT=T2×RK/T1通過單片機計算得到熱敏電阻RT的阻值。并通過查表法可以得到溫度值。
從上面所述可以看出,該測溫電路的誤差來源于這幾個方面:單片機的定時器精度,RK電阻的精度,熱敏電阻RT的精度,而與單片機的輸出電壓值、門嵌電壓值、電容精度無關。因此,適當選取熱敏電阻和精密電阻的精度,單片機的工作頻率夠高,就可以得到較好的測溫精度。
當單片機選用4M工作頻率,RK、RT均為1%精度的電阻時,溫度誤差可以做到小于1℃。
如果P1.2具有外部上升沿中斷的功能,程序可以更簡單,效果更好。
這里還沒有內容,您有什么問題嗎?
電子電路資源推薦
- 深入理解BootLoader (電子與嵌入式系統設計叢書)
來源:下載中心
- 電動車輛能量轉換與回收技術
來源:下載中心
- 直流電源設計
來源:大學堂
- 開關電源電路設計入門
來源:大學堂
- PCB板基礎知識講解
來源:電路圖
- 電阻和電阻定律以及0歐電阻和上、下拉電阻的作用
來源:電路圖
推薦帖子 最新更新時間:2025-04-09 16:08
- gmake: *** CreatePipe() failed (e=161). stop
- 本人在用CCS4.2編譯工程時,最后結果是gmake: *** CreatePipe() failed (e=161). stop,經過試驗,刪掉一個.c源文件就沒有問題了,如果再加上去,即使源文件里什么內容都沒有也不行,還是出錯,莫非有文件個數的限制? gmake: *** C
dsppanke
DSP 與 ARM 處理器
- 新鮮出爐的CC3200評估板,有興趣瞅瞅。
- 這個CC3200 Launch Pad 是參考 TI CC3200 Launch Pad Rev4.1 版本修改而來的,把 CC3200 芯片以模塊方式從 Launch Pad 板子上分離出來,并在原版的基礎上增加了部分跳線,使得 這個CC3200 Launch Pad 在完
wonbs
無線連接
- 怎么讓16位數據總線 輸出32位數據?
- 怎么讓16位數據總線 輸出32位數據? inout data; 存儲器 怎么讓16位數據總線 輸出32位數據? 求解,希望大家幫幫忙 沒明白什么意思 32bit可以分成兩個16bit發出去不? 截位,取高位輸出
angel1o
FPGA/CPLD
- 128與nRF24l01的程序調試問題
- 試了很多次都不成功,哪位大神發個程序來 128與nRF24l01的程序調試問題 14年做過一個avr和nrf的項目,部分代碼你看下吧
wxj199999
NXP MCU
- 硬件求助
- 各位大神,我想問一下大家 下圖中紅筆圈出來的那兩個接口接的是什么線?這種線一般用來做什么?信號輸入嗎 跟另外一個圈圈里面的那個借口是連著的嗎?小妹對這些一竅不通 只有幾張模糊的圖片 實在看不清楚 求大家幫忙看一下 不甚感激啊 硬件求助 拍左邊接口的正面圖啊? ai.en
小可姐
PCB設計
- TI 首屆低功耗設計大賽作品集
- 用戶名 心得&作品名稱 心得&作品鏈接 snoweaglemcu 【TI首屆低功耗設計大賽】微型LCR測試儀 http://bbs.eeworld.com.cn/thread-449061-1-1.html 【TI首屆低功耗設計大賽】微型LCR測試儀-硬件篇之一 h
maylove
微控制器 MCU
- TVS管的這種現象如何解釋?
- 利用Multisim學習模擬電路和數字電路--連載
- Ubuntu常用命令大全
- 汽車 DC/DC、多軌及 LDO 快速參考指南
- 使用NUCLEO-F091RC外接熱敏電阻測溫
- uC/OS-III學習交流群298038546
- 我的PCB設計分享
- 單片機的ADC為什么 一般都是 1M ?
- IAR STEP BY STEP
- CC1101發送數據問題
- 430單片機與串口調試助手通信時,硬件電路怎么連接?
- 關于觸摸延時開關電路
- msp430d2553
- DS18B20+89S52做的雙溫控程序
- 【虛擬儀器大賽】工廠機械臂--EEWORLD大學堂
- 【虛擬儀器大賽】全體感操縱機器人--EEWORLD大學堂
- 求購閑置的TI DSP C2000的板子! (已購得!!)
- 負反饋放大器反饋類型判斷的簡便方法
- 急!請教RS485串口通訊的問題
- 《無線LED 照明系統的設計應用》
- FRDM-PWRSTG: Freedom Accessory Boards for FRDM-GD3000EVB
- MC34071DR2G 高阻抗差分放大器的典型應用
- 使用 Analog Devices 的 LTC1174HVCS8 的參考設計
- STEVAL-IPR002V2, 數據記錄器 &基于 M24LR64E-R EEPROM 的事件記錄器評估系統
- ZR431 可調精密齊納并聯穩壓器的典型應用
- DEMO9S08RG60E,MC9S08RG60 S08RG、RC、RD 或 RE 系列微控制器的演示板
- PCB試管架
- 使用反激式轉換器提供 60W 輸出功率的 AC/DC 適配器環路控制評估板
- LT1317BIS8 單節鋰離子至 5V DC/DC 轉換器的典型應用電路
- MIC2014-0.5Y 0.5A固定可調限流配電開關典型應用