數(shù)字溫度計課程設(shè)計_第1頁
數(shù)字溫度計課程設(shè)計_第2頁
數(shù)字溫度計課程設(shè)計_第3頁
數(shù)字溫度計課程設(shè)計_第4頁
數(shù)字溫度計課程設(shè)計_第5頁
免費預(yù)覽已結(jié)束,剩余19頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、課程設(shè)計說明書第II頁目錄1緒論11.1 課題描述11.2 基本工作原理及框圖12硬件電路設(shè)計22.1 AT89C51 簡介22.1.1 AT89C51 概述22.1.2 AT89C51 特性32.1.3 AT89C51引腳工作說明 32.1.4 復(fù)位電路的設(shè)計 42.2 溫度傳感器DS18B2052.2.1 DS18B20 工作原理 52.2.2 DS18B20 內(nèi)部結(jié)構(gòu) 52.2.3 DS18B20技術(shù)性能描述 62.2.4 DS18B20 硬件說明62.2.5 DS18B20 接線方法 72.2.6 DS18B20 特點73軟件設(shè)計83.1 主程序設(shè)計83.2 溫度采集模塊設(shè)計 93.3

2、 溫度計算模塊設(shè)計 93.4 編程語言及程序 103.4.1 編程語言選擇 103.4.2 匯編程序104總電路圖145調(diào)試15總結(jié)16致謝17仿我照檢課程設(shè)計說明書第III頁參考文獻18課程設(shè)計說明書第1頁1緒論1.1 課題描述隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人 帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求 越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機 技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。在信息采集(傳感器技術(shù))、 信息傳輸(通信技術(shù))和信息處理(計算機技術(shù))三大信息技術(shù)中,傳

3、感器屬于信息技 術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器技術(shù),在我國各領(lǐng)域已經(jīng)引用的非常廣泛,可以 說是滲透到社會的每一個領(lǐng)域,人民的生活與環(huán)境的溫度息息相關(guān),在工業(yè)生產(chǎn)過程中 需要實時測量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測量,因此研究溫度的測量方法和裝 置具有重要的意義。本次課程設(shè)計的內(nèi)容是開發(fā)一個基于 AT89C51單片機的測溫系統(tǒng),并采用了數(shù)字 溫度傳感器DS18B20,重點對傳感器在單片機下的硬件連接, 軟件編程以及各模塊系統(tǒng) 流程進行了詳細研究,對各部分的電路也一一進行了設(shè)計,該系統(tǒng)可以方便的實現(xiàn)對三 路溫度的采集、傳輸、處理和顯示,并可設(shè)定上下限報警溫度。它使用起來相當方便, 具有精度高

4、、量程寬、靈敏度高、體積小、功耗低等優(yōu)點,適合于我們?nèi)粘I詈凸ぁ?農(nóng)業(yè)生產(chǎn)中的溫度測量,也可以當作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的 輔助擴展。1.2 基本工作原理及框圖本課程設(shè)計的溫度計測溫系統(tǒng)由溫度傳感器電路、信號放大電路、A/ D轉(zhuǎn)換電路、單片機系統(tǒng)、溫度顯示系統(tǒng)構(gòu)成。其基本工作原理:溫度傳感器電路將測量到的溫度信 號轉(zhuǎn)換成電壓信號輸出到信號放大電路,與溫度值對應(yīng)的電壓信號經(jīng)放大后輸出至轉(zhuǎn) A/D換電路,把電壓信號轉(zhuǎn)換成數(shù)字量送給單片機系統(tǒng), 單片機系統(tǒng)根據(jù)顯示需要對數(shù) 字量進行處理,再送溫度顯示系統(tǒng)進行顯示?;竟ぷ髟砜驁D如圖1所示。課程設(shè)計說明書第2頁圖2 AT89C5

