歡迎來到裝配圖網! | 幫助中心 裝配圖網zhuangpeitu.com!
裝配圖網
ImageVerifierCode 換一換
首頁 裝配圖網 > 資源分類 > DOC文檔下載  

電子體溫計設計

  • 資源ID:114060340       資源大小:603.50KB        全文頁數:34頁
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

電子體溫計設計

任務分配總體方案設計:XXX XXX XXX XXX XXX XXX 軟件系統設計:XXX XXX硬件系統設計:XXX XXX繪圖:XXX軟件編程:XXX XXX XXX XXX整體效果圖:目錄任務分配0第1章 緒論11.1 設計背景11.2 系統總體方案設計概述2第2章 方案設計32.1 性能要求32.2 設計思路3第3章 電子體溫計的控制電路的設計(硬件系統的設計)43.1 總體設計思想43.2 傳感器電路43.3 單片機電路63.4 LCD1602顯示屏電路93.5 電源模塊11第4章 軟件控制程序的設計134.1 DS18b20的讀操作134.2 DS18b20的溫度數據處理144.3 1602顯示部分15第5章 系統調試與測量175.1 系統調試175.2 測量數據175.3 誤差分析18課程設計心得19附錄120附錄221參考文獻29千萬不要刪除行尾的分節(jié)符,此行不會被打印。在目錄上點右鍵“更新域”,然后“更新整個目錄”。打印前,不要忘記把上面“Abstract”這一行后加一空行第1章 緒論1.1 設計背景由于水銀體溫計精度很高、使用方便、并且易于攜帶,因而很多人喜歡采用水銀體溫計。再加上體溫計測溫方法及其結構都已完全成熟,并沒太多的改進余地,人們對水銀體溫計的研究熱情逐漸漸低,到現在水銀體溫計幾乎已經沒有什么發(fā)展的余地。再加上由于測量體溫用水銀體溫計很不方便,如果打破摔壞體溫計,水銀的污染也很嚴重等,為了準確測量人體的局部溫度,促使人們不得不開發(fā)了多種多樣的測溫方式和測溫器件設備?,F在其它不同種類的電子儀器測量體溫也日益普及,已有許多醫(yī)院采用了電子體溫計來測量體溫。這一事實至少說明了,電子測溫儀器的性能與水銀溫度計的性能已經很接近了。因此,鑒于傳統的水銀體溫計多種因素,諸如汞的污染及其攜帶不方便易破碎,尤其是測量時間過長等缺點,本課題為解決此問題設計出一種數字式電子體溫計。它在穩(wěn)定性及響應時間上比傳統的水銀體溫計有著顯著的優(yōu)勢,精度要求也能和傳統的水銀體溫計相媲美。單片機智能化儀表在測量儀表的方面,有著很大的發(fā)展趨勢。它給日常生活帶來多方面的進步,其中數字溫度計就是一個典型的例子,家庭、醫(yī)院等隨處可見,為了能更加滿足人們的需要,數字體溫計正在不斷的進行更新換代?,F在所使用的溫度計還有很多是水銀、酒精或煤油。溫度計的分辨力都是為10.1。這些普通水銀溫度計的刻度間隔通常都很密集,讀數比較困難,分辨的不準確,而且他們有著比較大的熱容量,需要很長時間達到熱平衡,因此溫度數值很難讀準,使用非常不方便。本設計所介紹的電子體溫計,主要用于家庭等普通環(huán)境。與傳統的水銀溫度計相比,電子體溫計易于讀數,廣泛的測溫范圍,測溫精度比較高等優(yōu)點,其輸出溫度采用數字顯示?,F在溫度計發(fā)展非常迅速,從最原始的玻璃管溫度計發(fā)展到了現在的熱電偶溫度計、熱電阻溫度計、集成的半導體數字溫度計等。在電子式溫度計中,最重要組成部分就是傳感器。溫度計的測量范圍、精度、控制范圍和用途取決于傳感器的精度、靈敏度等等?,F在的溫度傳感器被廣泛的應用,目前已經研制出各種各樣的新型溫度傳感器,從而現在溫度監(jiān)控系統的功能日趨強大。1.2 系統總體方案設計概述該系統用于體溫檢測,能準確快速地測量人體體溫,并且需要實時的顯示當前的溫度。與傳統的水銀玻璃體溫計相比,電子體溫計具有方便的讀數,高精度的測量,測量時間比較短,能記憶并有與其它體溫計不同的蜂鳴提示的優(yōu)點。第2章 方案設計2.1 性能要求測溫范圍32°C 43°C,誤差在±0.2°C以內,當溫度超過37.5°C時,可以報警,采用LED數碼管直讀顯示。并且能夠實時的寬范圍的溫度檢測,能清楚的顯示與讀出數據。2.2 設計思路本研究旨在設計一個電子體溫計,主要控制器采用單片機STC89C52,傳感器采用美國DALLAS半導體公司生產的DS18B20智能型傳感器。該傳感器檢查的溫度是32°C 43°C之間,檢查的分辨率為±0.2°C。當溫度出現不同尋常的時候,不在設置范圍內時,可以報警,且是通過蜂鳴器。研究工作總體包括以下多個方面:了解電子體溫計的工作原理,典型結構,發(fā)展歷史及國內外的研究和發(fā)展的現狀;研究電子體溫計的兩個最主要的核心模塊:DS18B20傳感器控制和STC89C52單片機主控制器。第3章 電子體溫計的控制電路的設計(硬件系統的設計)3.1 總體設計思想串口通信接口5V穩(wěn)壓電路時鐘振蕩主控制器LED顯示溫度傳 感器圖3-1系統框圖3.2 傳感器電路美國DALLAS半導體公司設計生產一種DS18B20溫度傳感器,并且DS18B20是一種智能化的溫度傳感器。新出來的,比較流行的溫度傳感器,是與平常傳統的熱敏電阻等測量溫度的元件相比較,它提供9位(二進制)溫度讀數,并且可以指示器件的溫度,而且能夠直接讀出被測的溫度數值,因此選用此傳感器。DS18B20的性能和特點如以下幾點,都是很好的優(yōu)點:其一是多個DS18B20可以并聯在唯一一個單獨的三線上,并且能夠實現多點組網功能;其二是獨特單獨的單線接口僅僅需要一個端口引腳就可以進行通信;其三是用戶可以自己定義的非易失性溫度報警的設置;不需要外部的外圍器件;其余的是可以通過數據線供電,電壓范圍為是在3.05.5V;當待機的時候,功耗為零;溫度以912位的數字兩讀出;負電壓特性,當電源極性接反的時候,溫度計不會因發(fā)熱而燒毀,只是不能正常工作。報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件。DS18B20的主要特性:(1)適應更加寬廣的電壓范圍,電壓范圍:3.05.5V,并且采用數據線供電,與此同時也可以采用寄生電源方式;(2)DS18B20還具有的很多強大的功能,其中一項就是支持多點的組網功能,在唯一單獨的三線上,就可以讓多個DS18B20功能并聯,實現組網多點測量體溫;(3)具有很獨特的單線接口方式,需要一條口線即可讓DS18B20在與微處理器連接,并且能夠實現微處理器與DS18B20的雙向通訊;(4)不需要用其他的任何外圍的元器件DS18B20就可以使用,一只三極管的集成電路包含了全部傳感元件及轉換電路;(5)溫范圍55+125,在-10+85的時侯精度是±0.5左右;(6)有912位的分辨率是可以用來編寫程序的,對應的可分辨溫度依次分別為0.0625、0.125、0.25和0.5,測量溫度可實現精度高;(7)溫度轉換為數字,且條件是在9位分辨率時,最多花費 93.75ms,而在12位分辨率時,把溫度值轉換為數字,速度更快,最多在750ms內;(8)測量結果可以輸出直接明確的數字的溫度信號,通過串行,CPU接受"一線總線",同時可以傳送CRC校驗碼,擁有極強的抗干擾糾錯能力;(9)負壓特性:當接反電源極性的時候,芯片不會發(fā)熱,因而更加不會被燒毀, 但之后不能正常工作。 圖3-2 DS18B20電路圖 3-3 DS18B20封裝管腳圖3.3 單片機電路STC89C52是一種CMOS8位微小型控制器,其性能高、功耗低,并且具有可編程Flash存儲器,數據容量是8K。在單芯片上,STC89C52為眾多嵌入式控制系統應用提供有效、靈活的解決方案主要其原因就是擁有可編程Flash 和靈活的8位CPU。具有以下標準功能:512bitRAM,8kbitFlash,32位I/O口線,看門狗的定時器,內置4KB EEPROM,MAX810復位電路,單個6向量2級中斷結構,三個16 位計數器/定時器,全雙工串口。另外靜態(tài)邏輯操作是STC89X52 降至0Hz,并且支持2種軟件,與此同時,還可選擇節(jié)電模式。當CPU停止工作,就是屬于空閑模式。此時允許RAM、串口、計數器/定時器、中斷時候繼續(xù)工作。保存RAM內容,可以在掉電保護方式下,并且可以把振蕩器凍結了,單片機停止一切工作,直到下一個硬件復位或中斷為止。最高運作頻率35Mhz,6T/12T可選。STC單片機引腳說明:(1)GND:接地(2)VCC:電源電壓(3)RST:重新設置。當振蕩器復位器件時,要保證持續(xù)RST腳兩個機器周期的高電平時間。(4)/EA/VPP:在此時間段外部程序的存儲器(0000H-FFFFH),就必須是在/EA保持持續(xù)電平低時,不管是否有內部的程序存儲器。/EA將內部鎖定為恢復設置,此時應當注意加密方式1;當/EA端保持電平高的時候,在FLASH可以編寫程序的期間。此間的內部的程序存儲器,施加12V編程電源在這個引腳上,也可以用于(VPP)。(5)XTAL1:輸入內部時鐘的工作電路以及輸入反向振蕩的放大器。(6)XTAL2:為反向振蕩器的輸出。(7)P0口:總線復用口是P0口,而且是數據/地址合起來的,也即是一個8位開路漏級雙向I/O口。作為輸出口用時,每管腳可吸收8TTL門電流。P0能夠用于外部程序數據存儲器,它可以被定義為數據/地址的第八位。當P0口的管腳第一次寫1時,被定義為高阻態(tài)輸入。當FIASH進行校驗時,P0外部必須被拉高,是由于P0輸出原碼,在FIASH編程時,P0 口作為原碼輸入口。(8)P1口:把1寫在P1口管腳之后,高電平就會在內部產生,并且可以用作輸入。4TTL的門電流能夠被P1口緩沖器可以能夠吸收或輸出,主要原因是P1口內部帶一個可以提供上拉電阻的8位雙向I/O口。電流在內部被上拉,當下拉為低電平在P1口被外部產生的時候,電流將會被輸出。地址接收是當P1口作為第八位,并且在FLASH編程和校驗的時侯。 (9)P2口:4個TTL的門電流可以在P2口的緩沖器可吸收或輸出,P2口內部帶一個8位雙向I/O口,并且是可以上拉電阻的。并因當P2口的管腳被外部拉低,這個是作為輸入的時侯來的,將輸出電流。這是由于內部上拉的緣故。P2口在FLASH編程和校驗時接收控制信號和高八位地址信號。P2口當用在16位地址外部數據存儲器,并且進行存取或外部程序存儲器的時候,P2口輸出地址的高八位。管腳內部有上拉電阻拉高,主要是當P2口被寫“1”時,并且把P2口當作為輸入。它優(yōu)勢有利用內部上拉,并且在給出地址“1”的時侯,當進行讀寫外部八位地址數據存儲器的時候,P2口輸出其特殊功能寄存器的內容。(10)P3口:P3口內部的管腳是8個帶上拉電阻的雙向I/O口,可吸收或輸出4個TTL門電流。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。當P3口寫入“1”后,用作輸入,與此同時,并且內部電平上拉為高電平。AT89C51的某些特殊功能口可以采用P3口來實現,如下表所示:管腳備選功能P3.0 RXD串行輸入口P3.1 TXD串行輸出口P3.2/INT0外部的中斷0P3.3/INT1外部的中斷1P3.4 T0外部的輸入記時器0 P3.5 T1外部的輸入記時器1 P3.6 /WR寫選通的外部數據存儲器P3.7 /RD讀選通的外部數據存儲器P3口同時為閃爍編程和編程校驗,且可以接收一部分控制信號。(11)/PSEN:外部程序存儲器之中有選通信號在。在由外部程序存儲器工作時候,取指期間,兩次/PSEN有效,且在每個機器周期中。但兩次有效的/PSEN信號將不出現在訪問外部數據存儲器時。(12)ALE/PROG:通常情況下,ALE端輸出正脈沖信號,并且以不變的頻率周期,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。當外部存儲器準備被訪問的時候,鎖存地址的地位字節(jié)可以讓地址鎖存允許的輸出電平。此引腳用于輸入編程脈沖,主要是用在FLASH編程期間。此時,ALE只有在執(zhí)行MOVX,只有在ALE情況下,MOVC指令是才起作用的。然而要注意的是:跳過一個ALE脈沖,就會用作外部數據存儲器時。如想禁止ALE的輸出可在SFR8EH地址上置0。另外,該引腳被略微拉高。如果是無效的置位,很可能主要原因是禁止了微處理器在外部執(zhí)行狀態(tài)ALE。本次設計中使用的引腳為RXD,TXD,P2,P3口。 、圖3-4 STC89S52管腳圖 圖3-5 單片機電路原理圖3.4 LCD1602顯示屏電路1602液晶也叫1602字符型液晶,字母、數字、符號等的點陣型液晶模塊將可以顯示在1602上的,可以顯示一個字符,是通過每個點陣字符位來實現的,并且組成部分是若干個5X7或者5X11等點陣字符位。每位之間有一個點距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。1602LCD是指顯示的內容可以顯示每行16個字符液晶模塊,并且可以顯示兩行,1602代表的就是這個意思。LCD1602液晶顯示內容豐富、小巧的體積、功耗低、超薄且輕巧,常用在微型儀表和低功耗應用系統中。1602的16腳接口是采用標準規(guī)范的,其中: (1)第1腳:接地電源是VSS;(2)第2腳:正電源是VDD接+5V ;(3)第3腳:液晶顯示器調整對比度的端口是V0,接正電源的時候對比度是最弱的,接地電源的時候對比度是最高的,對比度太高時會出現不一樣的“鬼影”,使用時,對比度的調整,可以通過一個10K的電位器來進行;(4)第4腳:RS為選擇寄存器,指令寄存器用于低電平的時候、數據寄存器用于高電平的時候; (5)第5腳:信號線RW是代表讀寫的,寫操作通常都是在低電平的時候進行,讀操作通常都是在高電平的時候進行,顯示地址或者寫入指令就要當RS和RW均是為低電平的時候。低電平的時候可以寫入數據,必須要是當RS是高電平RW時候,高電平的時候可以讀忙信號,必須要是當RS是低電平RW時候; (6)第6腳:E端是使能端,其作用就是當E端從高電平跳轉成為低電平的時候,液晶模塊會按照流程執(zhí)行命令; (7)第714腳:8位雙向數據線是從D0到D7; (8)第1516腳:這些都是空腳;從以上可以知道,LCD1602有16只管腳,每只都有不同的作用。設計好電路,再通過軟件編程。當通電時候,就會啟動顯示屏,顯示屏就會工作,就會顯示外面所需要的。 圖3-6 LCD1602電路原理圖3.5 電源模塊如圖所示,該電路圖是電源模塊,主要負責整個電路系統的電源供應。整個電子體溫計采用的是穩(wěn)壓5V恒流電源。由于這個電子體溫計的電路系統的外部電源,不一定全都是系統所要求的而5V穩(wěn)壓電源,故需要對輸入的電壓進行穩(wěn)壓處理才行,通過處理電壓,才會產生5V的電壓。并且穩(wěn)壓是時候,所采用的穩(wěn)壓的芯片是最常用的78xx系列的7805穩(wěn)壓芯片。為了系統運行的穩(wěn)定性,而且由于穩(wěn)壓芯片有波動的波形。所以應該要對穩(wěn)壓之前和之后的電壓進行濾波處理,處理之后的波形,才會增加電形的平滑,這時候,電子體溫計整個電路系統才運行的更加穩(wěn)定,可靠,不會出問題。 圖3-7 電源模塊電路原理圖以下是整個電子體溫計的系統電路原理圖圖3-8 電子體溫計原理圖如圖3-8所示,整個電路原理圖,分有幾個模塊,其中主要就是有單片機模塊,DS18B20溫度傳感器模塊,顯示模塊和電源模塊。而其中也有些小模塊,如晶振模塊,報警器模塊等等。這四個大模塊,不同功能,有機的結合起來,成為一個完整的整體。第4章 軟件控制程序的設計4.1 DS18b20的讀操作DSl8B20的主要數據元件有:64位激光Lasered ROM,溫度靈敏元件和非易失性溫度告警觸發(fā)器TH和TL。DSl8B20可以從單總線獲取電源,當信號線為高電平時,將能量貯存在內部電容器中;當單信號線為低電平時,將該電源斷開,直到信號線變?yōu)楦唠娖街匦陆由霞纳?電容)電源為止。此外,還可外接5 V電源,給DSlD8B20供電。DSl8B20的供電方式靈活,利用外接電源還可增加系統的穩(wěn)定性和可靠性。DS18B20讀寫時序如圖4-14-3:圖4-1 DS18B20的復位時序圖圖4-2 DS18B20的寫數據時序圖圖4-3 DS18B20的讀數據時序圖由時序圖可知,DS18B20在復位時需要480us的低電平,等待15us后MCU將總線拉高,等待DS18B20的響應信號;DS18B20在寫數據時分為寫“0”和寫“1”操作,寫“0”操作時,DS18B20需要至少60us的總線被拉低,然后在60us內將“0”寫入DS18B20中,持續(xù)時間至少1us,寫“1”操作是只需將寫入的“0”改為“1”即可;DS18B20讀操作也分為讀“0”和讀“1”操作,讀“0”操作時,總線需要15us被拉低,再拉高45us,然后再15us內將數據讀走,讀“1”操作同讀“0”操作。程序流程圖如圖4-4:開始DS18B20的初始化啟動溫度轉換讀取溫度寄存器跳過讀序列號的操作跳過讀序列號的操作DS18B20的初始化RETLOW-低八位 HIGH-高八位圖4-4 DS18B20讀取溫度的流程圖4.2 DS18b20的溫度數據處理讀出溫度數據后,LOW的低四位為溫度的小數部分,可以精確到0.0625,LOW的高四位和HIGH的低四位為溫度的整數部分,HIGH的高四位全部為1表示負數,全為0表示正數。所以先將數據提取出來,分為三個部分:小數部分、整數部分和符號部分。小數部分進行四舍五入處理:大于0.5的話,向個位進1;小于0.5的時候,舍去不要。當數據是個負數的時候,顯示之前要進行數據轉換,將其整數部分取反加一。還因為DS18B20最低溫度只能為-55,所以可以將整數部分的最高位換成一個“-”,表示為負數。圖4-2為溫度數據處理程序的流程圖。開始提取整數部分存入HT提取小數部分存入LTLT右移三位,將精度降低到0.5攝氏度HT+將小數部分整數化提取符號部分存入signLT是否大于5是否為負數RET負數標志flag=1YNNY圖4-5 溫度數據處理流程圖4.3 1602顯示部分1602的讀寫時序圖如下:圖4-6 1602液晶的讀時序圖圖4-7 1602液晶的寫時序圖第5章 系統調試與測量5.1 系統調試電子體溫計系統的硬件調試一般分下面幾個步驟。第一步:檢查外部的各種元器件,看元器件是否完好無損,并且觀察電路板上的電路是否有斷點。是否有漏焊,虛焊等等。第二步:用儀器儀表進行檢測,這里主要采用萬用表進行檢測,先用萬用表復核目測中有疑問的連接點,拐點等等,再次檢測各種地線與電源線之間是否有短路、斷路等不良現象。第三步:通電檢測。給電路PCB板通上電,檢測所有器件的電源是否符合要求的值。并且檢測整個電路的功能是否能夠正常運行。第四部:在通電工作中,觀察電子體溫計能否正常的測量體溫,并且檢查顯示屏能否正常顯示數據。5.2 測量數據表5-1測量人物普通水銀體溫計電子體溫計同學甲36.436.2同學乙36.536.4同學丙36.636.6同學丁36.836.6圖5-1 水銀溫度計 圖5-2 電子體溫計實物圖如圖5-1所示,此處采用的是原始的水銀溫度計來進行體溫的測量,所測得的數據是36.3,如圖5-2所示,采用本次設計的電子體溫計測量同一個同學的體溫,所得數據是36.8。通過以上水銀體溫計和電子體溫計比較,得出電子體溫計基本符合本次設計的要求,但是還是有細小的誤差。以上數據是通過多個同學的測量,水銀體溫計和電子體溫計均測量了幾次,再將所測得的數據填入上表中,通過數據分析,電子體溫計,基本符合要求,沒有出現重大誤差。5.3 誤差分析通過用普通水銀體溫計與電子體溫計分別測量人體體溫,得出以上幾組數據。但是仍然有細微的誤差,通過分析,可以得出以下幾點原因。(1)硬件電路設計的細小誤差。由于是在制作電路板時候的微小誤差,與做工精細有關。(2)軟件程序的誤差。在編程時候,一些數據,延時,有些細微的差異。千萬不要刪除行尾的分節(jié)符,此行不會被打印?!敖Y論”以前的所有正文內容都要編寫在此行之前。課程設計心得本次設計電子體溫計終于完成了,在本次設計中, 我不僅把知識融會貫通,而且豐富了大腦,同時在外觀到論文的編寫都是先查閱了大量資料過程中也了解了許多課外知識后確定,再經老師指導,開拓了視野。在這次設計中,我切身感受到了使自己在專業(yè)知識方面和動手能力方面有了質的飛躍。在此次設計過程中,我也曾遇到過困難,如軟件不知如何編程、不知從何下手等種種困難。剛開始面對課題感到迷茫,不知該從何下手,但經過老師的輔導、與自己在圖書館和網上查閱的相關資料,不斷學習。但是再編程調試過程中又遇到問題,總是出現問題,在自己耐心的調試下終于把軟件這個問題解決了,最終完成了。從中我體會到了人是越挫越勇的,只有戰(zhàn)勝自己,才會取得成功。通過本次課程設計,我了解到電子體溫計的主要設計思路,鞏固了自己所學電子科技方面的大量學科知識,也學會了諸如PROTEL99等軟件的使用。同時,也了解到電子體溫計具體步驟措施、主要是對DS18B20的了解更加深入。與此同時,更加熟悉了單片機的內部結構,對我將來的工作也有很大的作用。附錄1附錄2程序代碼:/*- -*/#include<reg52.h> /包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義#include<lcd1602.h>unsigned char flag_get=0;sbit DQ=P33;/ds18b20 端口unsigned char TemperatureFlag=0;/*/* 函數聲明 */*/unsigned int ReadTemperature(void);void Init_DS18B20(void);unsigned char ReadOneChar(void);void WriteOneChar(unsigned char dat);void delay(unsigned int i);void ReadToData(); void putchar(unsigned char buff);void Display();/*- 延時子程序-*/void delay(unsigned int cnt) EA=0; /總中斷打開 cnt=cnt*2; while(-cnt); EA=1;/*/* 串口初始化函數 */*/void UARTinit(void) SCON = 0x50; /* SCON: 模式 1, 8-bit UART, 使能接收 */ TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */ TH1 = 0xFD; /* TH1: reload value for 9600 baud 11.0592MHz */ TR1 = 1; /* TR1: timer 1 run */ TI = 1; /*- 主函數-*/main() P3=0XFF; UARTinit(); InitLcd(); /初始化LCD DelayMs(15); /延時保證信號穩(wěn)定 while(1) ReadToData(); Display(); /*/* 初始化 */*/void Init_DS18B20(void) unsigned char x=0; DQ = 1; /DQ復位 delay(8); /稍做延時 DQ = 0; /單片機將DQ拉低 delay(80); /精確延時 大于 480us DQ = 1; /拉高總線 delay(10); x=DQ; /稍做延時后 如果x=0則初始化成功 x=1則初始化失敗 delay(5);/*/* 讀一個字節(jié) */*/unsigned char ReadOneChar(void)unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i-) DQ = 0; / 給脈沖信號 dat>>=1; DQ = 1; / 給脈沖信號 if(DQ) dat|=0x80; delay(5); return(dat);/*/* 寫一個字節(jié) */*/void WriteOneChar(unsigned char dat) unsigned char i=0; for (i=8; i>0; i-) DQ = 0; DQ = dat&0x01; delay(5); DQ = 1; dat>>=1; delay(5);/*/* 讀取溫度 */*/unsigned int ReadTemperature(void)unsigned char a=0;unsigned int b=0;unsigned int t=0;Init_DS18B20();WriteOneChar(0xCC); / 跳過讀序號列號的操作WriteOneChar(0x44); / 啟動溫度轉換delay(200);/用顯示代替顯示Init_DS18B20();WriteOneChar(0xCC); /跳過讀序號列號的操作 WriteOneChar(0xBE); /讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度a=ReadOneChar(); /低位b=ReadOneChar(); /高位b<<=8;t=a+b;return(t);/*/* 讀取到顯存 */*/void ReadToData() unsigned char TempH,TempL; unsigned int temp; static int preTemp=0,num=0; temp=ReadTemperature(); if(temp&0x8000)/讀出來溫度,預處理 TemperatureFlag=0x40;/負號標志 temp=temp; / 取反加1 temp +=1; else TemperatureFlag=0; TempH=temp>>4; TempL=temp&0x0F; TempL=TempL*6/10;/小數近似處理 if(preTemp-5<TempH*10+TempL&&(TempH*10+TempL<450) /如果溫度在上升,并且小于45°則把數據寫入顯存 Data/意思就是說,若溫度下降,則不修改顯存內容,顯示內容不變 num=0; preTemp=TempH*10+TempL; preTemp = preTemp+5; Data0=(char)(preTemp/100)%10; /十位溫度 Data1=(char)(preTemp/10)%10; /個位溫度 Data2=(char)(preTemp%10);/顯示小數 else num+; if(num>=100) TimeNum0='S'TimeNum1='T'TimeNum2='O'TimeNum3='P'TimeNum4=' 'TimeNum5=''TimeNum6='_'TimeNum7=''/如果100次溫度不在上升,則證明溫度穩(wěn)定了,顯示stop _else TimeNum0='R'TimeNum1='e'TimeNum2='a'TimeNum3='d'TimeNum4='i'TimeNum5='n'TimeNum6='g'/否則顯示Reading/*/* 串口輸出 */*/void putchar(char buff) EA=0;SBUF=buff;while(!TI);TI=0;EA=1;參考文獻1 高曉蓉.傳感器技術M.西南交通大學出版社,20032 黃繼昌. 傳感器工作原理及應用實例M.人民郵電出版社,19983 陳杰. 傳感器與檢測技術M.高等教育出版社,20024 金發(fā)慶.傳感器技術與應用(第二版)M.北京:機械工業(yè)出版社,20065 沙占友,馬洪濤,安國臣,孟志永.新型智能溫度傳感器的與原理及應用,電子測量與儀器學報第16卷增刊.2002.10:144-1466 沙占友.智能化溫度測試系統的優(yōu)化設計.電子測量與儀器學報第16卷增刊.2002.10:125-1277 高吉祥. 數字電子技術M.電子工業(yè)出版社,20038 沈任元 ,吳勇.數字電子技術M.北京:機械工業(yè)出版社,20059 康華光. 電子技術基礎模擬部分M.高等教育出版社,198810 卜益民. 模擬電子技術M.北京:郵電大學出版社,200511 王港元.電工電子實踐指導M.南昌:江西科學技術出版社,200512 謝自美.電子線路設計M.武漢:華中科技大學出版社,200013 金毅.溫度的測量史M.教學儀器與實驗,2011年27卷8期14 張曄等. DS18820的液體溫度測量系統設計M. 測試技術學報,2010年24卷6期

注意事項

本文(電子體溫計設計)為本站會員(xt****7)主動上傳,裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知裝配圖網(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。




關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!