已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
保密類別 編 號(hào) 武漢大學(xué) 畢 業(yè) 論 文 基于單線制的多點(diǎn)溫度采集系統(tǒng) 武漢大學(xué) 2013 年 05 月 2 日 摘 要 本設(shè)計(jì)的溫度測(cè)量系統(tǒng)以 MCS-51系列單片機(jī)為核心部件,外加溫度采集電路、鍵盤電路、顯示電路和聲光報(bào)警電路組成。采用總線型數(shù)字式的溫度傳感器 DS18B20,及行列式鍵盤和動(dòng)態(tài)顯示的數(shù)碼管作為主要器件。通過(guò)小鍵盤實(shí)現(xiàn)對(duì)不同溫度數(shù)據(jù)的采集與切換 顯示。同時(shí),也可利用小鍵盤實(shí)現(xiàn)溫度最大最小值的設(shè)定。對(duì) 于超過(guò)此 的 溫度數(shù)據(jù)將產(chǎn)生報(bào)警信號(hào)。 本作品既可以對(duì)當(dāng)前溫度進(jìn)行實(shí)時(shí)顯示又可以對(duì)溫度進(jìn)行監(jiān)控,人性化的行列式鍵盤設(shè)計(jì)使設(shè)置溫度簡(jiǎn)單快速。采用浮點(diǎn)小數(shù)的顯示方式使具有更高的顯示精度和靈活性。通過(guò)對(duì)系統(tǒng)軟件和硬件設(shè)計(jì)的合理規(guī)劃,發(fā)揮單片機(jī)自身集成眾多系統(tǒng)級(jí)功能單元的優(yōu)勢(shì),在不減少功能的前提下有效降低了硬件成本,系統(tǒng)操控顯得更加簡(jiǎn)便。 關(guān)鍵詞: MCS-51 系列單片機(jī) DS18B20 溫度采集 溫度監(jiān)控 目 錄 摘要 I 第一章 緒論 1 第一章 方案論證 2.1 為什么選用 DS18B20而不選用熱電偶作為溫度傳感器? 5 2.2 為什么要選用 AT89C51單片機(jī)? 5 2.3 為什么要設(shè)置鍵盤電路? 6 第二章 系統(tǒng)硬件設(shè)計(jì) 3.1 系統(tǒng)控制模塊 7 3.2 溫度采集模塊 13 3.3 顯示電路模塊 15 3.4 鍵盤電路 17 3.5 報(bào)警電路 18 第三章 系統(tǒng)軟件設(shè)計(jì) 4.1 軟件 程序 19 結(jié)論 20 參考文獻(xiàn) 21 附錄 22 后記 28 第一章 緒 論 自從 1976 年 Intel 公司推出第一批單片機(jī)以來(lái), 80 年代單片機(jī)技術(shù)進(jìn)入快速發(fā)展時(shí)期,近年來(lái),隨著大規(guī)模集成電路的發(fā)展,單片機(jī)繼續(xù)朝快速、高性能方向發(fā)展,從 4位、 8位單片機(jī)發(fā)展到 16位、 32位單片機(jī)。單片機(jī)主要用于控制,它的應(yīng)用領(lǐng)域遍及各行各業(yè),大到航天飛機(jī),小至日常生活中的冰箱、彩電,單片機(jī)都可以大顯其能。單片機(jī)在國(guó)內(nèi)的三大領(lǐng)域中應(yīng)用得十分廣泛:第一是家用電器業(yè),例如全自動(dòng)洗衣機(jī)、智能玩具;第二是通訊業(yè),包括電話、手機(jī)和 BP機(jī)等等;第三是儀器儀表和計(jì)算機(jī)外設(shè)制造,例如軟盤、硬盤、收銀機(jī)、電表。除了上述 傳統(tǒng)領(lǐng)域外,汽車、電子工業(yè)在國(guó)外也是單片機(jī)應(yīng)用十分廣泛的一個(gè)領(lǐng)域。它成本低、集成度高、功耗低、控制功能多能靈活的組裝成各種智能控制裝置,由它構(gòu)成的智能儀表解決了長(zhǎng)期以來(lái)測(cè)量?jī)x器中的誤差的修正、線性處理等問(wèn)題。 單片機(jī)將微處理器、存儲(chǔ)器、定時(shí) /計(jì)數(shù)器、 I/O 接口電路等集成在一個(gè)芯片上的大規(guī)模集成電路,本身即是一個(gè)小型化的微機(jī)系統(tǒng)。單片機(jī)技術(shù)與傳感與測(cè)量技術(shù)、信號(hào)與系統(tǒng)分析技術(shù)、電路設(shè)計(jì)技術(shù)、可編程邏輯應(yīng)用技術(shù)、微機(jī)接口技術(shù)、數(shù)據(jù)庫(kù)技術(shù)以及數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)操作系統(tǒng)、匯編語(yǔ)言程序設(shè)計(jì)、高級(jí)語(yǔ)言程序設(shè)計(jì)、軟件工程、 數(shù)據(jù)網(wǎng)絡(luò)通信、數(shù)字信號(hào)處理、自動(dòng)控制、誤差分析、儀器儀表結(jié)構(gòu)設(shè)計(jì)和制造工藝等的結(jié)合,使得單片機(jī)的應(yīng)用非常廣泛。同時(shí),單片機(jī)具有較強(qiáng)的管理功能。采用單片機(jī)對(duì)整個(gè)測(cè)量電路進(jìn)行管理和控制,使得整個(gè)系統(tǒng)智能化、功耗低、使用電子元件較少、內(nèi)部配線少、成本低,制造、安裝、調(diào)試及維修方便。 溫度作為作物生長(zhǎng)一個(gè)非常重要的參數(shù),溫度的變化影響作物的發(fā)芽、幼苗的成長(zhǎng)、作物的開花、果實(shí)的成熟等等。對(duì)于不同的作物,其適宜的生長(zhǎng)溫度總是在一個(gè)范圍。超過(guò)這個(gè)范圍,作物或許會(huì)活著,但是其生長(zhǎng)的規(guī)律將發(fā)生明顯的變化。這對(duì)于我們所希望的要 求作物能夠優(yōu)質(zhì)、高產(chǎn)的愿望相距甚遠(yuǎn),所以我們必須實(shí)時(shí)獲取作物生長(zhǎng)的環(huán)境溫度。對(duì)于,超過(guò)作物生長(zhǎng)適宜范圍的溫度能夠報(bào)警。同時(shí),我們也希望作物的適宜溫度范圍可以由檢測(cè)人員根據(jù)實(shí)際情況加以改變。同時(shí),由于作物分布空間的狹小,各點(diǎn)的溫度在同一時(shí)間上可能存在差異,所以對(duì)于溫室必須采取多點(diǎn)采集,以保證能夠更準(zhǔn)確的獲知作物生長(zhǎng)的實(shí)時(shí)溫度。 本設(shè)計(jì)就是基于單片機(jī) AT89C51設(shè)計(jì)的實(shí)時(shí)溫度采集。通過(guò)小鍵盤實(shí)現(xiàn)對(duì) 不同路溫度數(shù)據(jù)的切換顯示。同時(shí),也可利用小鍵盤實(shí)現(xiàn)溫度最大最小值的設(shè) 定。對(duì)于超過(guò)此限的溫度數(shù)據(jù)將產(chǎn)生報(bào)警信號(hào) 。 第二章 方案論證 2.1 為什么選用 DS18B20 而不選用熱電偶作為溫度傳感器? 溫度檢測(cè)可以使用低溫?zé)崤蓟蜚K電阻,數(shù)據(jù)采集部分則使用帶有 A/D 通道的單片機(jī)??紤]到一般的 A/D 輸入通道都只能接收大信號(hào),所以還要設(shè)計(jì)相應(yīng)的放大電路。而模擬信號(hào)在長(zhǎng)距離傳輸過(guò)程中,抗電磁干擾是令人傷腦筋的問(wèn)題。此方案的軟件簡(jiǎn)單,但硬件復(fù)雜,且檢測(cè)點(diǎn)數(shù)追加時(shí),各敏感元件參數(shù)的不一致性,都將會(huì)導(dǎo)致誤差的產(chǎn)生,難以完全清除,而且成本會(huì)有較大增長(zhǎng)幅度。 DALLAS公司的 DS18B20單總線數(shù)字傳感器工作溫度范圍是 -55 125 ,在 -30 85 范圍內(nèi)溫度測(cè)量精度為0.5 ;具有溫度報(bào)警功能,用戶可設(shè)置最高和最低報(bào)警溫度,且設(shè)置值掉電不丟失;采用 DALLAS公司特有的單總線通信協(xié)議,只用一條數(shù)據(jù)線就可實(shí)現(xiàn)與 MCU的通信;此外,這類溫度傳感器直接輸出數(shù)字信號(hào),且多路溫度傳感器可以掛在 1 條總線上,共同占用單片機(jī)的 1 個(gè) I/O 口即可實(shí)現(xiàn)。在提升單片機(jī) I/O 口驅(qū)動(dòng)能力的前提下,理論上可以任意擴(kuò)充檢測(cè)的溫度點(diǎn)數(shù)。 DS18B20 具有下列特點(diǎn): 具有高的測(cè)量精度和分辨率,測(cè)量范圍大; 抗干擾能力強(qiáng),穩(wěn)定性好; 信號(hào)易于處理、傳送和自動(dòng)控制 ; 便于動(dòng)態(tài)及多路測(cè)量,讀數(shù)直觀; 安裝方便,維護(hù)簡(jiǎn)單,工作可靠性高 ;6夠直接從數(shù)據(jù)線獲得電源,無(wú)需外部電池供電。 綜上所述故選用 DS18B20作為溫度傳感器 2 .2 為什么要選用 AT89C51 單片機(jī)? 單片機(jī),專業(yè)名稱 Micro Controller Unit(微控制器件 ),它是由 INTEL 公司發(fā)明的,最早的系列是 MCS-48,后來(lái)有了 MCS-51,現(xiàn)在還有 MCS-96 系列,我們經(jīng)常說(shuō)的 51 系列單片機(jī)就是 MCS-51,它是一種 8 位的單片機(jī),而 MCS-96 系列則是一種16 位的單片機(jī),目前在我 國(guó)比較流行的就是美國(guó) ATMEL 公司的 89C51,它是一種帶Flash ROM 的單片機(jī) AVR 系列單片機(jī)也是 ATMEL 公司生產(chǎn)的一種 8 位單片機(jī),它采用的是一種叫 RISC(精簡(jiǎn)指令集單片機(jī))的結(jié)構(gòu),所以它的技術(shù)和 51 系列有所不同,開發(fā)設(shè)備也和 51 系列是不通用的,它的一條指令的運(yùn)行速度可以達(dá)到納秒級(jí)(即每秒 1000000000 次),是 8 位單片機(jī)中的高端產(chǎn)品。由于它的出色性能,目前應(yīng)用范圍越來(lái)越廣,大有取代51 系列的趨勢(shì), IC 系列單片機(jī),它是美國(guó) MICROCHIP 公司,微芯公司的生產(chǎn)的另一種 8 位單片機(jī),它采用的也是 RISC 的指令集,它的指令系統(tǒng)和開發(fā)工具與 51 系列 更是不同,但由于它的低價(jià)格和出色性能,目前國(guó)內(nèi)使用的人越來(lái)越多,國(guó)內(nèi)也有很多的公司在推廣它,不過(guò)它的影響力遠(yuǎn)沒有 51 系列的大,所以作為初學(xué)者, 51 系列當(dāng)然是首選。且 AT89C51 單片機(jī)有以下特點(diǎn): 與 MCS-51 兼容 4K字節(jié)可編程閃爍存儲(chǔ)器 壽命: 1000寫 /擦循環(huán) 數(shù)據(jù)保留時(shí)間: 10年 全靜態(tài)工作: 0Hz-24Hz 三級(jí)程序存儲(chǔ)器鎖定 128*8位內(nèi)部 RAM 32可編程 I/O線 兩個(gè) 16位定時(shí)器 /計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路 綜上所述故選用 AT89C51單片機(jī) 2.3 為什么要設(shè)置鍵盤電路? 單片機(jī)系統(tǒng)所用的鍵盤有編碼鍵盤和非編碼鍵盤兩種。 編碼鍵盤本身除了按鍵之外,還包括產(chǎn)生鍵碼的硬件電路。只要按下編碼鍵盤的某一個(gè)鍵,它就能產(chǎn)生這個(gè)鍵的代碼,并稱為鍵碼,與此同時(shí)還產(chǎn)生一個(gè)脈沖信號(hào),以通知 CPU接收鍵碼,編碼鍵盤的優(yōu)點(diǎn)是使用比較方便,亦不需要編寫太復(fù)雜的程序。其缺點(diǎn)是使用的硬件較復(fù)雜。 非編碼鍵盤的按鍵是排列成行、列矩陣形式的。按鍵的作用只是簡(jiǎn)單地實(shí)現(xiàn)接點(diǎn)的接通或斷開 ,因此必須有一套相應(yīng)的程序與之配合,才能產(chǎn)生相應(yīng)的鍵碼,非編碼鍵盤幾乎不需要附加什么硬件電路。因此為了簡(jiǎn)潔電路,我使用非編碼鍵盤。但使用非編碼鍵盤需要通過(guò)軟件來(lái)解決按鍵的識(shí)別、防抖動(dòng)以及如何產(chǎn)生鍵碼的問(wèn)題。 在這里我們使用非編碼鍵盤電路,通過(guò)小鍵盤實(shí)現(xiàn)對(duì)不同溫度數(shù)據(jù)的采集與切換顯示。同時(shí),也可利用小鍵盤實(shí)現(xiàn)溫度最大最小值的設(shè)定。 綜上所述故需設(shè)置鍵盤電路 第三章 系統(tǒng)硬件設(shè)計(jì) 3.1 系統(tǒng)控制模塊 圖 3.1系統(tǒng)控制 模塊 1.AT89C51 功能簡(jiǎn)介 : AT89C51 是一種帶 4K 字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器( FPEROM Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能 CMOS8 位微處理器,俗稱單片機(jī)。 AT89C2051 是一種帶 2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除 100 次。該器件采用 ATMEL 高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的 MCS-51指令集和輸出管腳相兼容。由于將多功能 8位 CPU 和閃爍存儲(chǔ)器組合在單個(gè)芯片中, ATMEL 的 AT89C51 是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。 AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈 活性高且價(jià)廉的方案。外形及引腳排列如圖 3.2 所示: 主要特性: 與 MCS-51 兼容 4K字節(jié)可編程閃爍存儲(chǔ)器 壽命: 1000寫 /擦循環(huán) 數(shù)據(jù)保留時(shí)間: 10年 全靜態(tài)工作: 0Hz-24MHz 三級(jí)程序存儲(chǔ)器鎖定 1288 位內(nèi)部 RAM 32可編程 I/O線 兩個(gè) 16位定時(shí)器 /計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路 管腳說(shuō)明: VCC:供電電壓。 GND:接地。 P0 口: P0 口為一個(gè) 8 位漏級(jí)開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當(dāng) P1口的管腳第一次寫 1 時(shí),被定義為高阻輸入。 P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù) /地址的第八位。在 FIASH 編程時(shí), P0 口作為原碼輸入口,當(dāng) FIASH進(jìn)行校驗(yàn)時(shí), P0輸出原碼,此時(shí) P0外部必須被拉高。 P1 口: P1 口是一個(gè)內(nèi)部提供上拉電阻的 8 位雙向 I/O 口, P1 口緩沖器能接收輸出 4TTL 門電流。 P1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入, P1 口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。 在 FLASH 編程和校驗(yàn)時(shí), P1口作為第八位地址接收。 P2口: P2口為一個(gè)內(nèi)部上拉電阻的 8位雙向 I/O口, P2口緩沖器可接收,輸出 4個(gè) TTL 門電流,當(dāng) P2 口被寫 “1” 時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí), P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2 口當(dāng)用于外部程序存儲(chǔ)器或 16 位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí), P2 口輸出地址的高八位。在給出地址 “1” 時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí), P2口輸出其特殊功能寄存器的內(nèi)容。 P2口在 FLASH編程和校 驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口: P3口管腳是 8個(gè)帶內(nèi)部上拉電阻的雙向 I/O口,可接收輸出 4個(gè) TTL門電流。當(dāng) P3 口寫入 “1” 后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這是由于上拉的緣故。 P3 口也可作為AT89C51的一些特殊功能口,如下表所示: P3口管腳 備選功能: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷 0) P3.3 /INT1(外部中斷 1) P3.4 T0(記時(shí)器 0外部輸入) P3.5 T1(記時(shí)器 1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持 RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時(shí), ALE 端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的 1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是 :每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè) ALE 脈沖。如想禁止 ALE的輸出可在 SFR8EH地址上置 0。此時(shí), ALE只有在執(zhí)行 MOVX, MOVC指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE禁止,置位無(wú)效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次 /PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的 /PSEN 信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng) /EA 保持低電平時(shí),則在此期間外部程序存儲(chǔ)器( 0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器 。注意加密方式 1 時(shí), /EA將內(nèi)部鎖定為 RESET;當(dāng) /EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在 FLASH 編程期間,此引腳也用于施加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來(lái)自反向振蕩器的輸出。 振蕩器特性 : XTAL1 和 XTAL2 分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件, XTAL2 應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但 必須保證脈沖的高低電平要求的寬度。 芯片擦除: 整個(gè) PEROM 陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持 ALE管腳處于低電平 10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫 “1” 且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 此外, AT89C51 設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下, CPU 停止工作。但 RAM,定時(shí)器, 計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存 RAM 的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位 為止 2.復(fù)位電路 復(fù)位是單片機(jī)的初始化操作,其作用是使 CPU 中的各個(gè)部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。當(dāng) MCS-5l 系列單片機(jī)的復(fù)位引腳 RST(全稱 RESET)出現(xiàn) 2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果 RST 持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。上電或開關(guān)復(fù)位要求電源接通后,單片機(jī)自動(dòng)復(fù)位,并且在單片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。常用的按鍵復(fù)位電路如 圖 3.2 所示。按鍵后:電容器被短路放電、 RST直接和 VCC 相連,就是高電平,此時(shí)進(jìn)入 “ 復(fù)位狀態(tài) ” 。松手后:電源開始對(duì)電容器充電,此時(shí),充電電流在電阻上,形成高電平送到 RST,仍然是 “ 復(fù)位狀態(tài) ” ;稍后,充電結(jié)束,電流降為 0,電阻上的電壓也將為 0, RST降為低電平,開始正常工作。 單片機(jī)的復(fù)位操作使單片機(jī)進(jìn)入初始化狀態(tài),其中包括使程序計(jì)數(shù)器 PC0000H,這表明程序從 0000H地址單元開始執(zhí)行。 圖 3.2 89c51 單片機(jī) 圖 3.3 89c51 單片機(jī) 復(fù)位電路 3.時(shí)鐘電路 : 在 MCS 51單片機(jī)片內(nèi) 有一個(gè)高增益的反相放大器,反相放大器的輸入端為XTAL1,輸出端為 XTAL2,由該放大器構(gòu)成的振蕩電路和時(shí)鐘電路一起構(gòu)成了單片機(jī)的時(shí)鐘方式。根據(jù)硬件電路的不同,單片機(jī)的時(shí)鐘連接方式可分為內(nèi)部時(shí)鐘方式和外部 時(shí)鐘方式,為保證系統(tǒng)的穩(wěn)定性,我們這里采用內(nèi)部時(shí)鐘方式如圖 3.3所示。 圖 3.4 時(shí)鐘電路 在內(nèi)部方式時(shí)鐘電路中,必須在 XTAL1 和 XTAL2 引腳兩端跨接石英晶體振蕩器和兩個(gè)微調(diào)電容構(gòu)成振蕩電路,通常 C1 和 C2 一般取 30pF,晶振的頻率取值在 1.2MHz 12MHz之間。對(duì)于外接時(shí)鐘電路,要求 XTAL1 接地, XTAL2腳接外部時(shí)鐘,對(duì)于外部時(shí)鐘信號(hào)并無(wú)特殊要求, 只要保證一定的脈沖寬度,時(shí)鐘頻率低于 12MHz 即可。 晶體振蕩器的振蕩信號(hào)從 XTAL2 端送入內(nèi)部時(shí)鐘電路,它將該振蕩信號(hào)二分頻,產(chǎn)生一個(gè)兩相時(shí)鐘信號(hào) P1 和 P2 供單片機(jī)使用。時(shí)鐘信號(hào)的周期稱為狀態(tài)時(shí)間 S,它是振蕩周期的 2 倍, P1 信號(hào)在每個(gè)狀態(tài)的前半周期有效,在每個(gè)狀態(tài)的后半周期 P2信號(hào)有效。 CPU就是以兩相時(shí)鐘 P1和 P2為基本節(jié)拍協(xié)調(diào)單片機(jī)各部分有效工作的。 3.2 溫度采集模塊 1.DS18B20 傳感器性能簡(jiǎn)介: DS18B20溫度傳感器是美國(guó) DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型的一線式智能數(shù)字溫度傳 感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,他能直接讀出北側(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn) 9-12位的數(shù)字值讀書方式。 DS18B20有以下的性能特點(diǎn): 獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信。 多個(gè) DS18B20可以并聯(lián)在唯一的三線是,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能。 無(wú)需外部器件。 可通過(guò)數(shù)據(jù)線供電,電壓范圍為 3.0-5.5V。 零待機(jī)功耗。 溫度測(cè)量范圍為 55 125 。 溫度以 9或 12 位數(shù)字量讀出,即可編程為 9 12位 A/D轉(zhuǎn)換精度。 測(cè)溫分辨率可達(dá) 0.0625 。 適用于遠(yuǎn)距離多點(diǎn)溫度檢 測(cè)系統(tǒng)。 用戶可定義的非易失性穩(wěn)定報(bào)警設(shè)置。 報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件。 負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。 DS18B20 可以采用兩種方式供電。一種是采用電源供電方式,如圖 3.4 所示,此時(shí) DS18B20的 1腳接地, 2腳作為信號(hào)線, 3腳接電源。另一種是寄生電源供電方式,如圖 3.5 所示。單片機(jī)端口接單線總線,為保證在有效的 DS18B20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) MOSFET管來(lái)完成對(duì)總線的上拉。 當(dāng) DS18B20 處于寫存儲(chǔ)器操作和溫度 AD 轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開啟時(shí)間最大為 10us。處于寄生電源供電方式時(shí) Vdd和 GND端均接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 DS18B20的內(nèi)部結(jié)構(gòu) DS18B20主要由 4部分組成: 64 位 ROM、溫度傳感器、非揮發(fā)的溫度 報(bào)警觸發(fā)器TH和 TL、配置寄存器。 DS18B20的管腳排列如圖 3.6所示, DQ為數(shù)字信號(hào)輸入輸出端; GND為電源地; VDD為外接供電電源輸入端。 圖 3.6 DS18B20 的管腳圖 ROM中的 64位序列號(hào)是出廠前被光刻好的,它可以看作是該 DS18B20 的地址序列碼,每個(gè) DS18B20的 64位序列號(hào)均不相同。 ROM的作用是使每一個(gè) DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè) DS18B20 的目的。 2.DS18B20 與單片機(jī)的典型接口設(shè)計(jì): 圖 3.7以 MCS 51系列單片機(jī)為例,畫出了 DS18B20與微處理器的典型連接。DS18B20采用寄生電源方式,其 VDD和 GND端均接地。 單片機(jī)系統(tǒng)所用的晶振頻率為 12MHz,根據(jù) DS18B20的初始化時(shí)序、寫時(shí)序和讀時(shí)序,分別編寫了 3 個(gè)子程序: INIT為初始化子程序, WRITE為寫(命令或數(shù)據(jù))子程序, READ為讀數(shù)據(jù)子程序,所有的數(shù)據(jù)讀寫均由最低位開始。主機(jī)控制 DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:初始化、 ROM 操作指令、存儲(chǔ)器操作指令。必須先啟動(dòng) DS18B20開始轉(zhuǎn)換,再讀出溫度轉(zhuǎn)換值。如果一線上掛接多個(gè) DS18B20、采用寄生電源連接方式、需 要進(jìn)行轉(zhuǎn)換精度配置、高低限報(bào)警等,則子程序 GETWD 的編寫就 要復(fù)雜一些。 3.3 顯示電路模塊 1.74ls138 譯碼器功能簡(jiǎn)介: 74ls138 是一個(gè) 3 線 -8 線譯碼器,它有三個(gè)數(shù)據(jù)輸入端,八個(gè)輸出端, 3 個(gè)使能輸入端 (一個(gè)高電平有效和兩個(gè)低電平有效 )。其功能表如下所示: 2.MC14495 譯碼器功能簡(jiǎn)介: MC14495 是由 4 位鎖存器、地址譯碼、筆段 ROM 陣列以及帶有限流電阻的驅(qū)動(dòng)電路部分電路組成。圖 3.8 中 A、 B、 C、 D 為二進(jìn)制碼輸入端; LE 為所存控制端, LE 為低電平時(shí)可以輸入數(shù)據(jù), LE為高電平時(shí)鎖存輸入數(shù)據(jù); h為輸入數(shù)據(jù)大于等于 10指示位,若輸入數(shù)據(jù)大于或等于 10,則 h輸出高電平,否則輸出為低電平。在此處 的作用是輸入被顯字符的二進(jìn)制碼,并把它自動(dòng)轉(zhuǎn)換成相應(yīng)字型碼,送給 LED 顯示。 3.LED 數(shù)碼管接法比較: LED 數(shù)碼管根據(jù) LED 的接法不同分為共陰和共陽(yáng)兩類,了解 LED 的這些特性,對(duì)編程是很重要的,因?yàn)椴煌愋偷臄?shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。是共陰和共陽(yáng)極數(shù)碼管的內(nèi)部電路, 它們的發(fā)光原理是一樣的,只是它們的電源極性不同 而已。 4.LED 數(shù)碼管驅(qū)動(dòng)原理: 采用技術(shù)成熟的 74LS138 實(shí)現(xiàn)串并轉(zhuǎn)換。 LED 顯示分為靜態(tài)顯示和動(dòng)態(tài)顯示。這里采用靜態(tài)顯示,系統(tǒng)通過(guò)單片機(jī)的串行口來(lái)實(shí)現(xiàn)靜態(tài)顯示。串行口為 方式零狀態(tài),即工作在移位寄存器方式,波特率為振蕩頻率的 1 12。當(dāng)器件執(zhí)行任何一條將 SBUF作為目的寄存器的命令時(shí),數(shù)據(jù)便開始從 RXD 端發(fā)送。在寫信號(hào)有效時(shí),相隔一個(gè)機(jī)器周期后發(fā)送控制端 SEND有效,即允許 RXD發(fā)送數(shù)據(jù),同時(shí)本設(shè)計(jì)中用 6個(gè) LED組成顯示單元,采用靜態(tài)顯示方式。如圖 3.9所示: 圖 3.9 顯示電路 3.4 鍵盤電路 組成鍵盤的按鈕有觸點(diǎn)式和非觸點(diǎn)式兩種,單片機(jī)中應(yīng)用的一般是由機(jī)械觸點(diǎn)組成的。在下圖中,開關(guān) S未被按下時(shí), P1.0 輸入為高電平, S閉合后, P1.0輸入為低電平。由于按鈕是機(jī)械觸點(diǎn),當(dāng)機(jī)械觸點(diǎn)斷開、閉合時(shí),會(huì) 有抖動(dòng)。這種抖動(dòng)對(duì)于人來(lái)說(shuō)是感覺不到的,但對(duì)計(jì)算機(jī)來(lái)說(shuō),則是完全能感應(yīng)到的,因?yàn)橛?jì)算機(jī)處理的速度是在微秒級(jí),而機(jī)械抖動(dòng)的時(shí)間至少是毫秒級(jí),對(duì)計(jì)算機(jī)而言,這已是一個(gè) “ 漫長(zhǎng) ”的時(shí)間了。中斷時(shí)按鈕有時(shí)靈,有時(shí)不靈,其實(shí)就是這個(gè)原因,你只按了一次按鈕, 可是計(jì)算機(jī)卻已執(zhí)行了多次中斷的過(guò)程。 為使 CPU能正確地讀出 P1 口的狀態(tài),對(duì)每一次按鈕只作一次響應(yīng),就必須考慮如何去除抖動(dòng),常用的去抖動(dòng)的辦法有兩種:硬件辦法和軟件辦法。單片機(jī)中常用軟件法。軟件法就是在單片機(jī)獲得 P1.0口為低的信息后,不是立即認(rèn)定 S1已被按下,而是延 時(shí) 10毫秒或更長(zhǎng)一些時(shí)間后再次檢測(cè) P1.0口,如果仍為低,說(shuō)明 S1的確按下了,這實(shí)際上是避開了按鈕按下時(shí)的抖動(dòng)時(shí)間。而在檢測(cè)到按鈕釋放后( P1.0為高)再延時(shí) 5-10個(gè)毫秒,消除后沿的抖動(dòng),然后再對(duì)鍵值處理。不過(guò)一般情況下,常常不對(duì)按鈕釋放的后沿進(jìn)行處理。圖 3.10為鍵盤與單片機(jī)的連接。 3.5 報(bào)警電路 對(duì)于本設(shè)計(jì)只要超過(guò)我們?cè)O(shè)定的溫度 值的范圍就會(huì)產(chǎn)生聲光報(bào)警,所以我們要在系統(tǒng)中設(shè)計(jì)報(bào)警電路,對(duì)于超過(guò)此限的溫度數(shù)據(jù)將產(chǎn)生報(bào)警信號(hào)。 第 4 章 軟件 設(shè)計(jì) 4.1 軟件流程 結(jié)論 本設(shè)計(jì)用 MCS-51 單片機(jī)為主要硬件,設(shè)計(jì)了包括溫度采集, 溫度顯示,鍵盤電路和聲光報(bào)警電路。而且對(duì)所設(shè)計(jì)電路部分給出了相應(yīng)的軟件設(shè)計(jì),在溫度測(cè)量部分采用具有 “ 單 線多點(diǎn) ” 的數(shù)字傳感器 DS18B20,實(shí)現(xiàn) 單 線多點(diǎn)溫度數(shù)據(jù)的采集和監(jiān)控。 多點(diǎn)溫度檢測(cè)與控制系統(tǒng)是典型的集散式控制系統(tǒng)。由 AT89C51 和 DS18B20 構(gòu)成的溫度采集系統(tǒng),提高了溫度采集的精度。本設(shè)計(jì)的線路具有良好的可升級(jí)性和可擴(kuò)展性。程序設(shè)計(jì)采用我們熟悉的是匯編語(yǔ)言。 對(duì)本設(shè)計(jì)感到不足的是,此系統(tǒng)只是一個(gè)開環(huán)系統(tǒng),它只實(shí)現(xiàn)了對(duì)多點(diǎn)溫度的采集和對(duì)所設(shè)置上限溫度的監(jiān)控報(bào)警,因此也就局限了此系統(tǒng)功能的延伸。 我認(rèn) 為對(duì)此設(shè)計(jì)的再加上對(duì)溫度控制的執(zhí)行機(jī)構(gòu)(繼電器),比如在室內(nèi)溫度達(dá)到所設(shè)定的上限時(shí),不再是聲光報(bào)警,而是通過(guò)執(zhí)行機(jī)構(gòu)接通風(fēng)扇電源,使其降溫,當(dāng)溫度達(dá)到所設(shè)定的下限時(shí),也通過(guò)執(zhí)行機(jī)構(gòu)去接通加熱器電源,使其溫度回升,這樣所設(shè)計(jì)的系統(tǒng)就成為閉環(huán)負(fù)反饋系統(tǒng),使其溫度控制在一定的范圍內(nèi)。這樣就可以實(shí)現(xiàn)其自動(dòng)化控制。 參考文獻(xiàn) 1 程佩青數(shù)字信號(hào)處理教程北京:清華大學(xué)出版社, 2004 2 周立功 .單片機(jī)實(shí)驗(yàn)與實(shí)踐 . 北京: 北京航空航天大學(xué)出版社 . 3 吳國(guó)經(jīng) .單片機(jī)應(yīng)用技術(shù) .北京:中國(guó)電力出版社 , 2003. 4 閻石 .數(shù)字電子技術(shù)基礎(chǔ) .北京:高等教育出版社, 2006. 5 譚浩強(qiáng) .C程序設(shè)計(jì) .北京 :清華大學(xué)出版社 , 2005. 6 沙占友等 .單片機(jī)外圍電路設(shè)計(jì) .電子工業(yè)出版社 .2003. 7 楊金巖 . 8051單片機(jī)數(shù)據(jù)傳輸接口擴(kuò)展技術(shù)與應(yīng)用實(shí)例 .人民郵電出版社 .2005. 8 周荷琴、吳 秀清 .微型計(jì) 算機(jī)原理與接口技術(shù) .中國(guó)科學(xué)技 術(shù)大學(xué)出版社 .2011. 9 萬(wàn)方數(shù)據(jù)知識(shí)服務(wù)平臺(tái) . / 10百度 . / 11維普期刊資源整合服務(wù)平臺(tái) . / 12EBSOC外文論文數(shù)據(jù)庫(kù) . / 13中文科技期刊 . 附 錄 系統(tǒng)程序 ;* FLAG1 BIT F0 ;DS18B20存在標(biāo)志位 DQ BIT P1.7 TEMPER_L EQU 29H TEMPER_H EQU 28H A_BIT EQU 35H B_BIT EQU 36H ;*程序起始 * ORG 0000H AJMP MAIN ORG 0100H ;*主程序開始 * MAIN: LCALL INIT_18B20 LCALL RE_CONFIG LCALL GET_TEMPER AJMP CHANGE ;*DS18B20 復(fù)位程序 * INIT_18B20: SETB DQ NOP CLR DQ MOV R0, #0FBH TSR1: DJNZ R0,TSR1 ;延時(shí) SETB DQ MOV R0, #25H TSR2: JNB DQ, TSR3 DJNZ R0, TSR2 TSR3: SETB FLAG1 ;置標(biāo)志位,表明 DS18B20存在 CLR P2.0 ;二極管指示 AJMP TSR5 TSR4: CLR FLAG1 LJMP TSR7 TSR5: MOV R0, #06BH TSR6: DJNZ R0, TSR6 TSR7:SETB DQ ;表明不存在 RET ;*設(shè)定 DS18B20暫存器設(shè)定值 * RE_CONFIG: JB FLAG1, RE_CONFIG1 RET ;RE_CONFIG1: MOV A,#0CCH ;放跳過(guò) ROM命令 LCALL WRITE_18B20 MOV A, #4EH LCALL WRITE_18B20 ;寫暫存器命令 MOV A, #00H ;報(bào)警上限中寫入 00H LCALL WRITE_18B20 MOV A, #00H ;報(bào)警下限中寫入 00H LCALL WRITE_18B20 MOV A,#1FH ;選擇九位溫度分辨率 LCALL WRITE_18B20 RET ;*讀轉(zhuǎn)換后的溫度值 * GET_TEMPER: SETB DQ LCALL INIT_18B20 JB FLAG1, TSS2 RET ;若不存在則返回 TSS2: MOV A,#0CCH ;跳過(guò) ROM LCALL WRITE_18B20 MOV A,#44H ;發(fā)出溫度轉(zhuǎn)換命 令 LCALL WRITE_18B20 LCALL DISPLAY ;延時(shí) LCALL INIT_18B20 MOV A,#0CCH ;跳過(guò) ROM LCALL WRITE_18B20 MOV A,#0BEH ;發(fā)出讀溫度換命令 LCALL WRITE_18B20 LCALL READ2_18B20 ;讀兩個(gè)字節(jié)的溫度 RET ;*寫 DS18B20程序 * WRITE_18B20: MOV R2, #8 CLR C WR1: CLR DQ MOV R3, #6 DJNZ R3, $ RRC A MOV DQ, C MOV R3, #23 DJNZ R3, $ SETB DQ NOP DJNZ R2, WR1 SETB DQ RET ;*讀 18B20程序,讀出兩個(gè)字節(jié)的溫度 * READ2_18B20: MOV R4,#2 ;低位存在 29 H,高位存在28H MOV R1,#29H RE00: MOV R2, #8 RE01: CLR C SETB C NOP NOP CLR DQ NOP NOP NOP SETB DQ MOV R3, #7 DJNZ R3, $ MOV
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030人工智能醫(yī)療診斷設(shè)備產(chǎn)業(yè)供需現(xiàn)狀分析投資評(píng)估研究規(guī)劃報(bào)告
- 2025-2030人工智能醫(yī)療影像診斷技術(shù)水平提升與政策支持分析
- 2025-2030人工智能醫(yī)療應(yīng)用分析及遠(yuǎn)程診斷技術(shù)投資規(guī)劃
- 2025-2030人力資源管理行業(yè)市場(chǎng)運(yùn)營(yíng)管理競(jìng)爭(zhēng)分析投資評(píng)估規(guī)劃前瞻研究
- 沽源縣檔案管理制度
- 閬中市檔案管理制度
- 檔案室節(jié)能管理制度
- 腫瘤科檔案管理制度
- 婚內(nèi)財(cái)產(chǎn)協(xié)議書能做公證
- 民政檔案三合一制度
- 高等混凝土結(jié)構(gòu)第一、二章
- 中圖版地理七年級(jí)上冊(cè)知識(shí)總結(jié)
- 大連理工大學(xué)固態(tài)相變各章節(jié)考點(diǎn)及知識(shí)點(diǎn)總節(jié)
- 腫瘤科專業(yè)組藥物臨床試驗(yàn)管理制度及操作規(guī)程GCP
- 統(tǒng)編版四年級(jí)下冊(cè)語(yǔ)文第二單元表格式教案
- 測(cè)量系統(tǒng)線性分析數(shù)據(jù)表
- 上海農(nóng)貿(mào)場(chǎng)病媒生物防制工作標(biāo)準(zhǔn)
- 第三單元課外古詩(shī)詞誦讀《太常引·建康中秋夜為呂叔潛賦》課件
- YY 0334-2002硅橡膠外科植入物通用要求
- GB/T 5836.1-1992建筑排水用硬聚氯乙烯管材
- 論文寫作講座課件
評(píng)論
0/150
提交評(píng)論