5、1管腳圖溫度傳感器89C51單片機系統(tǒng)發(fā)光二極管顯示電路圖1基本工作原理框圖5SE s76 3 4 3210vcpopopoPQpopopopn2硬件電路設(shè)計2.1 AT89C51 簡介2.1.1 AT89C51 概述AT89C51 是一種帶 4K 字節(jié) FLASH 存儲器(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能 CMOS 8位微處理器,俗稱單片機。 AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除 只讀存儲器可以反復(fù)擦除|1000次。該器件采用ATMEL高密度非易失存儲

6、器制造技術(shù) 制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能18位CPU和閃 速存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是 它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉 的方案。單片機引腳分布圖如圖2所示:PIO P11P1J Pl 3Pl 4 Fl .5Fl 6 Pl 7F3T/VPD RXDF3Q TXD F3 1 i5rrB F32 兇TIP33 TCP? 4 T1 P35 陳內(nèi)6 RDP3 7 5CAL2 XTAL1VSS課程設(shè)計說明書第#頁2.1.2 AT89C51 特性AT89C

7、51提供以下標準功能:4k 字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部RAM , 32個I/O 口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行 通信口,片內(nèi)振蕩器及時鐘電路。同時, AT89C51可降至0Hz的靜態(tài)邏輯操作,并支 持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位202.1.3 AT89C51引腳工作說明P0 口: P0 口為一個8位漏極開路雙向I/O 口。P0 口能用于外部程序數(shù)據(jù)存儲器, 它可以被定義為數(shù)據(jù)/

8、地址的第八位。在 FLASH編程時,P0 口作為原碼輸入口,當 FALSH進行校驗時,P0 口輸出原碼,止匕時P0 口外部必須被拉高。P1 口: P1 口是 一個內(nèi)部提供上拉電阻的8位雙向I/O 口。P1 口管腳寫入1后, 被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,將輸出電流。在 FALSH 編程和校驗時,P1 口作為第八位地址接收。P2 口: P2 口為一個內(nèi)部上拉電阻的8位雙向I/O 口。當P2 口被寫入“1”時,其 管腳被內(nèi)部上拉電阻拉高,且作為輸入。 P2 口當用于外部程序存儲器或16位地址外部 數(shù)據(jù)存儲器進行存取時,P2 口輸出地址的高八位。P2 口在FLASH編程和

9、校驗時接收高 八位地址信號和控制信號。P3 口: P3 口管腳是8個帶內(nèi)部上拉電阻的雙向I/O 口。當P3 口寫入“1”后,它 們被內(nèi)部上拉為高電平并用作輸入。P3 口:除作I/O 口使用外,還有特殊功能如表格 1所示表1 P3 口特殊功能表P3.0RXD (串行輸入口)P3.1TXD (串行輸出口)P3.2/INT0(外部中斷0)P3.3/INT1 (外部中斷1)P3.4T0(計時器0外部輸入)P3.5T1(計時器1外部輸入)P3.6/ WR (外部數(shù)據(jù)存儲器寫選通)P3.7/ RD(外部數(shù)據(jù)存儲器讀選通)P3 口同時為編程和校驗接收一些控制信號。RST:復(fù)位輸入。當振蕩器復(fù)位器件時,要保持

10、 RST腳兩個機器周期的高電平時 問。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低位 字節(jié)。在FALSH編程期間,此引腳用于輸入編程脈沖。在平時, ALE端以不變的頻率 周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6.因此它可用作外部數(shù)據(jù)存儲器時,將 跳過一個ALE脈沖。如果想禁止 ALE的輸出可在SFR8EH地址上置。此時,ALE只 有在執(zhí)行MOVX , MOVC指令時ALE才起作用。另外,該指令被略微拉高。如果微處 理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。/ PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有校。但在

11、訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。/EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000HFFFFH), 不管是否有內(nèi)部程序存儲器,注意加密方式 1時,/EA將內(nèi)部鎖定為RESET;當/EA端 保持高電平時,此間內(nèi)部程序存儲器。在 FLASH編程期間,此引腳也用于施加12V編 程電源(VPP)。XTAL1 :反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入XTAL2 :來自反向振蕩器的輸出。ISP:在線編程引腳。P1.5、P1.6、P1.7、RST四個引腳可以作為在系統(tǒng)編程引腳302.1.4 復(fù)位電路的設(shè)計單片機的復(fù)位電路如圖3所示圖3單片機的復(fù)位電路課程

