




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
中北大學(xué)信息商務(wù)學(xué)院2010屆畢業(yè)設(shè)計(jì)說明書1緒論1.1體溫計(jì)的發(fā)展與現(xiàn)狀體溫測量的歷史,可以追溯到l6世紀(jì)。當(dāng)時(shí)Saatorio用空氣熱膨脹的原理,制出了第一支測量口腔溫度的體溫計(jì)。本世紀(jì)初,開始用水銀來制作體溫計(jì),至今在臨床上得到了廣泛的應(yīng)用。根據(jù)1928年Ebstein的報(bào)告,當(dāng)時(shí)除測量口腔及腋下的溫度外,還可以測量直腸、頸部、大腿根部,外耳、陰道溫度及尿溫。這些都是用被測皮膚溫度與玻璃球內(nèi)積存的水銀溫度相等的原理實(shí)現(xiàn)的。由于水銀體溫計(jì)使用方便、精度高,因而應(yīng)用很廣。再加上測溫方法及其結(jié)構(gòu)都已成熟,沒多大改進(jìn)余地,人們對它的研究失去了信心,至今幾乎沒有什么進(jìn)展。由于用水銀體溫計(jì)進(jìn)行體溫監(jiān)測很不方便,水銀的污染也很嚴(yán)重等,為了正確測量局部溫度,最近促使人們開發(fā)了各種不同的測溫儀器和測溫方法。只因臨床上測溫方法至今也沒有多大變化,近年普及的電子體溫計(jì)又不能獲得更多的其他生理信息,精度也無多大提高,相比之下,水銀體溫計(jì)仍不愧是一個(gè)精度高、便宜、使用方便的測溫儀器。因此,盲目地用電子測溫儀來取代水銀體溫計(jì)并不一定恰當(dāng),若只注意汞污染問題,必須用電子體溫計(jì)來替代水銀體溫計(jì)的理由也是不充分的。盡管這樣,已有許多醫(yī)院采用了電子體溫計(jì),用其它電子儀器測量體溫也日益普及。這一事實(shí)至少表明,電子測溫儀器的性能已接近水銀溫度計(jì)的性能。由于采用電子儀器,出現(xiàn)了新的測溫方法,然而就目前的情況來看,能與水銀體溫計(jì)相媲美的比較完善的體溫測量儀器尚未問世。因此,與水銀體溫計(jì)的歷史相對照,可以說以電子體溫計(jì)為首的近代體溫測量儀器還停留在19世紀(jì)的水平上,鑒于傳統(tǒng)的水銀體溫計(jì)汞的污染及其攜帶不方便易破碎,尤其是測量時(shí)間過長等缺點(diǎn),本課題就此問題設(shè)計(jì)出一種新型的智能電子體溫計(jì)。它在穩(wěn)定性及響應(yīng)時(shí)間上比傳統(tǒng)的水銀體溫計(jì)有著顯著的優(yōu)勢,精度要求也能和傳統(tǒng)的水銀體溫計(jì)相媲美1.2數(shù)字體溫計(jì)設(shè)計(jì)的目的普遍使用酒精(或水銀)溫度計(jì)來測量體溫,不僅測量時(shí)間長,而且讀數(shù)也不方便。市場上銷售的體溫計(jì)不僅精度較低、體積大、不便于攜帶,而且功能單一,難于推廣應(yīng)用。鑒于此想設(shè)計(jì)出一種在讀取時(shí)不受環(huán)境影響,且精度高,便于攜帶的智能體溫計(jì)。1.3新型智能電子體溫計(jì)的發(fā)展及其特點(diǎn)隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù)。一切都向著數(shù)字化控制,智能化控制方向發(fā)展。以單片機(jī)為核心研制成新型智能電子體溫計(jì)。在軟件控制下,實(shí)現(xiàn)智能化的體溫測量,不但能精確測量體溫,而且能對溫度進(jìn)行邏輯判斷,并用LCD模塊將判斷結(jié)果以數(shù)字的形式顯示出來。體溫是生命活動一種表現(xiàn),是人體新陳代謝的一個(gè)重要生理參數(shù)。體溫既有生理學(xué)意義,又有重要的臨床醫(yī)學(xué)意義,是臨床診斷的重要指標(biāo)(比如人的正常體溫(口腔)是36—37.2℃,37.3—38℃視為低燒,38—39℃中燒,39—4l℃1.4本文所做的主要工作本文將介紹一種基于單片機(jī)控制的數(shù)字溫度計(jì),與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對測溫比較準(zhǔn)確的場所,或科研實(shí)驗(yàn)室使用。本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)該設(shè)計(jì)控制器使用單片機(jī),測溫傳感器使用DS18B20,串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示,本溫度計(jì)屬于多功能溫度計(jì),而且可以設(shè)置上下報(bào)警溫度,當(dāng)溫度不在設(shè)置范圍內(nèi)時(shí),可以報(bào)警。以單片機(jī)為核心研制成新型智能電子體溫計(jì)。在軟件控制下,實(shí)現(xiàn)智能化的體溫測量,不但能精確測量體溫,而且能對溫度進(jìn)行邏輯判斷,并用LCD模塊將判斷結(jié)果以數(shù)字的形式顯示出來。全文共分為五章,其主要內(nèi)容和結(jié)構(gòu)安排如下:第一章緒論部分主要介紹的體溫計(jì)的發(fā)展歷史及現(xiàn)狀,并對新型智能體溫計(jì)做了簡要概述。第二章主要介紹數(shù)字體溫計(jì)的設(shè)計(jì)思路,系統(tǒng)工作原理以及本設(shè)計(jì)得方案選擇。第三章單片機(jī)的概述,數(shù)字體溫計(jì)的硬件設(shè)計(jì)方面,對器件的選擇,主要介紹了AT89S51單片機(jī),DB18B20,LCD1602液晶顯示器。系統(tǒng)的電路設(shè)計(jì),并具體闡明了各部分控制線路的功能。第四章,數(shù)字溫度計(jì)的軟件設(shè)計(jì),程序的主控制循環(huán)調(diào)用,讀溫度設(shè)計(jì)和顯示溫度程序設(shè)計(jì),在參考同類溫度計(jì)的程序設(shè)計(jì)基礎(chǔ)上完成本設(shè)計(jì)得設(shè)計(jì)要求。第五章后續(xù)工作,對系統(tǒng)的硬件方面和軟件方面進(jìn)行調(diào)試,使其功能符合設(shè)計(jì)要求。2數(shù)字溫度計(jì)的總體設(shè)計(jì)2.1數(shù)字體溫計(jì)的設(shè)計(jì)思想數(shù)字體溫計(jì)的設(shè)計(jì)思想是:所設(shè)計(jì)的體溫計(jì)在測溫精度能與傳統(tǒng)的水銀溫度計(jì)相媲美的情況下,大大的縮短了測溫時(shí)間,攜帶方便,對環(huán)境幾乎沒有污染。即是一種典型的智能化儀表,它以單片機(jī)作為核心,在軟件控制下,與其它硬件電路相結(jié)合,實(shí)現(xiàn)智能化的體溫測量。2.2數(shù)字體溫計(jì)的總體框圖單片機(jī)復(fù)位電源單單片機(jī)復(fù)位電源單片機(jī)部分顯示部分溫度傳感器 圖2-1總體設(shè)計(jì)方框圖2.3系統(tǒng)工作原理數(shù)字體溫計(jì)的工作原理是:體溫信號由溫度傳感器變換為數(shù)字信號。此信號送入單片機(jī)系統(tǒng),利用單片機(jī)本身的軟件功能進(jìn)行數(shù)字濾波、線性化處理、數(shù)據(jù)存儲、邏輯判斷,從而實(shí)現(xiàn)相應(yīng)的智能功能。并將最后的測量結(jié)果送入液晶顯示模塊,在顯示程序控制下進(jìn)行顯示,包括顯示溫度數(shù)據(jù)和漢字,從而使測溫前后的各種操作更趨于智能化和人性化。2.4主要器件選擇2.4.1單片機(jī)的選擇方案一AT89C51是ATMEL公司的C51單片機(jī),它是在8051的基礎(chǔ)上增強(qiáng)了一些特性,如時(shí)鐘,更優(yōu)秀的是由Flash(程序存儲器的內(nèi)容至少可以改寫1000次)存儲器取帶了原來的ROM(一次性寫入),相對于8051,AT89C51的性能已經(jīng)算是非常優(yōu)越的了。AT89C51片內(nèi)有4K字節(jié)的FLASH程序存儲器,128字節(jié)的片內(nèi)RAM,2個(gè)定時(shí)器/計(jì)數(shù)器,6個(gè)中斷源,5個(gè)可用中斷,2個(gè)中斷級別,支持掉電模式和空閑模式,都是方案二選擇性能更加優(yōu)良的AT89S51除了具有上述AT89C51的功能外,還有ISP功能、特殊功能寄存器和不同的極限工作頻率。AT89S51不但多了ISP功能,還有一個(gè)很好用的內(nèi)部看門狗??撮T狗是直譯的說法,即一個(gè)不斷自己工作的定時(shí)器,如果不斷地“喂”它(不斷地復(fù)位它,表示程序自己沒有死機(jī)),過一段時(shí)間,它就會計(jì)數(shù)溢出,MCU就復(fù)位,以避免程序卡死后沒人管。AT89C51最高可以使用的晶振頻率時(shí)24MHz,AT89S51可以使用的晶振頻率更高,達(dá)33MHz。新增加很多功能,性能有了較大提升,價(jià)格基本不變,甚至比89C51更低!從以上兩種方案比較,很容易看出,選用的AT89S51與同系列的AT89C51在功能上有明顯的提高,因而選用性能更高的AT89S51單片機(jī)。2.4.2傳感器的選擇方案一由于本設(shè)計(jì)是測溫系統(tǒng),可以使用熱電偶之類的器件利用其感溫特性,把它隨著被測溫度變化的電壓或電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在系統(tǒng)中有一個(gè)這樣的傳感器就需要一個(gè)A/D轉(zhuǎn)換電路,這將導(dǎo)致系統(tǒng)電路整體設(shè)計(jì)起來比較復(fù)雜,除了A/D、D/A轉(zhuǎn)化模塊,相應(yīng)的還要增加信號放大等電路,這對于單片機(jī)有限的空間而言,系統(tǒng)利用效率是比較低下的。此外,現(xiàn)代數(shù)據(jù)采集的特點(diǎn)是數(shù)字化,它帶來的不僅是電路設(shè)計(jì)的簡化,還有利于后期數(shù)據(jù)的加工和利用。方案二進(jìn)而考慮到用數(shù)字傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是處理數(shù)字信號,因此可以采用數(shù)字溫度傳感器DS18B20。與傳統(tǒng)傳感器相比,單總線技術(shù)可以讓單片機(jī)節(jié)省大量的I/O資源,而且外部與傳感器的相連的電纜、端子、槽盒、橋架,連線設(shè)計(jì)與接頭校對的工作量也大大減少,即節(jié)省了投資,也減少了設(shè)計(jì)、安裝的工作量。同時(shí),由于傳感器直接輸出的是數(shù)字信號,使系統(tǒng)省掉了放大、A/D轉(zhuǎn)換等相關(guān)電路,系統(tǒng)的穩(wěn)定性、可靠性有了大幅提高。利用此傳感器可以輕松的設(shè)計(jì)出一種高效的、簡練的、且易維護(hù)的測溫系統(tǒng)。從以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設(shè)計(jì)也比較簡單,故采用了方案。第21頁共41頁3體溫計(jì)的硬件設(shè)計(jì)3.1單片機(jī)概述單片機(jī)全稱為單片微型計(jì)算機(jī)(SingleChipMicrocomputer),又稱為微控制器(MicrocontrollerUnit)或嵌入式控制器(EmbeddedController)。單片機(jī)是由運(yùn)算器、控制器、存儲器、輸入設(shè)備以及輸出設(shè)備共五個(gè)基本部分組成的。它是將計(jì)算機(jī)的基本部件微型化并集成到一塊芯片上的微型計(jì)算機(jī),通常片內(nèi)都含有CPU、ROM、RAM、并行I/O、串行I/O、定時(shí)器/計(jì)數(shù)器、中斷控制、系統(tǒng)時(shí)鐘及系統(tǒng)總線等。隨著技術(shù)的發(fā)展,單片機(jī)片內(nèi)集成的功能越來越強(qiáng)大,并朝著片上系統(tǒng)方向發(fā)展。
單片機(jī)有著體積小、功耗低、功能強(qiáng)、性能價(jià)格比高、易于推廣應(yīng)用等顯著優(yōu)點(diǎn),在自動化裝置、智能儀器儀表、過程控制、通信、家用電器等許多領(lǐng)域得到日益廣泛的應(yīng)用。3.2主要器件介紹3.2.1AT89S51功能簡介AT89S51是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機(jī),片內(nèi)含4kbytes的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序存儲器既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中,ATMEL公司的功能強(qiáng)大,低價(jià)位AT89S51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場介,可靈活應(yīng)用于各種控制領(lǐng)域。主要性能參數(shù):·與MCS-51產(chǎn)品指令系統(tǒng)完全兼容·4k字節(jié)在線系統(tǒng)編程(ISP)Flash閃速存儲器
·1000次擦寫周期·4.05.5V的工作電壓范圍·全靜態(tài)工作模式:0Hz33MHz·三級程序加密鎖·128×8字節(jié)內(nèi)部RAM·32個(gè)可編程I/O口線·2個(gè)16位定時(shí)/計(jì)數(shù)器·6個(gè)中斷源·全雙工串行UART通道·低功耗空閑和掉電模式·中斷可從空閑模式喚醒系統(tǒng)·看門狗(WDT)及雙數(shù)據(jù)指針·掉電標(biāo)識和快速編程特性·靈活的在線系統(tǒng)編程(ISP一字節(jié)或頁寫模式)
2.功能特性概述:AT89S51提供以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線,看門狗(WDT),兩個(gè)數(shù)據(jù)指針,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量兩級中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89S51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。3.引腳功能說明,如圖3-1所示:圖3-1AT89S51管腳
·Vcc:電源電壓
·P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能驅(qū)動8個(gè)TTL邏輯門電路,對端口寫‘1’可作為高阻抗輸入端用。
在訪問外部數(shù)據(jù)存儲器或程序存儲器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。·P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對端口寫‘1’,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),囚為內(nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會輸出一個(gè)電流(In)。
·P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對端口寫‘1’,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),囚為內(nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會輸出一個(gè)電流(In)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX@DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX@Ri指令)時(shí),P2口線卜的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中P2寄存器的內(nèi)容),在整個(gè)訪問期間不改變。
Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其它控制信號。
·P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時(shí),被外部拉低的P3口將用上拉電阻輸出電流(In)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能。P3口還接收一些用于Flash閃速存儲器編程和程序校驗(yàn)的控制信號。端口引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2(外中斷0)P3.3(外中斷1)P3.4T0(定時(shí)/計(jì)數(shù)器0外部輸入)P3.5T1(定時(shí)/計(jì)數(shù)器1外部輸入)P3.6(外部數(shù)據(jù)存儲器寫選通)P3.7(外部數(shù)據(jù)存儲器讀選通)·RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。WDT溢出將使該引腳輸出高電平,設(shè)置SFRAUXR的DISRTO位(地址8EH)可打開或關(guān)閉該功能。DISRTO位缺省為RESET輸出高電平打開狀態(tài)?!LE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號,囚此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí)將跳過一個(gè)ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁正ALE操作。該位置位后,只有一條MOVX和MOVC指令A(yù)LE才會被激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無效?!SEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89S51由外部程序存儲器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。當(dāng)訪問外部數(shù)據(jù)存儲器,沒有兩次有效的PSEN信號?!A/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。Flash存儲器編程時(shí),該引腳加上+12V的編程電壓Vpp?!TAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端?!TAL2:振蕩器反相放大器的輸出端?!ぬ厥夤δ芗拇嫫鳎禾厥夤δ芗拇嫫鞯挠谄瑑?nèi)的空間分布的這些地址并沒有全部占用,沒有占用的地址亦不可使用,讀這些地址將得到一個(gè)隨意的數(shù)值。而寫這些地址單元將不能得到預(yù)期的結(jié)果?!ぶ袛嗉拇嫫鳎焊髦袛嘣试S控制位于IE寄存器,5個(gè)中斷源的中斷優(yōu)先級控制位于IP寄存器。
·雙時(shí)鐘指針寄存器:
為更方便地訪問內(nèi)部和外部數(shù)據(jù)存儲器,提供了兩個(gè)16位數(shù)據(jù)指針寄存器:DP0位于SFR(特殊功能寄存器)區(qū)塊中的地址82H,83H和DP1位于地址84H,85H,當(dāng)SFR中的位DPS=0選擇DP0,而DPS=1則選擇DP1。用戶應(yīng)在訪問相應(yīng)的數(shù)據(jù)指針寄存器前初始化DPS位。電源空閑標(biāo)志(POF)在特殊功能寄存器SFR中PCON的第4位(PCON.4},電源打開時(shí)POF置‘1’,它可由軟件設(shè)置睡眠狀態(tài)并不為復(fù)位所影響。·程序存儲器:
如果EA引腳接地(GND),全部程序均執(zhí)行外部存儲器。在AT89S51,假如EA接至Vcc(電源+),程序首先執(zhí)行地址從0000H-OFFFH(4KB)內(nèi)部程序存儲器,而執(zhí)行地址為1000H-FFFFH(60KB)的外部程序存儲器?!?shù)據(jù)存儲器:AT89S51的具有128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或間接尋址方式訪問,堆棧操作可利用間接尋址方式進(jìn)行,128字節(jié)均可設(shè)置為堆棧區(qū)空間。
·看門狗定時(shí)器(WDT):WDT是為了解決CPU程序運(yùn)行時(shí)可能進(jìn)入混亂或死循環(huán)而設(shè)置,它由一個(gè)14bit計(jì)數(shù)器和看門狗復(fù)位SFR(WDTRST)構(gòu)成。外部復(fù)位時(shí),WDT默認(rèn)為關(guān)閉狀態(tài),要打開WDT,用戶必須按順序?qū)?1EH和0E1H寫到WDTRST寄存器(SFR地址為OA6H},當(dāng)啟動了WDT,它會隨晶體振蕩器在每個(gè)機(jī)器周期計(jì)數(shù),除硬件復(fù)位或WDT溢出復(fù)位外沒有其它方法關(guān)閉WDT,當(dāng)WDT溢出,將使RSF引腳輸出高電平的復(fù)位脈沖。·定時(shí)器0和定時(shí)器1:定時(shí)器0和1都是一個(gè)16位定時(shí)/計(jì)數(shù)器。AT89S51是美國ATMEL公司生產(chǎn)的低功耗、高性能的CMOS8位單片機(jī),片內(nèi)含4kbytes的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序存儲器既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中,ATMEL公司的功能強(qiáng)大,低價(jià)位AT89S51單片機(jī)可靈活應(yīng)用于各種控制領(lǐng)域。下圖為AT89S51方框圖。中北大學(xué)信息商務(wù)學(xué)院2010屆畢業(yè)設(shè)計(jì)說明書中北大學(xué)信息商務(wù)學(xué)院2010屆畢業(yè)設(shè)計(jì)說明書中北大學(xué)信息商務(wù)學(xué)院2010屆畢業(yè)設(shè)計(jì)說明書3.2.2DB18B20簡介DS18B20數(shù)字式溫度傳感器是美國Dallas公司最新推出的產(chǎn)品,與傳統(tǒng)的熱敏電阻溫度傳感器不同,它能夠直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式,可以分別在93.75ms和750ms內(nèi)將溫度值轉(zhuǎn)化9位和12位的數(shù)字量。因而使用DS18B20可使系統(tǒng)結(jié)構(gòu)更簡單,可靠性更高。芯片的耗電量很小,從總線上“偷”一點(diǎn)電存儲在片內(nèi)的電容中就可正常工作,一般不用另加電源。最可貴的是這些芯片在檢測點(diǎn)已把被測信號數(shù)字化了,因此在單總線上傳送的是數(shù)字信號,這使得系統(tǒng)的抗干擾性好、可靠性高、傳輸距離遠(yuǎn)。DS18B20傳感器有如下特點(diǎn):●獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;●多個(gè)DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;●無須外部器件,零待機(jī)功耗;●可通過數(shù)據(jù)線供電,電壓范圍為3.0~5.5V;●溫度以9或12位數(shù)字,用戶可定義報(bào)警設(shè)置;●報(bào)警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件;●負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會因發(fā)熱而燒毀,但不能正常工作;圖3-2管腳圖DS18B20的管腳排列及不同封裝形式如圖3-2所示,DQ為數(shù)字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地),NC表示無連接。DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖3-3所示。它有以下4個(gè)主要的數(shù)據(jù)部件組成:64位ROM、溫度傳感器、非易失性溫存儲的溫度報(bào)警觸發(fā)器TH和TL,配置寄存器。圖3-3DS18B20內(nèi)部結(jié)構(gòu)DS18B20測溫原理如圖3-4所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響小用于產(chǎn)生固定頻率的脈沖信號送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測溫度。斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。DS18B20在正常使用時(shí)的測溫分辨率為0.1℃。預(yù)置預(yù)置溫度寄存器=0斜率累加器預(yù)置比較計(jì)數(shù)器1低溫度系數(shù)晶振計(jì)數(shù)器2=0高溫度系數(shù)晶振加1停止LSB置位/清除圖3-4DS18B20工作原理圖由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。如下圖3-5為DS18B20與單片機(jī)的接口電路圖。圖3-5DS18B20與單片機(jī)的接口電路3.3LCD1602液晶顯示器3.3.11602LCD主要技術(shù)參數(shù):顯示容量:16×2個(gè)字符芯片工作電壓:4.5—5.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm引腳功能說明1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表3-6所示編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極表3-6引腳接口說明表第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。1602LCD的指令說明及時(shí)序1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表3-7所示:序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L**6置功能00001DLNF**7置字符發(fā)生存儲器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存儲器地址001顯示數(shù)據(jù)存貯器地址9讀寫標(biāo)志或地址01BF計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容圖3-7控制命令表1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。(說明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:光標(biāo)移動方向,高電平右移,低電平左移S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位S/C:高電平時(shí)移動顯示的文字,低電平時(shí)移動光標(biāo)。指令6:功能設(shè)置命令DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示F:低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。讀寫操作時(shí)序如圖3-8和3-9所示圖3-8讀操作時(shí)序圖3-9寫操作時(shí)序1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫表液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖3-10是1602的內(nèi)部顯示地址。圖3-101602LCD內(nèi)部顯示地址例如第二行第一個(gè)字符的地址是40H,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個(gè)字符的位置呢?這樣不行,因?yàn)閷懭腼@示地址時(shí)要求最高位D7恒定為高電平1所以實(shí)際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時(shí)光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個(gè)不同的點(diǎn)陣字符圖形,如圖10-58所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A”1602LCD的一般初始化(復(fù)位)過程延時(shí)15mS寫指令38H(不檢測忙信號)延時(shí)5mS寫指令38H(不檢測忙信號)延時(shí)5mS寫指令38H(不檢測忙信號)以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號寫指令38H:顯示模式設(shè)置寫指令08H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標(biāo)移動設(shè)置寫指令0CH:顯示開及光標(biāo)設(shè)置3.4系統(tǒng)的電路設(shè)計(jì)3.4.1總體控制線路圖單片機(jī)數(shù)字溫度計(jì)的設(shè)計(jì)由6個(gè)部分構(gòu)成,晶振電路、復(fù)位電路、溫度采集電路、電源電路、程序下載電路和溫度顯示電路。如圖3-5所示圖3-11系統(tǒng)電路設(shè)計(jì)圖3.4.2各部分具體控制線路圖程序下載電路:由AT89SISP端口與AT89S51芯片連接組成。如圖3-12所示圖3-12程序下載電路圖溫度采集電路:由溫度傳感器DS18B20與AT89S51芯片的P34連接,組成溫度采集電路。如圖3-13所示圖3-13溫度采集電路圖溫度顯示電路,液晶1602與AT89S51芯片的P10-P17、P30、P31和P35連接,組成單片機(jī)串口輸出顯示電路。如圖3-14所示
圖3-14溫度顯示電路晶振電路:由12M晶振1個(gè)、30pF起振電容2個(gè)組成,連接在AT89S51芯片XTAL1和XTAL2兩端。如圖3-15所示圖3-15晶振電路復(fù)位電路:主要由復(fù)位按鈕1個(gè)、104電容1個(gè)、10μF電解電容1個(gè)、10KΩ電阻1個(gè)組成。與RST端口連接。如圖3-16所示圖3-16復(fù)位電路3.5溫度顯示界面液晶顯示時(shí)每一行為顯示溫度值,第二行是設(shè)計(jì)者,要實(shí)現(xiàn)滾動屏。具體功能如下:通過一線溫度傳感器DS18B20采集溫度,通過液晶1602在第一行顯示出來,第二行顯示設(shè)計(jì)者滾動出現(xiàn)。"wendu:29.8"Design:zhangxingguang"4數(shù)字溫度計(jì)的軟件設(shè)計(jì)4.1程序設(shè)計(jì)流程圖如圖4-1為程序設(shè)計(jì)詳細(xì)流程圖:跳過ROM匹配跳過ROM匹配溫度液晶顯示讀溫度命令程序結(jié)束寫入子程序應(yīng)答子程序DS18B20復(fù)位顯示子程序?qū)懭胱映绦驕囟绒D(zhuǎn)換命令寫入子程序跳過ROM匹配開始初始化應(yīng)答子程序DS18B20復(fù)位 YY發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令讀取操作,CRC校驗(yàn)9字節(jié)完?CRC校驗(yàn)正?確?移入溫度暫存器結(jié)束NNY 圖4-2讀溫度流程圖圖4-1程序設(shè)計(jì)框圖4.2程序的主控制循環(huán)調(diào)用具體代碼如下: LCALLGET_TEMPER;調(diào)用讀溫度子程序 MOVA,29H MOVB,A CLRC RLCA CLRC RLCA CLRC RLCA CLRC RLCA SWAPA MOV31H,AMOVA,BMOVC,40H;將28H中的最低位移入CRRCAMOVC,41HRRCAMOVC,42HRRCAMOVC,43HRRCAMOV29H,ALCALLDISPLAY;調(diào)用液晶顯示子程序AJMPMAIN;這是DS18B20復(fù)位初始化子程序中北大學(xué)信息商務(wù)學(xué)院2010屆畢業(yè)設(shè)計(jì)說明書4.3讀溫度程序設(shè)計(jì)在讀溫度程序設(shè)計(jì)中,首先要判斷DS18B20是否存在,才能發(fā)出溫度轉(zhuǎn)換命令,這里還要調(diào)用顯示子程序?qū)崿F(xiàn)延時(shí)一段時(shí)間,等待AD轉(zhuǎn)換結(jié)束,12位的話750微秒,讀前復(fù)位等,上圖4-2為讀程序流程圖。具體程序如下:GET_TEMPER: SETBP2.6 LCALLINIT_1820;先復(fù)位DS18B20 JBFLAG1,TSS2RET;判斷DS18B20是否存在?若DS18B20不存在則返回TSS2: MOVA,#0CCH;跳過ROM匹配 LCALLWRITE_1820 MOVA,#44H;發(fā)出溫度轉(zhuǎn)換命令 LCALLWRITE_1820;這里通過調(diào)用顯示子程序?qū)崿F(xiàn)延時(shí)一段時(shí)間,等待AD轉(zhuǎn)換結(jié)束,12位的話750微秒 LCALLDISPLAY LCALLINIT_1820;準(zhǔn)備讀溫度前先復(fù)位 MOVA,#0CCH;跳過ROM匹配 LCALLWRITE_1820 MOVA,#0BEH;發(fā)出讀溫度命令 LCALLWRITE_1820 LCALLREAD_18200;將讀出的溫度數(shù)據(jù)保存到35H/36H RET;寫DS18B20的子程序(有具體的時(shí)序要求)4.4顯示溫度的程序設(shè)計(jì)溫度顯示部分是采用DB18B20,可顯示的位數(shù)為16位,即2個(gè)字節(jié)。具體程序如下:READ_18200: MOVR4,#2;將溫度高位和低位從DS18B20中讀出 MOVR1,#29H;低位存入29H(TEMPER_L),高位存入28H(TEMPER_H)RE00: MOVR2,#8;數(shù)據(jù)一共有8位RE01: CLRC SETBP2.6 NOP NOP CLRP2.6 NOP NOP NOP SETBP2.6 MOVR3,#9RE10: DJNZR3,RE10 MOVC,P2.6 MOVR3,#23RE20: DJNZR3,RE20 RRCA DJNZR2,RE01 MOV@R1,A DECR1 DJNZR4,RE00RET5系統(tǒng)的調(diào)試5.1單片機(jī)應(yīng)用系統(tǒng)的硬件調(diào)試單片機(jī)應(yīng)用系統(tǒng)的硬件調(diào)試主要是排查印刷電路板的問題和連接上的一些問題。由干硬件電路變化很多,不同類型的電路可能出現(xiàn)的問題也不一樣,所以沒有固定的程序可以投用,所以,在該系統(tǒng)中,首先通過了仔細(xì)地推敲系統(tǒng)原理,確認(rèn)無誤;其次對照設(shè)計(jì)圖紙查印制電路板,看是否有粘接等工藝現(xiàn)象;最后,檢查外圍連接是否有誤,通過這幾個(gè)方面的反復(fù)調(diào)試,可確保電路板的無誤性。在本系統(tǒng)的硬件調(diào)試過程中,出現(xiàn)了電壓不穩(wěn)定而導(dǎo)致程序無法寫入的情況,使電壓穩(wěn)定的方法是改用新的電池,或者是再次設(shè)計(jì)電源方案,在這里是用電源接通教學(xué)實(shí)驗(yàn)板,然后再把教學(xué)實(shí)驗(yàn)板與本系統(tǒng)相連接,這樣,就可以得到穩(wěn)定的電壓了。5.2單片機(jī)應(yīng)用系統(tǒng)的軟件調(diào)試單片機(jī)應(yīng)用系統(tǒng)的軟件調(diào)試也沒有規(guī)律可循,調(diào)試時(shí)更多的是憑經(jīng)驗(yàn)。軟件調(diào)試的主要任務(wù)是排查錯(cuò)誤。通過在WaveE2000編譯器下調(diào)試程序,有兩種錯(cuò)誤,一種邏輯錯(cuò)誤,也就是語法錯(cuò)誤,是很容易被發(fā)現(xiàn)的,另一種是功能錯(cuò)誤,是指在沒有語法錯(cuò)誤的基礎(chǔ)上,由于設(shè)計(jì)思想或算法的問題導(dǎo)致不能實(shí)現(xiàn)軟件功能的一種錯(cuò)誤。通過這兩方面錯(cuò)誤,不斷地調(diào)試,以及對各模塊的調(diào)試,最后組成一個(gè)完整的程序。結(jié)語經(jīng)過將近三月的單片機(jī)畢業(yè)設(shè)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年項(xiàng)目管理考試探討試題及答案
- 2024年項(xiàng)目管理難點(diǎn)試題及答案
- 長豐鋼結(jié)構(gòu)夾層施工方案
- 行政管理師考試策略與解決方案及答案
- 項(xiàng)目的持續(xù)改進(jìn)與優(yōu)化試題及答案
- 項(xiàng)目管理市場環(huán)境試題及答案
- 2025年證券從業(yè)資格證考試的重點(diǎn)考查試題及答案
- 威迪斯管道施工方案
- 證券從業(yè)資格證考試學(xué)習(xí)策略試題及答案
- 理解項(xiàng)目管理中的團(tuán)隊(duì)沖突處理的考點(diǎn)試題及答案
- 2025年貴州高速投資集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 產(chǎn)科妊娠期肝內(nèi)膽汁淤積癥護(hù)理查房課件
- 內(nèi)鏡室工作流程
- 《Hadoop技術(shù)原理》課件-11.Flume
- 血液標(biāo)本采集(靜脈采血)
- 水利水電建筑工程基礎(chǔ)知識單選題100道及答案解析
- 【MOOC】3D工程圖學(xué)-華中科技大學(xué) 中國大學(xué)慕課MOOC答案
- 安全環(huán)保班組培訓(xùn)
- 2024年北京大學(xué)強(qiáng)基計(jì)劃物理試題(附答案)
- TCUWA40055-2023排水管道工程自密實(shí)回填材料應(yīng)用技術(shù)規(guī)程
- 糖尿病病人的麻醉管理
評論
0/150
提交評論