12、設(shè)計說明書第5頁該復(fù)位電路采用手動復(fù)位與上電復(fù)位相結(jié)合的方式。當按下按鍵S1時,VCC通過R2電阻給復(fù)位輸入端口一個高電平,實現(xiàn)復(fù)位功能,即手動復(fù)位。上電復(fù)位就是VCC通過電阻R2和電容C構(gòu)成回路,該回路是一個對電容 C1充電和放電的電路,所以復(fù) 位端口得到一個周期性變化的電壓值,并且有一定時間的電壓值高于CPU復(fù)位電壓,實現(xiàn)上電復(fù)位功能4 o2.2 溫度傳感器 DS18B202.2.1 DS18B20工作原理DS18B20是美國DALLAS半導(dǎo)體公司繼DS1820之后最新推出的一種改進型智能 溫度傳感器。與傳統(tǒng)的熱敏電阻相比,他能夠直接讀出被測溫度并且可根據(jù)實際要求通 過簡單的編程實現(xiàn)912

13、位的數(shù)字值讀數(shù)方式??梢苑謩e在 93.75 ms和750 ms內(nèi)完成 9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根 口線(單線接口)讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的 DS18B20供電,而無需額外電源。因而使用DS18B20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高。他在測溫精度、轉(zhuǎn)換時間、傳輸距離、分辨率等方面較DS1820有了很大的改進, 給用戶帶來了更方便的使用和更令人滿意的效果。2.2.2 DS18B20內(nèi)部結(jié)構(gòu)DS18B20采用3腳PR35封裝或8腳SOIC封裝,其內(nèi)部2構(gòu)框圖如圖4所示。國位 制 和雌 樓口電源檢廁溫度靈敏

14、元件Q存儲器和控霹高速翊存儲器圖4 DS18B20內(nèi)部結(jié)構(gòu)十的秋&胃K課程設(shè)計說明書第6頁2.2.3 DS18B20技術(shù)性能描述獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。測溫范圍 55C+125C,固有測溫誤差(注意,不是分辨率,這里之前是錯 誤的)1C。支持多點組網(wǎng)功能,多個 DS18B20可以并聯(lián)在唯一的三線上,最多只能并聯(lián) 8 個,實現(xiàn)多點測溫,如果數(shù)量過多,會使供電電源電壓過低,從而造成信號傳輸?shù)牟环€(wěn)工作電源:3. 05.5V/DC (可以數(shù)據(jù)線寄生電源)在使用中不需要任何外圍元件測量結(jié)果以912位數(shù)字量方式串行傳送不

15、銹鋼保護管直徑6適用于DN1525, DN40DN250各種介質(zhì)工業(yè)管道和狹小空間設(shè)備測溫標準安裝螺紋 M10X1, M12X1.5, G1/2”任選PVC電纜直接出線或德式球型接線盒出線,便于與其它電器設(shè)備連接。2.2.4 DS18B20硬件說明DS18B20外形及引腳如圖5所示圖5 DS18B20外形及引腳課程設(shè)計說明書第9頁GND:地DQ:單線運用的數(shù)據(jù)輸入/輸出引腳VD:可選的電源引腳2.2.5 DS18B20接線方法面對著扁平的那一面,左負右正,一旦接反就會立刻發(fā)熱,有可能燒毀!同時,接 反也是導(dǎo)致該傳感器總是顯示 85C的原因。2.2.6 DS18B20特點獨特的一線接口,只需要一

16、條口線通信 多點能力,簡化了分布式溫度傳感應(yīng)用 無 需外部元件 可用數(shù)據(jù)總線供電,電壓范圍為 3.0 V至5.5 V無需備用電源 測量溫度 范圍為-55 C至+125 0 C 。華氏相當于是-67 F到257華氏度-10 C至+85 C 范圍內(nèi)精度為 0.5 0 C溫度傳感器可編程的分辨率為 912位,溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫 秒,用戶可定義的非易失性溫度報警設(shè)置,應(yīng)用范圍包括恒溫控制、工業(yè)系統(tǒng)、消費電 子產(chǎn)品溫度計、或任何熱敏感系統(tǒng)描述該DS18B20的數(shù)字溫度計提供9至12位(可編程設(shè)備溫度讀數(shù))。由于DS18B20 是一條口線通信,所以中央微處理器與 DS18B20只有一

17、個一條口線連接。為讀寫以及 溫度轉(zhuǎn)換可以從數(shù)據(jù)線本身獲得能量,不需要外接電源。因為每一個DS18B20的包含一個獨特的序號,多個DS18b20S可以同時存在于一條總線。這使得溫度傳感器放置在 許多不同的地方。它的用途很多,包括空調(diào)環(huán)境控制,感測建筑物內(nèi)溫設(shè)備或機器,并 進行過程監(jiān)測和控制。DS18B20采用一線通信接口。因為一線通信接口,必須在先完成ROM設(shè)定,否則記憶和控制功能將無法使用。主要首先提供以下功能命令之一:(1)讀 ROM,(2) ROM 匹配,(3)搜索 ROM,(4)跳過 ROM,(5)報警檢查。這些指令操作作用在沒有一個器件的 64位光刻ROM序列號,可以在掛在一線上多個器

18、件選定某一個器件,同時,總線也可以知道總線上掛有有多少,什么樣的設(shè)備。若指令成功地使DS18B20完成溫度測量,數(shù)據(jù)存儲在 DS18B20的存儲器。一個控制功能指揮指示DS18B20的演出測溫。測量結(jié)果將被放置在 DS18B20內(nèi)存中,并可以讓閱讀發(fā)出記憶功能的指揮,閱讀內(nèi)容的片上存儲器。溫度報警觸發(fā)器TH和TL都有一字節(jié)EEPROM的數(shù)據(jù)。如果DS18B20不使用報警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節(jié)以理想的解決溫度數(shù)字轉(zhuǎn)換。寫 TH,TL指令以及配置字節(jié)利用一個記憶功能的指令完成。通過緩存器讀寄存器。所有數(shù)據(jù)的讀,寫 都是從最低位開始4。3軟件設(shè)計3.1 主

19、程序設(shè)計主程序的主要功能是負責(zé)多點溫度數(shù)據(jù)的實時采集、傳輸,處理和顯示。其程序流 程如圖6所示。3.2 溫度采集模塊設(shè)計為本溫度采集系統(tǒng)開發(fā)的軟件程序,可以對DS18B20內(nèi)部的寄存器編程控制DS18B20的工作方式,以及從這些數(shù)據(jù)寄存器讀取溫度值, 最后把經(jīng)過單片機數(shù)據(jù)處理 后的溫度送到LED上顯示。AT89C51扮演著上傳下達的角色,單片機端的程序采用了 C語言。DS18B20一側(cè)的通信程序?qū)⒗貌⑿卸丝?P3. 0和P3. 1來模擬I2C總線協(xié)議, 總線上的通信通過程序來實現(xiàn)。整個軟件采用了模塊化的程序設(shè)計方法。為了實現(xiàn)AT89C51和DS18B20之間I2C協(xié)議之下的串行通信,編寫了一

20、些專用子程序。這些子程序段包括:符號定義、AT89C51 的端口初始化、啟動信號時序產(chǎn)生、停止信號時序產(chǎn)生、發(fā)送字節(jié)、讀取字節(jié)、讀取溫 度、顯示。系統(tǒng)電路在上電后開始工作,最先程序單片機進行初始化設(shè)置,然后單片機利用模 擬I2C總線對DS18B20進行尋址。單片機在接收到 DS18B20應(yīng)答后,緊接著單片機利 用命令(AAh、ACh、EEh、22h)將設(shè)置/狀態(tài)寄存器的值通過I2C總線寫入DS18B20 狀態(tài)寄存器,該系統(tǒng)中把DS18B20設(shè)置為連續(xù)溫度轉(zhuǎn)換工作方式,之后 DS18B20在單 片控制下進行溫度測量,然后 DS18B20把所采集的溫度傳輸給單片機,最后單片機把 溫度數(shù)據(jù)送到LED

21、上顯示5。3.3 溫度計算模塊設(shè)計計算溫度子程序?qū)腄S18B20中讀取的溫度值進行BCD碼的轉(zhuǎn)換運算,并進行溫 度值正負的判定,其程序流程圖如圖 7所示。課程設(shè)計說明書第19頁圖7計算溫度子程序流程圖3.4 編程語言及程序3.4.1 編程語言選擇AT89C51的編程語言常用的有兩種,一種是匯編語言,一種是C語言。匯編語言的機器代碼生成效率很高但可讀性卻并不強,C語言在大多數(shù)情況下其機器代碼生成效 率和匯編語言相當,C語言的結(jié)構(gòu)性和模塊化容易閱讀和維護6 o3.4.2 匯編程序程序如下:ORG 00HMAIN:MOV 30H,#00HMOV 31H,#00HLCALL RESET ;復(fù)位MOV

22、 A,#0CCH ;跳過 ROMLCALL WRITEMOV A,#44H;啟動轉(zhuǎn)換LCALL WRITE ;延時MOV R7,#100D1: MOV R4,#20D2: MOV R5,#248DJNZ R5,$DJNZ R4,D2DJNZ R7,D1LCALL RESET ;復(fù)位MOV A,#0CCH;跳過 ROMLCALL WRITEMOV A,#0BEH ;啟動轉(zhuǎn)換 LCALL WRITELCALL READMOV A,3DHMOV 30H,ALCALL READMOV A,3DHMOV 31H,A ;MOV 36H,#00H MOV 37H,#00H MOV 38H,#00H MOV

23、39H,#00H ;ANL A,#00000111B MOV 36H,A MOV A,30H SWAP AANL A,#00001111BMOV 37H,AMOV A,36HSWAP AMOV 41H,AMOV A,37HADD A,41HMOV 41H,AMOV B,#10DIV ABMOV 46H,AMOV 47H,BMOV A,30HANL A,#00001111BMOV 39H,AJNB ACC.3,JINMOV A,38HADD A,#50HMOV 38H,AJIN: MOV A,39HJNB ACC.2,JIN1MOV A,38HADD A,#25HMOV 38H,AJIN1: M

24、OV A,39HJNB ACC.1,JIN2MOV A,38HADD A,#12HMOV 38H,AJIN2: MOV A,39HJNB ACC.0,JIN3MOV A,38HADD A,#06HMOV 38H,AJIN3: MOV A,38HSWAP AANL A,#00001111BMOV 38H,ASJMP $;數(shù)據(jù)處理RESET: NOPL0:CLRP1.4MOVR2,#200L1:NOPDJNZR2,L1SETBp1.4MOVR2,#30L4:DJNZR2,L4CLRCORLC,p1.4JCL3MOVR6,#80L5:ORLC,p1.4JCL3DJNZR6,L5SJMPL0L3:MO

25、VR2,#250L2:DJNZRETR2,L2WRITE: MOVR3,#8WR1:SETBp1.4MOVR4,#8RRCACLRp1.4WR2:DJNZR4,WR2MOVp1.4,CMOVR4,#20WR3:DJNZR4,WR3DJNZR3,WR1SETBRETp1.4READ:MOVR6,#8RE1:CLRp1.4MOVNOPR4,#6SETBp1.4RE2:DJNZR4,RE2MOVC,p1.4RRCAMOVR5,#30RE3:DJNZR5,RE3DJNZR6,RE1MOV3DH,ASETBRETp1.4END4總電路圖溫度計電路設(shè)計原理圖如圖8所示,控制器使用單片機AT89C2051,溫度傳感器使用DS18B20,使用LED數(shù)碼管以動態(tài)掃描法實現(xiàn)溫度顯示 口i=L aPDJVjra 皿一 FUNJUZFDAUdPDJ Kl.lM?PIC IDJUli n.i as rx jA*n naxn F2 向 JUN ! 也 JSjLI* n.wk圖8總電路圖5調(diào)試單片機系統(tǒng)的硬件調(diào)試和軟件調(diào)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論