




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
引 隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實(shí)現(xiàn),能夠獨(dú)立工作的溫度檢測和顯示系統(tǒng)正在逐步應(yīng)用于諸多領(lǐng)域。傳統(tǒng)的溫度檢測以熱電偶和熱電阻為溫度敏感元件。然熱電偶和熱電阻的成本低,但他們測出的一般都是電壓,再轉(zhuǎn)換成對應(yīng)的溫度需要比較多的外部硬件支持,而且可靠性相對較差,測溫準(zhǔn)確度低,檢測系統(tǒng)也有一定的誤差。與傳統(tǒng)的溫度計(jì)相比,基于Ds18B20的數(shù)字溫度計(jì)具有讀數(shù)方便,測溫范圍廣,測溫精確,數(shù)字顯示,適用范圍寬等特點(diǎn)。選用A9C2051型單片機(jī)作為主控制器件,Ds18B20作為溫傳感器,通過4位共陽極LED數(shù)碼管串凵傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示。通過Ds18E20直接讀取被測溫度值,進(jìn)行數(shù)據(jù)轉(zhuǎn)換該器件的物理化學(xué)性能穩(wěn)定,線性度較好,在·10、+85℃范圍內(nèi),精度為.5℃。該器件可直接向單片機(jī)傳輸數(shù)字信號,便于單片機(jī)處理及控制。另外,該溫度計(jì)還能直接采用測溫器件測量溫度,從而簡化數(shù)據(jù)傳輸與處理過程。
摘要隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)己經(jīng)普及到我們生活、工作、科研,各個(gè)領(lǐng)域,己經(jīng)成為一種比較成熟的技術(shù)。對于溫度的測量方法與裝置的研宄就凸顯得非常重要。由單片機(jī)與溫度傳感器構(gòu)成的測溫系統(tǒng)可廣泛應(yīng)用于很多領(lǐng)域:本文將介紹一種基于單片機(jī)控制的數(shù)字溫度計(jì),從硬件和軟件兩方面介紹了單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì),對硬件原理圖和程序框圖作了簡潔的描述。本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,濞溫范圍廣,測溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,該設(shè)計(jì)控制器使用單片機(jī)89C2051,測溫傳感器使用Ds18B20,用4位共陽極LED數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。Ds18B20數(shù)字溫度傳感器是單總線器件與51單片機(jī)組成的測溫系統(tǒng),具有線路簡單、.體積小等特點(diǎn),而且在一根通信線上,可以掛接多個(gè)DS飛8B20此可以構(gòu)成多點(diǎn)溫度測控系統(tǒng)。關(guān)鍵詞.單片機(jī),數(shù)字控制,溫度計(jì),溫度傳感器AbstractWiththeprogressanddevelopmentofera,microcontrollertechnologyhasbecomepopularinourlife,inthework,thescientificresearchandvariousfields,hasbecomearelativelymaturetechnology.Tietemperaturemeasurementmethodanddeviceofthehighlightsisveryimpoltant.Posedbythesinglechiptemperaturesensorandtemperaturemeasurementsystemcanbewidelyappliedinmanyfields.*Illisarficleintroducesamicrocomputer-basedcontrolofdigitalthennometers;bothhardwareandsoftwareintroducedTemperatureControlsystemdesign,hardwareschematicsandmadeabliefdescliptionoftheblockdiagram.designpresentedindigitalthermometerwithatraditionalthennometer,comparedwithreadingconvenience,awiderangeoftemperaturemeasurement,temperaturemeasurementaccuracy,theoutputofthetemperaturedigitaldisplay,thedesignofthecontrollerusingmicrocontrollerAT89C2051,temperaturesensorusesDS18B20,with4LEDdigitaltubesanodespacestoselialtransmissionofdata,toachievetemperaturedisplay,accuratetotheaboverequirements.DS18B20single-busdigitaltemperaturesensoriscomposedof51single-chipdevicewithtemperaturemeasurementsystemissimple,smallsizeandothercharacteristics,butalsoacommunicationline,youcanmountmultipleDSI8B20,itcanconstituteamulti-pointtemperaturecontrolsystem.Keywords:microcontroller,digitalcontrol,thermometer太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書目錄第1章緒論1.1溫度計(jì)的介紹及發(fā)展史.12單片機(jī)的介紹.1的彐單片機(jī)的發(fā)展歷史22單片機(jī)的發(fā)展趨勢1.23單片機(jī)的組成及特點(diǎn)4單片機(jī)的分類1.25單片機(jī)的應(yīng)用1.3選題的目的和意義31選題的目的1.32選題的意義1.4小結(jié)第2章數(shù)字溫度計(jì)的設(shè)計(jì)方案 ,飛2.1設(shè)計(jì)方案的確立及論證. 《2彐彐溫度傳感器DS18B20的選擇,飛2彐2單片機(jī)盍TS芤2051的選擇 ·飛2.2小結(jié) 《第3章系統(tǒng)硬件電路的設(shè)計(jì) ,飛 3.1主控匍器. ·飛 31彐AT89覦051介紹 《3彐2DS13B20介紹. ,飛3.2Ds13B20與單片機(jī)接口電路的設(shè)計(jì)0乙3.3LED顯示電路的設(shè)計(jì). 0乙引31顯示電路3到.2LED數(shù)碼管介紹. 0乙3.4小結(jié) C"第4章系統(tǒng)程序的設(shè)計(jì)4.1程序設(shè)計(jì)內(nèi)容. 004彐彐主程序 42讀出溫度子程序 00403溫度轉(zhuǎn)換命令子程序. C"4口4計(jì)算溫度子程序 405顯示數(shù)據(jù)刷新子程序. 00406溫度數(shù)據(jù)的計(jì)算處理方法. C"4.2匯編氵原程序4的1DS20的各條ROM操作命令.C"4的2編寫程序設(shè)計(jì)源程序 4.3小結(jié) 00第5第5章調(diào)試及性能分析第1章緒論1.1溫度計(jì)的介紹及發(fā)展史溫度計(jì)是測溫儀器的總稱。根據(jù)所用濞溫物質(zhì)的不同和測譜范圍的不同,有煤油溫度計(jì)、酒精溫度計(jì)、水銀溫度計(jì)、氣體溫度計(jì)、電阻溫度計(jì)、溫差電偶溫度計(jì)、輻射溫度計(jì)和光測譜度計(jì)等。最早的溫度計(jì)是在1593年由意大利科學(xué)家伽利略(1564、1M2)發(fā)明的。他的第一只溫度計(jì)是一根一端敞口的玻璃管,另一端帶有核桃大的玻璃泡。使用時(shí)先給玻璃泡加熱,然后把玻璃管插入水中。隨著溫度的變化,玻璃管中的水面就會上下移動,根據(jù)移動的多少就可以判定溫度的變化和溫度的高低。這種溫度計(jì),受外界大氣壓強(qiáng)等環(huán)境因素的影咱較大,所以濞量誤差大。伽利略發(fā)明的第一個(gè)溫度計(jì),后來伽利略的學(xué)生和其他科學(xué)家,在這個(gè)基礎(chǔ)上反復(fù)改進(jìn),虹把玻璃管倒過來,把液體放在管內(nèi),把玻璃管封閉等。比較突出的是法國人布利奧在1659年制造的溫度計(jì),他把玻璃泡的體積縮小,并把測溫物質(zhì)改為水銀,這樣的溫度計(jì)已具各了現(xiàn)在溫度計(jì)的雛形。以后荷蘭人華倫海特在1709年利用酒精,在1714年又利用水銀作為濞量物質(zhì),制造了更精確的溫度計(jì)。他觀察了水的沸騰溫度、水和冰混合時(shí)的溫度、鹽水和冰混合時(shí)的溫度;經(jīng)過反復(fù)實(shí)驗(yàn)與核準(zhǔn),最后把一定濃度的鹽水凝固時(shí)的溫度定為丁F,把純水凝固時(shí)的溫度定為32。F,把標(biāo)準(zhǔn)大氣壓下水沸騰的溫度定為212下,用下代表華氏溫度,這就是華氏溫度計(jì)。在華氏溫度計(jì)出現(xiàn)的同時(shí),法國人列繆爾(1683、1757)也設(shè)計(jì)制造了一種溫度計(jì):他認(rèn)為水銀的膨脹系數(shù)太小,不宜做測溫物質(zhì):他專心研宄用酒精作為物質(zhì)的優(yōu)點(diǎn)。他反復(fù)實(shí)踐發(fā)現(xiàn),含有1/5水的酒精,在水的結(jié)冰溫度和沸騰溫度之間,其體積的膨脹是從1傭0個(gè)體積單位增大到1080個(gè)體積單位。因此他把冰點(diǎn)和沸點(diǎn)之間分成80份,定為自己溫度計(jì)的溫度分度,這就是列氏溫度計(jì)。蕞華氏溫度計(jì)制成后又經(jīng)過30多年瑞典人灄爾修斯于1742年改進(jìn)了華倫海特溫度計(jì)的刻度,他把水的沸點(diǎn)定為零度,把水的冰點(diǎn)定為100度。后來他的同事施太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明勒默爾把兩個(gè)溫度點(diǎn)的數(shù)值又倒過來,就成了現(xiàn)在的百分溫度,即攝氏溫度,用℃表示。華氏溫度與灄氏溫度的關(guān)系為下=9/5℃+,32或℃:5/9(。F一32)?,F(xiàn)在英,美國家多用華氏溫度,德國多用列氏溫度,而世界科技界和工農(nóng)業(yè)生產(chǎn)中,以及我國、注函等大多數(shù)國家則多用攝氏溫度:隨著科學(xué)技術(shù)的發(fā)展和現(xiàn)代工業(yè)技術(shù)的需要,測溫技術(shù)也不斷地改進(jìn)和提高。由于測溫范圍越來越廣,根據(jù)不同的要求,又制造出不同需要的測溫儀器。下面介紹幾種。氣體溫度計(jì)多用氫氣或氦氣作測溫物質(zhì),因?yàn)闅錃夂秃獾囊夯瘻囟群艿?,接近于絕對零度,故它的測溫范圍很廣:這種溫度計(jì)精確度很高,多用于精密測量。電阻溫度計(jì)分為金屬電阻溫度計(jì)和半導(dǎo)體電阻溫度計(jì),都是根據(jù)電阻值隨溫度的變化這一特性制成的:金屬溫度計(jì)主要有用鉑、金、銅、鎳等純金屬的及銠鐵、磷青銅合金的;半導(dǎo)體溫度計(jì)主要用碳、鍺等。電阻溫度計(jì)使用方便可靠,己廣泛應(yīng)用。它的濞量范圍為·260℃至600℃左右。溫差電偶溫度計(jì)是一種工業(yè)上廣泛應(yīng)用的溫儀器。利用溫差電現(xiàn)象制成。兩種不同的金屬絲焊接在一起形成工作端,另兩端與測量儀表連接,形成電路。把工作嵋放在被測溫度處,工作埽與自由端度不同時(shí),就會出現(xiàn)電動勢,因而有電流通過回路。通過電學(xué)量的測量,利用己知處的溫度,就可以測定另一處的溫度。這種溫度計(jì)多用銅一一康銅、鐵一一.。康銅、鎳銘一一康銅、金鈷一一銅、鉑一一銠等組成。它適用于溫差較大的兩種物質(zhì)之間,多用于高溫和低濁測量。有的溫差電偶能測量高達(dá)300丁C的高溫,有的能測接近絕對零度的低溫。高溫溫度計(jì)是指專門用來測量500℃以上的溫度的溫度計(jì),有光測溫度計(jì),比色溫度計(jì)和輻射溫度計(jì)。高溫溫度計(jì)的原理和構(gòu)造都比較復(fù)雜,這里不再討論。其測量范圍為500℃至30℃以上,不適用于測量低溫。1.2單片機(jī)的介紹單片計(jì)算機(jī)即單片微型計(jì)算機(jī)。(Single-ChipMicrocomputer),是集,RAM,ROM定時(shí),計(jì)數(shù)和多種接口于一體的微控制器。它體積小,成本低,功能強(qiáng),廣泛應(yīng)用于智能產(chǎn)業(yè)和工業(yè)自動化上。近年來隨著計(jì)算機(jī)在社會領(lǐng)域的滲透,單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動傳統(tǒng)控制檢測日新月益更新。在實(shí)時(shí)檢測和自動控制的單片機(jī)應(yīng)用系統(tǒng)樅單片機(jī)往往是作為一個(gè)核心部件來使用,僅單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,以作完善。而51系列單片機(jī)是各單片機(jī)中最為典型和最有代表性的一種。這次畢業(yè)設(shè)計(jì)通過對它的學(xué)習(xí),應(yīng)用,從而達(dá)到學(xué)習(xí)、設(shè)計(jì)、開發(fā)軟、硬的能力。單片機(jī)作為微型計(jì)算機(jī)的一個(gè)重要分支,應(yīng)用面很廣,發(fā)展很快。自單片機(jī)誕生至今,己發(fā)展為上百種系列的近千個(gè)機(jī)種。1.2.1單片機(jī)的發(fā)展歷史如果將8位單片機(jī)的推出作為起點(diǎn),那么單片機(jī)的發(fā)展歷史大致可分為以下幾個(gè)階段(0第一階段0976.1978):單片機(jī)的探索階段。以Intel公司的MCS-48為代表。MCS一48的推出是在工控領(lǐng)域的探索,參與這一控索的公司還有Motorola、囿og等,都取得了滿意的效果。這就是SCM的誕生年代,“單機(jī)片'一詞即由此而來。(2)第二階段0978.1982)單片機(jī)的完善階段。Intel公司在MCS48基礎(chǔ)上推出了完善的,典型的單片機(jī)系列MCS一51。它在以下幾個(gè)方面奠定了典型的通用總線型單片機(jī)體系結(jié)構(gòu)?!瞛)完善的外部總線:MCS-51設(shè)置了經(jīng)典的8位單片機(jī)的總線結(jié)構(gòu),包括8位數(shù)據(jù)總線、16位地址總線、控制總線及具有很多通信功能的串行通信接口@CPU外圍功能單元的集中管理模式:o體現(xiàn)工控特性的位地址空間及位操作方式。@指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。第三階段0982·1990):8位單片機(jī)的鞏固發(fā)展及16位單片機(jī)的推出階段,也是單片機(jī)向微控制器發(fā)展的階段。Intel公司推出的MCS96系列單片機(jī),將一些用于測控系統(tǒng)的模數(shù)轉(zhuǎn)換器、程序運(yùn)行監(jiān)視器、脈寬調(diào)制器等納人片中,體現(xiàn)了單片機(jī)的微控制器特。隨著MCS一51系列的廣應(yīng)用,許多電氣0商競相亻吏用80C51為內(nèi)核,將許多測控系統(tǒng)中使用的電路技術(shù)、接口技術(shù)、多通道A/D轉(zhuǎn)換部件,可靠性技術(shù)等應(yīng)用0單片機(jī)中,增強(qiáng)了外圍電路路功能,強(qiáng)化了智能控的的特征:第四階段(1990一今):微控制器的全面發(fā)展階段。隨著單片機(jī)在各個(gè)領(lǐng)域全面深入地發(fā)展和應(yīng)用,出現(xiàn)了高速、大尋址范圍、強(qiáng)運(yùn)算能力的8位/16位/32位通用型單片機(jī),以及小型廉價(jià)的專用型單片機(jī)。1.2.2單片機(jī)的發(fā)展趨勢目前,單片機(jī)正朝著高性能和多品種方向發(fā)展趨勢將是進(jìn)一步向著CMOS化、低功耗、小體積、大容量、高性能、低價(jià)格和外圍電路內(nèi)裝化等幾個(gè)方面發(fā)展:下面是單片機(jī)的主要發(fā)展趨勢:CMOS亻匕近年,由于CHMOS技術(shù)的進(jìn)步,大大地促進(jìn)了單片機(jī)的CMOS化。CMOS芯片除了低功耗特性之外,還具有功耗的可控性,使單片機(jī)可以工作在功耗精細(xì)管理狀態(tài)。這也是今后以80C51取代8051為標(biāo)準(zhǔn)MCU芯片的原因。因?yàn)閱纹瑱C(jī)芯片多數(shù)是采用CMOS(金屬柵氧化物)半導(dǎo)體工藝生產(chǎn)。CMOS電路的特點(diǎn)是低功耗、高密度、低速度、低價(jià)格.采用雙極型半導(dǎo)體工藝的啊無電路速度快,但功耗和芯片而積較大。隨著技術(shù)和工藝水平的提高,又出現(xiàn)了HMOS(高密度、高速度MOS)和CHMOS工藝。CHMOS和HMOS工藝的結(jié)合。目前生產(chǎn)的CHMOS電路己達(dá)到的速度,傳輸延遲時(shí)間小于2ns,它的綜合優(yōu)勢己在于工電路。因而,在單片機(jī)領(lǐng)域CMOS正在逐漸取代、電路。低功耗化單片機(jī)的功耗己從級降至級,甚至luA以下;使用電壓在3一6V之間,完全適應(yīng)電池工作。低功耗化的效應(yīng)不僅是功耗低,而且?guī)砹水a(chǎn)品的高可靠性,高抗干擾能力以及產(chǎn)品的便攜化。低電壓化幾乎所有的單片機(jī)都有WAITSTOP等省電運(yùn)行方式。允許使用的電壓范圍越來越寬,一般在3一6V范圍內(nèi)工作。低電壓供電的單片機(jī)電源下限己可達(dá)1一2V。目前0.sv供電的單片機(jī)已經(jīng)問世:低噪聲與高可靠性為提高單片機(jī)的抗電磁干擾能力,使產(chǎn)品能適應(yīng)惡劣的工作環(huán)境,滿足電磁兼容性方面更高標(biāo)準(zhǔn)的要求,各單片廠家在單片機(jī)內(nèi)部電路中都采用了新的技術(shù)措施:4巧)大容量化以往單片機(jī)內(nèi)的ROM為1KB?4KB,RAM為64一128B。但在需要復(fù)雜控制的場合,該存儲容量是不夠的,必須進(jìn)行外接擴(kuò)充:為了適應(yīng)這種領(lǐng)域的要求,須運(yùn)用新的工藝,使片內(nèi)存儲器大容量化。目前,單片機(jī)內(nèi)ROM最大可達(dá)64KB,RAM最大為2KB,高性能化主要是指進(jìn)一步改進(jìn)CPU的性能,加快指令運(yùn)算的速度和提高系統(tǒng)控制的可靠性。采用精簡指令集(RISC)結(jié)構(gòu)和流水線技術(shù),可以大幅度提高運(yùn)行速度?,F(xiàn)指令速度最高者己達(dá)100M伊s(MillionperSeconds即兆指令每秒),并加強(qiáng)了位處理功能、中斷和定時(shí)控制功能。這類單片機(jī)的運(yùn)算速度比標(biāo)準(zhǔn)的單片機(jī)高出10倍以上。由于這類單片機(jī)有極高的指令速度,就可以用軟件模擬其VO功能,山此引入了虛擬外設(shè)的新概念。小容量,低價(jià)格化與上述相反以4位、8位機(jī)為中心的小容量、低價(jià)格化也是發(fā)展動向之一這類單片機(jī)的用途是把以往用數(shù)字邏輯集成電路組成的控制電路單片化,可廣泛用于家電產(chǎn)品。外圍電路內(nèi)裝化這也是單片機(jī)發(fā)展的主要方向。隨著集成度的不斷提高,有可能把眾多的各種處圍功能器件集成在片內(nèi)。除了一般必須具有的CPU、ROM、RAM定時(shí)器/計(jì)數(shù)器等以外,片內(nèi)集成的部件還有模/數(shù)轉(zhuǎn)換器,DMA控制器、聲音發(fā)生器,監(jiān)視定時(shí)器、液晶顯示驅(qū)動器、彩色電視機(jī)和錄像機(jī)用的鎖相電路等。隨著半導(dǎo)體集成工藝的不斷發(fā)展,單片機(jī)的集成度將更高、體積將更小,功能將更強(qiáng)。在單片機(jī)家族中,80C51系列是其中的佼佼者,加之血el公司將其MCS51系列中的80C51內(nèi)核使用權(quán)以專利互換或出售形式轉(zhuǎn)讓給全世界許多著名IC制造0商,如Philips、NEC.Atmel、AMD華邦等,這些公司都在保持與80C51單片機(jī)兼容的基礎(chǔ)上改善了80C51的許多特性.這樣,80C51就變成有眾多的造廠商支持的、發(fā)展出上百品種的大家族,現(xiàn)統(tǒng)稱為80C51系列。80C51單片機(jī)己成為單片機(jī)發(fā)展的主流。1.2.3單片機(jī)的組成及特點(diǎn)單片機(jī)是微型機(jī)的一個(gè)主要分支,在結(jié)構(gòu)上的最大特點(diǎn)是把、存儲器,定時(shí)器和多種輸丸輸出接口電路集成在一塊超大規(guī)模集成電路芯片上。就其組成和功能而言,一塊單片機(jī)芯片就是一臺計(jì)算機(jī)。o)單片機(jī)的組成以MCS—51單片機(jī)為例,它通過內(nèi)部總線把計(jì)算機(jī)的各主要部件接為一體,其內(nèi)部總線包括地址總線、數(shù)據(jù)總線和控制總線。其中,地址總線的作用是在進(jìn)行數(shù)據(jù)交換時(shí)提供地址,CPU通過它們將地址輸出0存儲器或LIO接口;數(shù)據(jù)總線的作用是在CPU與存儲器或耵0接口之間,或存儲器與外設(shè)之間交換數(shù)據(jù),控制總線包括CPU發(fā)出的控制信號線和外部送人CPU的應(yīng)答信號線等。(2)單片機(jī)的特點(diǎn)由于單片機(jī)的這種結(jié)構(gòu)形式及它所采取的半導(dǎo)體工藝使其具有很多顯著的特點(diǎn),因而在各個(gè)領(lǐng)域都得到了迅猛的發(fā)展。單片機(jī)主要有如下特點(diǎn)..有優(yōu)異的性能價(jià)格.比。@集成度高、體積小、有很高的可靠性。單片機(jī)把各功能部件集成在一塊芯片上,內(nèi)部采用總線結(jié)構(gòu),減少了各芯片之間的連線,大大提高了單片機(jī)的可靠性與抗干擾能力。另外,其體積小,對于強(qiáng)磁場環(huán)境易于采取屏蔽措施,適合在惡劣環(huán)境下工作??刂乒δ軓?qiáng)。為了滿足工業(yè)控制的要求,一般單片機(jī)的指令系統(tǒng)中均有極豐富的轉(zhuǎn)移指令,70口的邏輯操作以及位處理功能。單片機(jī)的邏輯控制功能及運(yùn)行速度均高于同一檔次的微機(jī)。@低功耗、低電壓,便于生產(chǎn)便攜式產(chǎn)品:@外部總線增加了IC〔血艸Il№adCircuit〕及(SPISenalPeripheralIntelface)等串行總線方式,進(jìn)一步縮小了體積,簡化了結(jié)構(gòu):1.2.4單片機(jī)的分類單片機(jī)作為計(jì)算機(jī)發(fā)展的一個(gè)重要領(lǐng)域,應(yīng)用一個(gè)較科學(xué)的分類方法。根據(jù)目前發(fā)展情況,從不同角度單片機(jī)大致可以分為通用型/專用型、總線型/非總線型及工控型/家電型。(1)通用型/專用型這是按單片機(jī)適用范圍來區(qū)分的。例如,80C51是通用型單片機(jī),它不是為某種專門用途設(shè)計(jì)的;專用型單片機(jī)是針對一類產(chǎn)品甚至某一個(gè)產(chǎn)品設(shè)計(jì)生產(chǎn)的,例虹為了滿足電子體譜計(jì)的要求,在片內(nèi)集成ADC接口等功能的溫度泖量控匍電路??偩€型/非總線型這是按單片機(jī)是否提供并行總線來區(qū)分的??偩€型單片機(jī)普遍設(shè)置有并行地址總線、數(shù)據(jù)總線、控制總線,這些引腳用以擴(kuò)展并行外圍器件都可通過串行口與單片機(jī)連接,另外,許多單片機(jī)己把所需要的外圍器件及外設(shè)接口集成一片內(nèi),因此、在午多情況下可以不要并行擴(kuò)展總線,大大節(jié)省封裝成本和芯片體積,這類單片機(jī)稱為非總線型單片機(jī)??刂菩?家電型這是按照單片機(jī)大致應(yīng)用的領(lǐng)域進(jìn)行區(qū)分的。一般而小工控型尋址范圍大,運(yùn)算能力強(qiáng):用于家電的單片機(jī)多為專用型,通常是小封裝、低價(jià)格,外圍器件和外設(shè)接凵集成度高。1.2.5單片機(jī)的應(yīng)用由于單片機(jī)具有顯著的優(yōu)點(diǎn),它己成為科技領(lǐng)域的有力工具,人類生活的得力助手。它的應(yīng)用遍及各個(gè)領(lǐng)域,主要表現(xiàn)在以下幾個(gè)方而:(1)單片機(jī)在智能儀表中的應(yīng)用單片機(jī)廣泛地用于各種儀器儀表,使儀器儀表智能化,并可以提高測量的自動化程度和精度簡化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比。單片機(jī)在機(jī)電一體化中的應(yīng)用機(jī)電一體化是機(jī)械工業(yè)發(fā)展的方向。機(jī)電一體化產(chǎn)品是指集集成機(jī)械技術(shù)、微電子技術(shù)、計(jì)算機(jī)技術(shù)于一體,具有智能化特征的機(jī)電產(chǎn)品,例如微機(jī)控制的車床,鉆床等。單片機(jī)作為產(chǎn)品中的控制器,能充分發(fā)揮它的體積小,可靠性高,功能強(qiáng)等優(yōu)點(diǎn),可大大提高機(jī)器的自動化、智能化程度。單片機(jī)在實(shí)時(shí)控制中的應(yīng)用單片機(jī)廣泛地用于各種實(shí)時(shí)控制系統(tǒng)中。例如,在工業(yè)測控、航空航天、尖端武器、機(jī)器人等各種實(shí)時(shí)控制系統(tǒng)中,都可以用單片機(jī)作為控制器。單片機(jī)的實(shí)時(shí)數(shù)據(jù)處理能力和控制功能,可使系統(tǒng)保持在最佳工作狀態(tài),提高系統(tǒng)的工作效率和產(chǎn)品質(zhì)量:7單片機(jī)在分布式多機(jī)系統(tǒng)中的應(yīng)用在比較復(fù)雜的系統(tǒng)樅常采用分布式多機(jī)系統(tǒng)。多機(jī)系統(tǒng)一段由若干臺功能各異的單片機(jī)組成,各自完成特定的任務(wù),它們通過串行通信相互聯(lián)系、協(xié)調(diào)工作。單片機(jī)在這種系統(tǒng)中往往作為一個(gè)終端機(jī),安裝在系統(tǒng)的某些節(jié)點(diǎn)上,對現(xiàn)場信息進(jìn)行實(shí)時(shí)的濞量和控制:單片機(jī)的高可靠性和強(qiáng)抗干擾能力,使它可以置于惡劣環(huán)境的前端工作。單片機(jī)在人類生活中的應(yīng)用自從單片機(jī)誕生以后,它就步入了人類生活,如洗衣機(jī),電冰箱、電子玩具、收錄機(jī)等家用電器配上單片機(jī)后,提高了智能化程度,增加了功能,倍受人們喜愛。單片機(jī)將使人類生活更加方便、舒適、豐富多彩。綜合所述,單片機(jī)己成為計(jì)算機(jī)發(fā)展和應(yīng)用的一個(gè)重要方面。另一方面,單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。從前必須由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分功能,現(xiàn)在己能用單片機(jī)通過軟件方法來實(shí)現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。1.3選題的目的意義1.3.1選題的目的利用單片機(jī)AT89C21和溫度傳感器Ds18B20設(shè)計(jì)一個(gè)數(shù)字溫度計(jì),能夠測量一55一到℃之間的溫度值用LED數(shù)碼管直接顯示,誤差在±05℃以內(nèi),同時(shí)要求使用的元器件數(shù)目最少。通過本次設(shè)計(jì)能夠更加了差解數(shù)字式溫度計(jì)的工作原理和熟悉單片機(jī)的發(fā)展和應(yīng)用,鞏固所學(xué)的知識。1.3.2選題的意義單片機(jī)是隨著超大規(guī)模集成電路技術(shù)的發(fā)展而誕生的,山于它具有體積小、功能強(qiáng)、性價(jià)比高等特點(diǎn),所以廣泛應(yīng)用于電子儀表、家用電器、節(jié)能裝置、軍事裝置、機(jī)器人、工業(yè)控制等諸多領(lǐng)域,使產(chǎn)品小型化、智能化,既提高了產(chǎn)品的功能和質(zhì)量,又降低了成本,簡化了設(shè)計(jì)。本課題主要實(shí)現(xiàn)利用單片機(jī)和LED數(shù)碼管設(shè)計(jì)一個(gè)數(shù)字顯示的溫度計(jì)。選題的意義就在于通過這次設(shè)計(jì)可以將半時(shí)在課堂上學(xué)到的關(guān)于單片機(jī)的知識應(yīng)用與實(shí)踐當(dāng)中,而且更加深入的認(rèn)識到單片機(jī)在現(xiàn)代生產(chǎn)和生活中的重要性。1.4小結(jié)在拿到畢業(yè)設(shè)計(jì)任務(wù)書以后開始認(rèn)真閱讀,明確畢業(yè)設(shè)計(jì)的具體要求和應(yīng)完成的設(shè)計(jì)任務(wù)。然后在接下來的一周內(nèi)搜集、整理資料并研宄資料。了解目前國內(nèi)外關(guān)于數(shù)字溫度計(jì)的研宄現(xiàn)狀,對本研究課題有一個(gè)全面的認(rèn)識和把握。學(xué)習(xí)借鑒同類課題研宄的最新成果,形成自己的設(shè)計(jì)思路和方法。通過技術(shù)經(jīng)濟(jì)等指標(biāo)的比較進(jìn)行嚴(yán)密論證,確定了一個(gè)最佳設(shè)計(jì)方案,接下來便是硬件電路的設(shè)計(jì)、硬件制作、軟件設(shè)計(jì)和系統(tǒng)集成、系統(tǒng)的調(diào)試與運(yùn)行。其中軟件設(shè)計(jì)要求能實(shí)現(xiàn)控制系統(tǒng)的各種功能并進(jìn)行程序優(yōu)化,滿足系統(tǒng)對靈活性、適應(yīng)性、準(zhǔn)確性、穩(wěn)定性等的要求,最后是論文的纂寫。本章主要是對數(shù)字溫度計(jì)的結(jié)構(gòu)、特點(diǎn)、發(fā)展過程以及單片機(jī)的發(fā)展歷史、發(fā)展趨勢、結(jié)構(gòu)及特點(diǎn)、分類、應(yīng)用等的介紹,通過這一章的介紹我們可以從宏觀上了解到本次設(shè)計(jì)的一些背景知識,大體了解數(shù)字溫度計(jì)還有單片機(jī)的一些知識,為以后的設(shè)計(jì)做好了準(zhǔn)各:第2章數(shù)字溫度計(jì)的設(shè)計(jì)方案2.1設(shè)計(jì)方案的確業(yè)及論證功能要求:數(shù)字式溫度計(jì)測溫范圍在巧,“+12,℃,誤差在±住5℃以內(nèi),采用LED數(shù)碼管顯示,直接讀取測量值。方案論證:2.1.1溫度傳感器DS18B20的選擇方案一:傳統(tǒng)濞溫元件測溫在日常生活及工農(nóng)業(yè)生產(chǎn)中,經(jīng)常要用到溫度計(jì)的檢測及控制,傳統(tǒng)的測溫元件有熱電偶和熱電阻.而熱電偶和熱電阻測出的一般都是電壓,冉轉(zhuǎn)換成對應(yīng)的溫度,需要比較多的外部硬件支持,其缺點(diǎn)如下:.硬件電路復(fù)雜:o軟件調(diào)試復(fù)雜;.制作成本高。方案二:溫度傳感器Ds18B20測溫本設(shè)計(jì)采用美國DALLAS半導(dǎo)體公司繼DS1820之后推出的一種改進(jìn)型智能溫度傳感器DS18B20(作為檢元件,測溫范圍為.一55一+125℃,最高分辨率可達(dá)00625℃)Ds18B20可以直接讀出被測譜度值,而且采用三線制與單片機(jī)相連,減少了外部的硬件電路,具有低成本和易使用的特點(diǎn)。2.1.2單片機(jī)AT89C2051的選擇A化L公司生產(chǎn)的51系列家族的A9s51和A9C2051兩種單片機(jī)是目前最常用的單片機(jī),其中AT89S51為標(biāo)準(zhǔn)51單片機(jī),當(dāng)然其功能比早期的51單片更強(qiáng)大,支持ISP在系統(tǒng)編程技術(shù),內(nèi)置硬件看門狗。AT89C2051是精簡版的51單片機(jī),精簡掉了PO口和P2口,只有20引腳,但其內(nèi)部集成了一個(gè)很實(shí)用的模擬比較器,特別適合開發(fā)精簡的應(yīng)用系統(tǒng),畢竟很多時(shí)候我們開發(fā)簡單的產(chǎn)品時(shí)用不了全部32個(gè)]/0口,用AT89C21更合適,芯片體積更小,同時(shí)AT89C2儼1的時(shí)鐘頻率可以為零,即具備可用軟件設(shè)置的睡眠省電功能,系統(tǒng)的喚醒方式有?M、定時(shí)/計(jì)數(shù)器、串行口和外中斷口,系統(tǒng)喚醒后即進(jìn)人繼續(xù)工作狀態(tài)。省電模式中,片內(nèi)RAM將被凍結(jié),時(shí)鐘停止振蕩,所有功能停止工作,直至系統(tǒng)被硬件復(fù)位方可繼續(xù)運(yùn)行。而且A丁39C20引的工作電壓最低為2.,因此可以用來開發(fā)兩節(jié)5號電池供電的便攜式產(chǎn)品。按照系統(tǒng)設(shè)計(jì)功能的要求,確定系統(tǒng)由3個(gè)模塊組成;主控制器、測溫電路和顯示電路。數(shù)字溫度計(jì)總體電路結(jié)構(gòu)框圖如2.1圖所示DS18B20圖21數(shù)字斛度計(jì)總體結(jié)構(gòu)框圖2.2小結(jié)本章主要介紹了設(shè)計(jì)方案的確立與論證:按照本設(shè)計(jì)要實(shí)現(xiàn)的功能要求選擇所需要的器件,經(jīng)過性能,測量精確度要求,還有制作復(fù)雜簡易程度等方面的比較決定使用AT89C20,DS13B20,LED顯示器,電阻,電容等。最后確定一個(gè)數(shù)字溫度計(jì)的總體設(shè)計(jì)框圖對以后的設(shè)計(jì)工作做出一個(gè)總的指導(dǎo)。太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書第3章系統(tǒng)硬件電路的設(shè)計(jì)該設(shè)計(jì)的硬件電路由主控部分(單片機(jī)AT89s2051)、溫度采集檢測部分0S13B20)、顯示部分(四位八段數(shù)碼管)、Ds13320與單片機(jī)的接口部分以及電源部分這5個(gè)部分組成。各部分之間相互協(xié)作,構(gòu)成一個(gè)統(tǒng)一的有機(jī)整體,實(shí)現(xiàn)數(shù)字溫度計(jì)的功能。各部分的硬件電路設(shè)計(jì)如下:設(shè)計(jì)總電路圖見附錄一3.1主控制器單片機(jī)耵89C2051具有低電壓供電和小體積等的優(yōu)點(diǎn)兩個(gè)端口剛好滿足電路系統(tǒng)的設(shè)計(jì)需要,很合適便攜手持式產(chǎn)品的設(shè)計(jì)亻吏用:系統(tǒng)可用兩節(jié)電池供電:3.1以AT89C2051亻鏟纟幺、AIB9C20,1簡介;,9C2051是美函ATMEL公司生產(chǎn)的氐電壓、高性能CMOS8位單片機(jī),片內(nèi)含2kes的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128的隨機(jī)存取數(shù)據(jù)存儲器(),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強(qiáng)大。T89C2051單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場合。實(shí)物如3.1圖: 圖3. 821實(shí)物圖12一,芯片AT89C2051引腳及特點(diǎn)AT89C2051圖32芯片引腳功能1,引腳功能說明Vcc:電源電壓.地PI口:PI口是一組8位雙向1/0口,Pl.2—P1.7提供內(nèi)部上拉電阻,Pl.0和碧1內(nèi)部無上拉電阻主要是考慮它們分別是內(nèi)部精密比較器的同相輸入端CANO)和反相輸入端(A囚0,如果需要應(yīng)在外部接上拉電阻。PI口輸出緩沖器可吸收20mA電流并可直接驅(qū)動LED。當(dāng)'PI口引腳與入“”時(shí)可作輸入端,當(dāng)引腳P12一Pl.7用作輸入并被外部拉低時(shí),它們將因內(nèi)部的上拉電咀而輸出電流(玩)。再口還在Flash閃速編程及程序校驗(yàn)時(shí)接收代碼數(shù)據(jù)。P3口:P3口的P3.0一P35、P37是帶有內(nèi)部上拉電阻的7個(gè)雙向耵0口。P3.6沒有引出,它作為一個(gè)通用1/0口但不可訪問,但可作為固定輸入片內(nèi)比較器的輸出信號,P3口緩沖器可吸收20mA電流。當(dāng)P3口與入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時(shí),被外部拉低的P3口將用上拉電阻輸出電P3口還用于實(shí)現(xiàn)AT89C2051特殊的功能,如表31所示,13表3.1口引腳的特殊功能引腳功能特性P3.0》℃串行輸入0〕31TXD(串行輸出口》P3.2TO《外中斷0)PA3INTI(外中斷1)34T0(定時(shí)/計(jì)數(shù)器0外部輸入)Tl(定時(shí)/計(jì)數(shù)器外部輸入P3口還接收一些用于F嚇h閃速存儲器編程和程序校驗(yàn)的控制信號。RST:復(fù)位輸人:RST引腳一旦變成兩個(gè)機(jī)器周期以上高電平,所有的I/00都將復(fù)位到“1”(高電平)狀態(tài),當(dāng)振蕩器正在工作時(shí),持續(xù)兩個(gè)機(jī)器周期以上的高電平便可完成復(fù)位,每個(gè)機(jī)器周期為12個(gè)振蕩時(shí)鐘周期。XTALI.振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。2振蕩器特性XTALI、XTAL2為片內(nèi)振蕩器的反相放大器的輸入和輸出端,如3.3圖所示??刹捎檬⒕w或陶瓷振蕩器組成時(shí)鐘振蕩器,如需從外部輸人時(shí)鐘驅(qū)動.89C205L時(shí)鐘信號從XTAI,1輸入,XTAL2應(yīng)懸空?!场池?耵L燈乩2惹肛1 1.內(nèi)部方式 2.外部方式冬“89s205]的兩種時(shí)鐘方式外接石英晶體(或陶瓷諧振器)及電容以、覦接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路:對外接電容引、覦雖然沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低,振蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性。如果使用石英晶體。電容應(yīng)該使用30硭±10pF,還可以使用外部時(shí)鐘。這種情況下,14太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書外部時(shí)鐘脈沖接耵ALI端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2應(yīng)懸空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器對振蕩脈沖二分頻,如晶振為2厶時(shí)鐘頻率就為6鼎z。晶振的頻率可以在1z一24z內(nèi)選擇:電容取30PF左右。由于外部時(shí)鐘信號是通過一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號的,所以外部時(shí)鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時(shí)間和最大低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。3,ATI'89C2051的主要性能參數(shù)(0與MCS51產(chǎn)品指令系統(tǒng)完全兼容〔2〕2k字節(jié)可重擦寫閃速存儲器3)1000次擦寫周期4〕27V—6V的工作電壓范圍巧)全靜態(tài)操作:OHz—24MHz〔6〕兩級加密程序存儲器o)128×8字節(jié)內(nèi)部AM巧個(gè)可編程1/0凵線2個(gè)16位定時(shí)/計(jì)數(shù)器(燉)6個(gè)中斷源(11)全雙工可編程串行訌T通道氣2)可直接驅(qū)動LED的輸出端口03)內(nèi)置一個(gè)模擬比較器4)低功耗空閑和掉電模式4.AT89C2051使用注意事項(xiàng)o)空模式:在空閑模式下,保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時(shí),片內(nèi)璽和所有特殊功能寄存器的內(nèi)容保持不變??臻e模式可由任何允許的中斷請求或硬件復(fù)位終止。0和PI1在不使用外部上拉電阻的情況下應(yīng)設(shè)置為“0”,或者在使用上拉電阻的情況下設(shè)置為“1”。應(yīng)注意的是:在用硬件復(fù)位終止空閑模式時(shí),A9C2051通常從程序停止一直到內(nèi)部復(fù)位獲得控制之前的兩個(gè)機(jī)器周期處恢復(fù)程序執(zhí)行。在這種情況下片內(nèi)硬件禁止對內(nèi)部RAM的讀寫,但允許對端口的訪問,要消除硬件復(fù)位終止空閑模式對端口意外寫人的可能,原則上進(jìn)入空閑模式指令的下一條指令不應(yīng)對端口引腳或外部存儲器進(jìn)行訪掉電模式.在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié):退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能寄存器但不改變RAM中的內(nèi)容,在恢復(fù)到正常工作電平前,復(fù)位應(yīng)無效,且必須保持一定時(shí)間以使振蕩器重啟動并穩(wěn)定工作碧0和P11在不使用外部上拉電阻的情況下應(yīng)設(shè)置為“0或者在亻吏用外部上拉電阻時(shí)應(yīng)設(shè)為勹,F(xiàn)lash閃速存儲器的編程:A9C2051是在擦除狀態(tài)下(也即所有單元內(nèi)容均為H時(shí))用2k字節(jié)的片內(nèi)PEROM代碼存儲陣列進(jìn)行封裝微控匍器,其程序存儲器是可反復(fù)編程的。代碼存儲陣列一次編程一個(gè)字節(jié),一旦陣列被編程,如需重新編程一非空(空為:FFTI)字節(jié),必須對整個(gè)存儲器陣列進(jìn)行電擦除3.1.2DS18B20介紹,Ds18B20簡介Dallas的最新單線數(shù)字溫度傳感器DSI20簡稱新的“一線器件”體積更小、適用電壓更寬、更經(jīng)濟(jì)。Dallas半導(dǎo)體公司的數(shù)字化溫度傳感器D引g20是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),亻吏用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。DSI9B20、DS1822一線總線”數(shù)字化溫度傳感器同DS1820一樣,DS18B20也支持“一線總線”接嚇測量溫度范圍為一55℃艸125℃,在.10·+85℃范圍內(nèi)精度為.5℃。D引922的精度較差為2℃?,F(xiàn)場溫度直接以“一線總線,,的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性:適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)各或過穆控制,測溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V、55V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。而且新一代產(chǎn)品史便宜,體積更小。其實(shí)物圖如34圖所示.圖圖3.4DSI20的管腳排列、Ds18B20引腳及特點(diǎn)1.引腳功能說明GND是地址信號DQ是數(shù)據(jù)輸入/輸出引腳,開單總線接口引腳,當(dāng)被用在寄生電源下,也可以向器件提供電源為外接供電電源輸人端(在寄生電源接線方式時(shí)接地)2.DS飛8B20功能特點(diǎn)(1)采用單總線技術(shù),與單片機(jī)通信只需要一根線,在一根線上可以掛接多個(gè)Ds18B20。每只Ds18B20具有一個(gè)獨(dú)有的,不可修改的64位序列號,根據(jù)序列號訪問地應(yīng)的器件。低壓供電,電源范圍從3.0一5·5V,可以本地供電,也可以直接從數(shù)據(jù)線上竊取電源(寄生電源方式)。測譜范圍為巧5℃、+125℃,在一10℃一+850范圍內(nèi)誤差為刪5℃:巧)可編輯數(shù)據(jù)為9一12位,轉(zhuǎn)換12位溫度時(shí)間為750ms(最大)用戶可自設(shè)定報(bào)警上下限溫度報(bào)警搜索命令可識別和尋址超過程序限定溫度(溫度報(bào)警條件)的器件。(8)DS18B20的分辯率由用戶通過EEPROM設(shè)置為9一12位Ds18B20可將檢測到溫度值直接轉(zhuǎn)化為數(shù)字量,并通過串行通信的方式與主控制器進(jìn)行數(shù)據(jù)通信。負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會因?yàn)榘l(fā)熱而燒毀,只是不能正常、Ds18B20的內(nèi)部結(jié)構(gòu)1.DS18B20內(nèi)部結(jié)構(gòu)及功能Ds18B20采用3腳PR一35對裝或8腳sorc封裝其內(nèi)部結(jié)構(gòu)虹3巧圖所示,主要包括:寄生電源,溫度傳感器,64位ROM和單總線接口,存放中間數(shù)據(jù)的高速暫存器又AM,用于存儲用戶設(shè)定溫度上下限值的TH和觸發(fā)器,存儲與控制邏輯,8位循環(huán)冗余校驗(yàn)碼(CRC)發(fā)生器等7部分。VDDVDD圖3.5DSI20內(nèi)部結(jié)構(gòu)2,64位激光ROM每一個(gè)DS18B20包括一個(gè)唯一個(gè)64位長的ROM編碼“64位ROM的位結(jié)構(gòu)虹下圖所示:開始的8位是單線產(chǎn)品系列編碼(D引820編碼是10h);接著的48位是每個(gè)器件唯一的系列號,最后的8位是開始56位CRC檢驗(yàn)碼。64位ROM和ROM操作控的部分允許DS18B20作為一個(gè)單線器件工作并遵循“單線總線系統(tǒng)”一節(jié)中所詳述的單線協(xié)議。直到ROM操作協(xié)議被滿足,Ds18B20控制部分的功能是不可訪問的。單線總線主機(jī)必須首先操作五種ROM操作命令之一1ReadROM(讀ROM),2MatchROM〔匹配ROM3、searchROM〔搜索ROM),4SklPROM〔跳過ROM),或,、Alarmsearch(告警搜索)。在成功地執(zhí)行了ROM操作序列之后,Ds18B20特定的功能便可訪問,然后總線上主機(jī)可提供六個(gè)存貯器和控制功能命令之一太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書8位檢驗(yàn)CRC位序列號8位工廠代碼(10H) MSE LSEMSE LSEMSB I_nSB64位R覦結(jié)構(gòu)框圖3.運(yùn)用一報(bào)警信號在DS18B20完成溫度變換之后,溫度值與貯存在和旺內(nèi)的觸發(fā)值相比較。因?yàn)檫@些寄存器僅僅是8位,所以05℃位在比較時(shí)被忽略?;蛲淖罡弑容^位直接對應(yīng)于16位溫度寄存器的符號位:虹果溫度測量的結(jié)果高于1丑或低于旺,那么器件內(nèi)告警標(biāo)志將置位。每次溫度測量更新此標(biāo)志。只要告警標(biāo)志置位,Ds18B20將對告警搜索命令作出響應(yīng)。這允許并聯(lián)連接許多Ds18B20,同時(shí)進(jìn)行溫度量。如果某處溫度超過極限,那么可以識別出正在告警的器件并立即將其讀出而不必讀出非眚警的器件。4,CRC產(chǎn)生D引8B20有一存貯在64位ROM的最高有效字節(jié)內(nèi)的8位CRCO總線上的主機(jī)可以根據(jù)64位ROM的前56位計(jì)算機(jī)CRC的值并把它與存貯在D引8B20內(nèi)的值進(jìn)行比較以決定ROM的數(shù)據(jù)是否己被主機(jī)正確地接收。CRC的等效多項(xiàng)式函數(shù)為:CRC=X%-X%-X+D引8B20也利用與上述相同的多項(xiàng)式函數(shù)產(chǎn)生一個(gè)8位CRC值并把此值提供給總線的主機(jī)以確認(rèn)數(shù)據(jù)字節(jié)的傳送。在使用CRC來確認(rèn)數(shù)據(jù)傳送的每一種情況中,總線主機(jī)心須使用上面給出的多項(xiàng)式函數(shù)計(jì)算CRC的值并把計(jì)算所得的值或者與存貯在Ds18B20的64位ROM部分中的8位CRC值(ROM讀數(shù)),或者與DS18B20中計(jì)算得到的8位CRC值(在讀暫存存貯器中時(shí),它作為第九個(gè)字節(jié)被讀出),進(jìn)行比較:CRC值的比較和是否繼續(xù)操作都山總線主機(jī)來決定.當(dāng)存貯在DS18B20內(nèi)或由DS18B20計(jì)算得到的CRC值與總線主機(jī)產(chǎn)生的值不相符合時(shí),在DS18B20內(nèi)沒有電路來阻止命令序列的繼續(xù)執(zhí)行。5.存貯器D引8B20的存貯器由一個(gè)高速暫存(便箋式)PAM和一個(gè)非易失性、電可擦除E2PROM組成,后者存貯高溫度和低溫度觸發(fā)器1丑和旺。暫存一存貯器有助于在單線通信時(shí)確保數(shù)據(jù)的完整性。數(shù)據(jù)首先寫入暫存存貯器,在那里它可以被讀回。當(dāng)數(shù)據(jù)被校驗(yàn)之后,復(fù)制暫存存貯器的命令把數(shù)據(jù)傳送到非易失性E2PROM?!承贿^程確保了史改,存貯器時(shí)數(shù)據(jù)的完整性。高速暫存RAM的結(jié)構(gòu)為9字節(jié)的存儲器,結(jié)構(gòu)虹36圖所示。前2字節(jié)包含測得的溫度信息。第3和第4字節(jié)是TH和旺的拷貝,是易失的,每次上電復(fù)位時(shí)背刷新.第5字節(jié)為配置寄存器,其內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率,Ds18B20工作時(shí)按此寄存器中的分辨率將溫度轉(zhuǎn)換為相應(yīng)精度的數(shù)值。該字節(jié)個(gè)位的定義如3.7圖所示,其就低5位一直為1`是測試模式位,用于設(shè)置DS18B20在工作模式還是在濞試模式,在Ds18E20出0時(shí),該位唄設(shè)置為0,用戶不要去改動;RI和RO決定溫度轉(zhuǎn)換的精度位數(shù),即用來設(shè)置分辨率,其定義方法見表3.2。表3.2DS18B20分辨率的定義和規(guī)定RO分辨率砬溫度最人轉(zhuǎn)換時(shí)間/潙009937501010375112由表32可見,Ds18E20溫度轉(zhuǎn)換的時(shí)間較長,而且設(shè)定的分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間就越長。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。字節(jié)2字節(jié)3字節(jié)4字節(jié)5字節(jié)5字節(jié)7字節(jié)8字節(jié)9字節(jié)溫度溫度MSBTH用戶字節(jié)1用戶字節(jié)2配置寄存器保保保用戶字節(jié)1TL用戶字節(jié)一,ERO産圖36高速暫存R結(jié)構(gòu)圖高速暫存的第6,7,8字節(jié)保留未用,表現(xiàn)為全邏輯1,第9字節(jié)是前面所有8字節(jié)的CRC碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。11111圖37配置寄存器位定義當(dāng)Ds18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴(kuò)張的二進(jìn)制補(bǔ)碼形式存儲在暫存RAM的第1、2字節(jié)中。單片機(jī)可以通過單線接凵讀出該數(shù)據(jù)。讀數(shù)據(jù)是,低位在先,高位在后,數(shù)據(jù)格式以住06250LsB形式表示。溫度值格式如圖38所示:322212022222低字節(jié)SSSSS22高字節(jié)圖3溫度數(shù)據(jù)值格式圖中,s表示符號位。當(dāng)s=0時(shí),表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)s=l時(shí),表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)匍值:表33是部分譜度值對應(yīng)的二進(jìn)制譜度表示數(shù)據(jù):2表3.3DS18B20溫度與表示值對應(yīng)表溫度二進(jìn)制表示十六進(jìn)制表示溫度二進(jìn)制表示十六進(jìn)制表示十1250000011]01000007DOH000傭00000m00傭00000彐十85000001m010100000550H一0511111111111000FFF8H十250525000000011001m010191H一012511111001011110FF5EH+10125C0000UU010]0001000盍2H一25£62511]111100]10111FE6FH+0C)(莢其躚躚躚1〔〕SH巧5111111(1〔莧莢其〕FC90HDs18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH.旺字節(jié)內(nèi)容作比較,若或T<旺,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多個(gè)Ds18E20同時(shí)測得溫度并進(jìn)行報(bào)警搜索。在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)根據(jù)ROM的前56位來計(jì)算CRC值,并與存入DSB20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。些、DS18B20的濞溫原理如圖39所示,圖中低溫度系數(shù)振蕩器的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計(jì)數(shù)器1;高溫度系數(shù)振蕩器隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計(jì)數(shù)器2的脈沖輸入。2020測溫原理圖圖圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),Ds18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將巧5℃所對應(yīng)的一個(gè)基數(shù)分別置人減法計(jì)數(shù)器1和溫度寄存器中,減法計(jì)數(shù)器和溫度寄存器被預(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ù)器的預(yù)置值將重新被裝入,并重新開始對低溫度系數(shù)振蕩器產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù)。如此循環(huán),直到減法計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度計(jì)數(shù)器值的累加,此時(shí)溫度寄存器中的數(shù)值就是所溫度值。圖3.9中的斜率累加器用于補(bǔ)償和修正溫過程的非線形性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,值到溫度寄存器值達(dá)到被測溫度值。另外,Ds18B20單線通信功能是分時(shí)完成的,有嚴(yán)格的時(shí)隙概念,因此讀/寫時(shí)序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化Ds18B20(發(fā)復(fù)位脈沖)乛發(fā)ROM功能命令一發(fā)存儲器操作命令一處理數(shù)據(jù)。3.2Ds18B20與單片機(jī)接口電路的設(shè)計(jì)DS18B20可以采用兩種方式供電:一種是采用電源工電方式,此時(shí)DS18B20的第1引腳接地,第2引腳作為信號線,第3引腳接電源:另外一種是寄生電源供電方式,如圖310所示。單片機(jī)端口接單線總線,為保讠正在有效地Ds18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來完成對總線的上位?!睳D圖3.10DSI20采用寄生電源的電路冬當(dāng)Ds18B20處于寫存儲器操作和溫度A/D轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上23位,上拉開啟時(shí)間最長為500ms。采用寄生電源供電方式時(shí),VDD和GND端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。3.3LED顯示電路的設(shè)計(jì)3,3.1顯示電路百百位小數(shù)位圖3彐1顯示電路接口圖根據(jù)設(shè)計(jì)要求,顯示電路需要用4位LED數(shù)碼管來顯示溫度值。利用單片機(jī)的1/0口驅(qū)動LED數(shù)碼管的亮滅。本設(shè)計(jì)的數(shù)值顯示選用4個(gè)共陽八段LED數(shù)碼管.3.3.2LED數(shù)碼管介紹LED數(shù)碼管簡介LED數(shù)碼管是目前使用相當(dāng)普遍的一種顯示器件,它是將若干個(gè)LED組合成數(shù)字(或符號)的形狀,再封裝在一起構(gòu)成的。因?yàn)椤?”是十進(jìn)制數(shù)中筆畫最多的一個(gè)數(shù)字,所以要用七只LED管排列成“8”的形狀,在按要求使數(shù)碼管的某些筆段(即筆畫)發(fā)光,就可以顯示0、9這十個(gè)數(shù)字,如圖312所示。下面介紹LED數(shù)碼管的結(jié)構(gòu)原理以及性能特點(diǎn),以更好的掌握LED數(shù)碼管的使用方法。24LED數(shù)碼管是由8個(gè)發(fā)光二極管組成,其中7個(gè)按字型排列,.另一個(gè)發(fā)光二極管為圓點(diǎn)形狀,位于右下角,常用于顯示小數(shù)點(diǎn)。八段數(shù)碼顯示管有兩種, 種是共陽數(shù)碼管,其內(nèi)部是山八個(gè)陽極相連接的發(fā)光二極管組成“另一種是共陰數(shù)碼管,其內(nèi)部是由八個(gè)陰極相連接的發(fā)光二極管組成。二者原理不同但功能相同。當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)的一段筆畫或點(diǎn)就發(fā)亮,從而形成不同的發(fā)光字符:1012土gGNDbGNDc 符號和引腳 共陰極 共陽極圖3.2D數(shù)螞管引腳和共陰/陽極圖顯示字型與字段碼關(guān)系如下表34所示,表3.4顯示字型與字段碼關(guān)系表字型共陽極段碼共陰極段碼字型共陽極段碼共陰極段碼COHOOH06H88H77H5BH83H7CHC6H39H99k66H92H6DH85H79H82H7DH84H71H07H空白其八段分別命名為dpgfd。b例如要顯示貝刂dpgfed。b彐分別為:11m0000B;要顯示"A,則dpgfedcba分別為:00010001B25太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書(共陽極)。若要顯示多個(gè)數(shù)字,只要讓若干個(gè)數(shù)碼管的位碼循環(huán)為低電平就可以了。表3.5段碼位與顯示位對應(yīng)表段碼位D1)6DED*DDIDO顯示位fdbLED數(shù)碼管的特性設(shè)計(jì)中采用的是八段LED數(shù)碼管來顯示溫度值。它的主要特性有(1)工作電壓1.S一一般為15一2V。工作電流5一1醞裔,高亮度管可在低電壓和小電流過mA右)條件下工作:創(chuàng)單色性好,亮度高,高頻特性良好,發(fā)光響應(yīng)時(shí)間非常短,通常小于0lus;0能與的00B系列OS電路或74/54系列TTL電路中的七段譯碼驅(qū)動器兼容。產(chǎn)品分為共陽,共陰兩大類型,適應(yīng)性強(qiáng);(4)體積小、重量輕、抗沖擊性好。工作緯度范圍為30一80度,使用壽命可長達(dá)5百丿j小時(shí)以上。LED數(shù)碼管小僅品種繁多,而且型號各異。根據(jù)器件顯示的位數(shù)的多少,可分為一位、雙位或多位LED顯示器.通常稱一位顯示器為數(shù)碼管,雙位以上的稱為顯示屏或顯示器。雙位顯示器是將兩只一位數(shù)碼管封裝在一起,因而結(jié)構(gòu)緊湊、且成本比較低。每一只數(shù)碼管可以單獨(dú)使用,互相不牽連。兩位以上的顯示器可以是將幾只數(shù)碼管進(jìn)行簡單組合封裝,成為一個(gè)整體,每只數(shù)碼管也可以單獨(dú)的使用,但是這種結(jié)構(gòu)引出的引腳比較多。為了減少引腳數(shù)量從而方便使用及降低功耗,大多數(shù)多位顯示器一般都采用動態(tài)掃描顯示方式,即將各位數(shù)碼管的同名筆段連接在一起后作為一個(gè)電極引出,而每一位的公共端加位掃描信號,使它們按一定順序輪流工作,只是掃描信號頻率足夠高(一般應(yīng)該大于50H0,在觀察時(shí)就不會出現(xiàn)閃爍的現(xiàn)象。從字型結(jié)構(gòu)上分,LED顯示器還可以分為顯示0、9數(shù)字的數(shù)碼管和符號管兩種。常見的符號管如圖所示。圖313(可以顯示“+,,,極性:圖3彐3(b)回.顯刁'+”及小數(shù)點(diǎn);圖3.13〕功能更多,除可以顯示“斗,一”四則運(yùn)算符號外,還可以顯示小數(shù)點(diǎn)及A、2共26個(gè)英文字2母,常用作英文提示或者計(jì)量單位符號顯示。除此之外,還有一些特形符號管,可以顯示專用的符號,如觴、雇、V.kQ等等。圖&13由于LED數(shù)碼管是半導(dǎo).體材料制成的,可等效于多只具有發(fā)光功能的PN結(jié)。因此可以用濞量其正、反向電阻(用R><10kQ擋)的方泫檢查極性及好壞。當(dāng)加于LED管兩端正向電壓低于開啟電壓時(shí),正向電流極小,故LED不發(fā)光;當(dāng)所加正向電壓達(dá)到或者超過開啟電壓時(shí),正向電流急劇增加,于是LED數(shù)碼管導(dǎo)通發(fā)光:LED數(shù)碼管的正向壓降和正向電流大小與管芯材料有關(guān),一段為15一2斜。工作電流通常為5、10d,這樣即可保正筆段發(fā)光亮度適中,又不致?lián)p壞器件:LED數(shù)碼顯示方式一般的顯示電路山多個(gè)數(shù)碼管構(gòu)成。個(gè)數(shù)碼管可以構(gòu)成羅位LED顯示器,共有根位選線和請根段選線。依據(jù)位選線和段選線的連接方式的不同,MCS一51系列單片機(jī)對L顯示管的顯示主要有靜態(tài)顯示和動態(tài)顯示兩種方式,下面分別給予介紹。為方便起見,下面主要討論3位共陰八段D數(shù)碼顯示管,其他類形的顯示管與其類似。1.靜態(tài)顯示方式靜態(tài)顯示是各個(gè)LED管上能穩(wěn)定地同時(shí)顯示各自的字符并維持不變,直到顯示下一個(gè)字符為止:采用這種顯示方式時(shí),位選線同時(shí)選通,每位的段選線分別與一個(gè)8位鎖,存器輸出相連。一種常用的方法是用74巧373來作為鎖存器。利用靜態(tài)顯示穩(wěn)定的優(yōu)點(diǎn),使用M的一51單片機(jī)的串行口輸出,外接串并轉(zhuǎn)換芯片LS164作為LED顯示器的靜態(tài)顯示接口,把MCS一51的惹D作為數(shù)據(jù)輸出線,TID作為移位時(shí)鐘脈沖,如圖317所示(圖中省略了外接電阻)。7軋S4是L單向8位移位寄存器,可以實(shí)現(xiàn)串行輸入,并行輸出。它的巛B(第1,2腳〕為串行數(shù)據(jù)輸入端,兩個(gè)引腳按照邏輯與運(yùn)算規(guī)律輸入信號,若共用一個(gè)信號時(shí)可以連到一起,共同連接到RID端。就K伍腳)為時(shí)鐘信號輸入端,可以連接到串行口的TXD端,每個(gè)時(shí)鐘的上升沿過來,移位計(jì)數(shù)器就移一位,8個(gè)時(shí)鐘脈沖過后,3位二進(jìn)制數(shù)全部移入74Ls164中:/C蕻為清零復(fù)位端。為低電半時(shí)所有輸出端口復(fù)零,為使其不起作用而讓數(shù)據(jù)正常傳輸,加一個(gè)高電平。多個(gè)74Ls164首尾相串聯(lián)。而時(shí)鐘信號接在一起,這樣當(dāng)輸入3個(gè)脈沖時(shí),從單片機(jī)D埽輸入的數(shù)據(jù)就進(jìn)入了第一片74LS164中。下一次日個(gè)脈沖到來后,這個(gè)數(shù)據(jù)就進(jìn)入了第二片74LS164,而新的數(shù)據(jù)就進(jìn)入了第一片.的43·注意在這種顯示狀態(tài)下,串行口的輸出是從低位到高位一位一位地向74Ls164中送數(shù),而74嚇1斜卻將新送進(jìn)來的數(shù)放到最低位,而原來低位存在的數(shù)移到高位。比如串行口要發(fā)送硅唟鬣先發(fā)送47軋S4將其放到最低位,當(dāng)發(fā)送b時(shí)。a向高位移一位,為放到最低位,同理直到發(fā)送完畢,最后發(fā)過來的數(shù)就變成abcdefo這樣,本來是由低位到高位排列的數(shù)就變成了由高位到低位排列的數(shù)。如果用前面顯示方法中用的數(shù)字編碼。在數(shù)碼管上將顯示亂碼:為了解決這個(gè)問題,顯示的編碼要做相應(yīng)的改變,將所有的編碼轉(zhuǎn)換成二進(jìn)制數(shù)后從左向右讀,如原00110101需要讀做10101100。因此,從0一9這十個(gè)數(shù)的編碼就變成了下CH,0H,ODAH,OF2H,66H,B6玨OBEH,OEOH,OFEH,6K。這種顯示方法克服了占用過多的端口線資源的缺點(diǎn),可以不受顯示位數(shù)的限制,而且程序設(shè)計(jì)簡單,比較實(shí)用。其典型的電路圖如圖3凵所示。1℃二圖314典型靜態(tài)顯示方式電路圖這種顯示方式有較高的亮度和簡單的軟件編程,然而卻占用了太多的端口線資源,一個(gè)3位靜態(tài)D顯示器需要24個(gè)I/0口,如果顯示位數(shù)太多,則用這種顯示方式無氵去實(shí)現(xiàn)。2.動態(tài)方式動態(tài)顯示是指各個(gè)LED數(shù)碼顯示管輪流地一遍一遍顯示各自的字符,利用人眼視覺的暫留現(xiàn)象感覺所有的顯示管均被點(diǎn)亮,獲得穩(wěn)定的視覺效果,從而可以實(shí)現(xiàn)字符的顯示功能。在這種方式下,將所有的段選線并在一起,位選線則輪流選通,形成分時(shí)多路復(fù)用。由于各位的段選線并聯(lián),所以段選碼的輸出對各位來說都是相同的。因此在同一時(shí)刻,若各位的位選線都處于選通狀態(tài),則在所有顯示管上將顯示相同的字符。如果需要顯示與各位對應(yīng)的字符則必須采用掃描顯示方式,即在某一時(shí)刻只能讓某一位的位選線處于選通狀態(tài),而其他各位的位選線處于截止?fàn)顟B(tài),同時(shí)段選線上輸出對應(yīng)顯示位的字符字形碼。LED數(shù)碼顯示管輪流選通,由于人眼的視覺暫留現(xiàn)象,只要每位顯示間隔足夠短,就可以得到多位同時(shí)亮的效果。由于MCS一51單片機(jī)的輸出功率比較小,所以圖315中用三極管來驅(qū)動LED的位選線。動態(tài)顯示方式提高了系統(tǒng)的可靠性:但在顯示方面仍存在的主要缺點(diǎn)是顯示掃描的膶新頻率。只有當(dāng)掃描頻率足夠高時(shí),對人眼來說才不會覺得閃爍。然而提高掃描頻率會占據(jù)太多的C資源,若單片機(jī)還要同時(shí)處理一些其他任務(wù),如何合理安排就成為突出的可題。百百位十位小數(shù)位P30圖引巧動態(tài)顯示電路o)LED數(shù)碼顯示器的驅(qū)動問題。LED數(shù)碼顯示器的驅(qū)動能力高低是直接影響29太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書33太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書顯示器亮度的又一個(gè)重要因素。驅(qū)動能力越強(qiáng),則通過發(fā)光二極管的電流越大: 度越高。通常一定規(guī)格的發(fā)光二極管有相應(yīng)的額定電流的要求,這就決定了段驅(qū)動器的驅(qū)動能力,同時(shí)位啟動電流則應(yīng)該是各段驅(qū)動電流之和:對于同樣的驅(qū)動器來說IN位動態(tài)顯示的亮度不到靜態(tài)顯示亮度的N&4小結(jié)本章主要介紹了設(shè)計(jì)中用到的有關(guān)硬件器件以及硬件電路的設(shè)計(jì),使我們對本設(shè)計(jì)中所用器件的特性及功能有了更進(jìn)一步的了解。該設(shè)計(jì)的硬件電路由主控部分(單片機(jī)盍T89s2051〕,溫度信號采集器件(Ds18B20)、顯示部分(四位八段LED數(shù)碼管)這幾個(gè)部分組成。各部分之間相互協(xié)作,構(gòu)成一個(gè)統(tǒng)一的有機(jī)整體,實(shí)現(xiàn)數(shù)字溫度計(jì)的功能。通過這一章的介紹我們了解了硬件電路中各部分元件的性能以及它們相互是怎么連接的。在一個(gè)設(shè)計(jì)中硬件雖是基礎(chǔ)但也是比不可少的一部分,沒有硬件的設(shè)計(jì)軟件的設(shè)計(jì)便無從下手。
第4章系統(tǒng)程序的設(shè)計(jì)40程序設(shè)計(jì)內(nèi)容系統(tǒng)程序主要包括主程序、讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序和顯示數(shù)據(jù)刷新子程序等。4.1.1主程序主程序主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示,讀出并處理Ds18E20的測量溫度值。溫度測量每Is進(jìn)行一次。主程序流程圖如圖4.1所示圖41主程序流程圖4.1.2讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié)。在讀出時(shí)須進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行譜度數(shù)據(jù)的改寫。讀出溫度子程序流程圖如圖42所示圖4.2讀出溫度子程序流程圖4.1.3溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時(shí),轉(zhuǎn)換時(shí)間約為750mso在本程序設(shè)計(jì)中,采用Is顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如圖43所示。圖4溫度轉(zhuǎn)換命令子程序流程圖324.1.4計(jì)算溫度子程序計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定。計(jì)算溫度子程序流程圖如圖4所示。圖44計(jì)算溫度子程序流程圖4,1,5顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對顯示緩沖器的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高數(shù)據(jù)顯示位為0時(shí),將符號顯示位移人下一位:顯示數(shù)據(jù)刷新子程序流程圖如圖45所示3太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書圖上5顯示數(shù)據(jù)刷新子程序流程圖4.1.6溫度數(shù)據(jù)的計(jì)算處理方法從DS13B20讀取出的一進(jìn)制值必須轉(zhuǎn)換成十進(jìn)制值,才能用于字符的顯示。DSB20的轉(zhuǎn)換精度為9一12位,為了提高精度采用12位。在采用12位轉(zhuǎn)換精度時(shí),溫度寄存器里的值是以00625為步進(jìn)的,即溫度值為寄存器里的二進(jìn)匍值乘以0毹25,就是實(shí)際的十進(jìn)制溫度值。通過觀察表41可以發(fā)現(xiàn),一個(gè)十進(jìn)制與二進(jìn)制間有很明顯的關(guān)系,就是把一進(jìn)制的高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一字節(jié),這個(gè)字節(jié)的二進(jìn)制化為十進(jìn)制后,就是溫度值的百、十、個(gè)位字節(jié),所以二進(jìn)制值范圍是0一,轉(zhuǎn)換成十進(jìn)制小數(shù)就是025的倍數(shù)()—5倍)。這樣需要4位的數(shù)碼管來表示小數(shù)部分。實(shí)際應(yīng)用不必這么告的精度,采用1位數(shù)碼管來顯示小數(shù),可以精確到0彐'0表1二進(jìn)制與十進(jìn)制的近似對應(yīng)關(guān)系表小數(shù)部分二進(jìn)制值0289B2DEF十進(jìn)制值002334556678894.2匯編源程序4.2.1Ds18B20的各條ROM操作命令一旦總線主機(jī)檢測到從屬器件的存在,它便可以發(fā)出器件ROM操作命令之。所有的ROM操作命令均為8位長。這些命令列表如下(1)ReadROM(讀ROM)卩3h]此命令允許總線主機(jī)讀Ds18B20的8位產(chǎn)品系列編碼,唯一的斕位序列號,以及8位的CRC:此命令只能在總線上僅有一個(gè)Ds18B20的情況下可以使用。如果總線上存在多于一個(gè)的從屬器件,那么當(dāng)所有從片企圖同時(shí)發(fā)送時(shí)將發(fā)生數(shù)據(jù)沖突的現(xiàn)象(漏極開路會產(chǎn)生“線與”的結(jié)果)(2)MatchROM(“符合"ROM)[55h]這是一條匹配ROM命令。后繼以64位的ROM數(shù)據(jù)序列,允許總線主機(jī)對多點(diǎn)總線上特定的D引8B20尋娟飛只有與64位ROM序列嚴(yán)格相符的Ds18B20才能對后繼的存貯器操作命令作出響應(yīng)。所有與64位ROM序列不符的從片將等待復(fù)位脈沖:此命令在總線上有單個(gè)或多個(gè)器件的情況下均可吏用。(3)SkipROM(“跳過"ROM)[OCChl在單點(diǎn)總線系統(tǒng)中此命令通過允許總線主機(jī)不提供64位ROM編碼而訪問存儲器操作來節(jié)省時(shí)間。如果在總線上存在多于一個(gè)的從屬器件而且在SkipROM命令之后發(fā)出讀命令,那么由于多個(gè)從片同時(shí)發(fā)送數(shù)據(jù),會在總線上發(fā)生數(shù)據(jù)沖突(漏極開路下拉會產(chǎn)生'線與”的效果)SearchROM(搜索ROM)[0刪h]當(dāng)系統(tǒng)開始工作時(shí),總線主機(jī)可能不知道單線總線上的器件個(gè)數(shù)或者不知道其6435位ROM編碼。搜索ROM命令允許總線主機(jī)使用一種“消去”(elimination理來識別總線上所有從片的64位ROM編碼。AlarmSearch(告警搜索)[OEChl此命令的流程與搜索ROM命令相同。但是,僅在最近一次溫度測量出現(xiàn)告警的情況下,DS18B20才對此命令作出咱應(yīng)。告警的條件定義為譜度高于TH或低于旺.只要DS18B20一上電,告警條件就保持在設(shè)置狀態(tài),直到另一次溫度測量顯示出非眚警值,或者改變.或旺的設(shè)置使得濞量值再一次位于允許的范圍之內(nèi)。貯存在EEPROM內(nèi)的觸發(fā)器值用于告警。ReadScratchpad(讀暫存存儲器)[OBEh]此命令讀暫存存儲器的內(nèi)容。讀開始于字節(jié)伍并繼續(xù)經(jīng)過暫存存儲器,直至第九個(gè)字節(jié)(字節(jié)8,CRC)被讀出為止。如果不是所有位置均可讀,那么主機(jī)可以在任何時(shí)候發(fā)出一復(fù)位以中止讀操作:WriteScratchpad(寫暫存存儲器)104Eh]此命令向DS18B20的暫存器和旺中寫入數(shù)據(jù)??梢栽谌魏螘r(shí)刻發(fā)出復(fù)位命令來終止寫人。copyScratchpad〔復(fù)制暫存存儲器)[48h]此命令把暫存存儲器復(fù)制人DS18B20的E2存儲器,把溫度觸發(fā)器字節(jié)存貯人非易失性存儲器,如果總線主機(jī)在此命令之后發(fā)出讀時(shí)間片,那么只要DS18B20正忙于把暫存存儲器制入E2,它就會在總線上輸出“0”:當(dāng)復(fù)制過程完成之后,它將反回'1"0如果由寄生電源供電,總線主機(jī)在發(fā)出此命令之后必須能立即強(qiáng)制上拉至少10mSConvertT溫度變換[44h]此命令開始溫度變換。不需要另外的數(shù)據(jù),溫度變換將被執(zhí)行,接著D引8B20便保持在空閑狀態(tài)。虹果總線主機(jī)在此命令之后發(fā)出讀時(shí)間片,那么只要D引8B20正忙于進(jìn)行溫度變換它將在總線上輸出“0,當(dāng)溫度變換完成時(shí)它便返回。如果山寄生電源供電,那么總線主機(jī)在發(fā)出此命令之后必須立即強(qiáng)制上拉至少2秒。 (10)RecallE2 (重新調(diào)出)[0B8h]此命令把貯存在E2中溫度觸發(fā)器的值重新調(diào)至?xí)捍娲鎯ζ?,這種重新調(diào)出的操作在對Ds18B20上電時(shí)也自動發(fā)生,因此只要器件一接電,暫存存儲器內(nèi)就有有效的數(shù)據(jù)可供使用。在此命令發(fā)出之后,對于所發(fā)出的第一個(gè)讀數(shù)據(jù)時(shí)司片,器件都將輸出其忙的標(biāo)志“0”一忙,“1”一準(zhǔn)備就緒。(11)ReadPowersupply(讀電源)10B4hI對于在此命令送至D引8B20之后所發(fā)出的第一讀出數(shù)據(jù)的時(shí)間片,器件都會給出其電方式的信號.0一寄生電源供電,“1”一外部電源供電。4.2.2綏寫程序設(shè)計(jì)源程序4.3小結(jié)程序的設(shè)計(jì)是本設(shè)計(jì)中的靈魂,如果沒有程序的設(shè)計(jì),硬件上就無法實(shí)現(xiàn)所要求的功能:這一章介紹了程序的設(shè)計(jì)構(gòu)思及大體流程。一個(gè)好的程序應(yīng)可讀性強(qiáng),便于調(diào)試和移植,具有較強(qiáng)的容錯(cuò)功能,運(yùn)行可靠,抗干擾能力強(qiáng)。這要求我們在實(shí)踐中不斷的積累和總結(jié)經(jīng)驗(yàn)。我們在編程的初期應(yīng)注意到以下幾個(gè)問題:結(jié)構(gòu)化程序設(shè)計(jì)。對比較復(fù)雜的程序可以將其劃分為若干個(gè)功能相對獨(dú)立的模塊,大模塊本身又可以由若干個(gè)小模塊組成??紤]程序的容錯(cuò)功能。無論邏輯運(yùn)算還是數(shù)值運(yùn)算都存在出錯(cuò)的可能性:故在編程中應(yīng)對容錯(cuò)給予注意和考慮。算氵去的可靠性和合理性。同一個(gè)問題可以有不同的算法,其效率和精度有時(shí)也不大相同,所以在編程中應(yīng)特別注意。對實(shí)時(shí)性高的軟件還應(yīng)注意程序的執(zhí)行速度。第5章調(diào)試及性能分析系統(tǒng)的調(diào)試以穆序調(diào)試為主。硬件調(diào)試比較簡單,首先檢查電路的焊接是否正確,然后可以用萬用表泖試或通電檢測。軟件調(diào)試可以先編寫顯示程序并進(jìn)行硬件的正確性檢驗(yàn),然后分別進(jìn)行主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序、計(jì)算溫度子程序和顯示數(shù)據(jù)膶新子程序等的編程及調(diào)試。山于DS18B20與單片機(jī)采用串行數(shù)據(jù)傳送,因此,對Ds18B20進(jìn)行讀寫編程時(shí)必須嚴(yán)格地保證讀寫時(shí)序;否則無法讀取測量結(jié)果。本程序采用單片機(jī)匯編或c語言編寫,用Wave3.2或KeliC51編譯器編程調(diào)試:軟件調(diào)試到能顯示溫度值,而且在有溫度變化時(shí)(如用手去接觸)顯示溫度能改變,就基本完成。5.1keilc51集成開發(fā)環(huán)境簡介5.1.1Keiic51集成開發(fā)環(huán)境介紹Ke1軟件公司的日051單片機(jī)軟件開發(fā)工具可用于眾多的引派生器件以實(shí)現(xiàn)嵌入式應(yīng)用開發(fā)。工具清單如下01優(yōu)化C編譯器鬲1宏匯編器引工具連接器目標(biāo)文件轉(zhuǎn)換器庫管理器巫nd“s版dS“以源程序級調(diào)試器/模擬器0Windows版Visn集成開發(fā)環(huán)境5.1.2Keiic51的開發(fā)過程使用Kell的開發(fā)工具其項(xiàng)目開發(fā)周期和任何軟件開發(fā)項(xiàng)目都大致一樣。1.創(chuàng)建C或正編語言的源程序。2.編譯或匯編源文件:3糾正源文件中的錯(cuò)誤。4從編譯器和匯編器連接目標(biāo)文件。5測試連接的應(yīng)用程序。下面具體介紹一下用這i。n2開發(fā)項(xiàng)目的過程:巳Yiel,?a巳ro忙麗」同hPer_ipheralsToolsTarget5刂ur匚Group1Text3*0000BuildFindinF5xFr.rxFr.rHaln.nrass的14「:33點(diǎn)擊菜單file-hew,這時(shí)在“這n2的右邊出現(xiàn)一個(gè)編輯窗口。在新的文本編輯窗口中輸入原穆序,可以是輸入c語言程序也可以輸入?yún)R編語言程序,如果本來就有源程序文件,可以直接打開。然后是源程序的保存,選擇你要保存的路徑,在文件名里輸入文件名。注意一定要輸入擴(kuò)展名,如果是。穆序文件擴(kuò)展名為.c虹果是匯編文件擴(kuò)展名為·a51,習(xí)慣的也可以存儲為注簡說明文件可以保存為txt的擴(kuò)展名。建立一個(gè)工程項(xiàng)目選擇芯片并確認(rèn)選項(xiàng)Ke1c51寸5x以后的版本,都需要一個(gè)文件來存儲工程的相關(guān)信息,不管你是匯編的還是c的,只有一個(gè)文件,還是有多個(gè)文件的程序都要有一個(gè)工程文件。沒有工程文件將不能進(jìn)行編譯和防真:建立一個(gè)工程項(xiàng)目的步驟是這樣的,點(diǎn)擊菜單project,選擇new39太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書太原理工大學(xué)陽泉學(xué)院一畢業(yè)設(shè)計(jì)說明書然后選擇你要保存的路徑,輸入工程文件的名字,然后點(diǎn)擊呆存。reateNewProject桌面保存在(X) 文保我的立襠立袢我的電腦嘶建立件夾罔網(wǎng)上鄰居你好文保F「「虍 網(wǎng)上對壘00辦公歌件這時(shí)會彈出一個(gè)對話框要求選擇單片機(jī)的型號。你可以根據(jù)你使用的單片機(jī)來選擇,如果你所使用的單片機(jī)型號在列表中找不到,也可以找一款與你使用的相兼容的型號來代替。添加文件到當(dāng)前項(xiàng)目中在選擇好CPU型號后,此時(shí)工程管理窗中出現(xiàn)“TargetI”,點(diǎn)擊"Target1,前面的“+”號展開下一層的"SourceGroup1”文件夾,此時(shí)的新工程是空的,飛“r艸Group1”文件夾中什么文件都沒有,必須把剛才輸入的源程序加入到工程當(dāng)中。右擊工程管理窗中的"SourceGroup1,出現(xiàn)下拉菜單,點(diǎn)擊“增加文件到組'sourceGroup”命令,將出現(xiàn)添加文件對話框。在添加文件對話框中,找到要添加到工程中的源程序文件。注意:在對話框中的文件類型默認(rèn)"C源文件,如果你要添加到工程中的是匯編語言程序,則在文件類型中必須選中源文件(*彐*,*src)以*為擴(kuò)展名的匯編源程序才會出現(xiàn)在文件列表框中:琿數(shù)字溫度計(jì).畫灬2囗X彐巳巳巳舊b刂閂ashP巳刂卩h巳Is OlsS'/CS「人已0lug回回把文件添加到工程中,此時(shí)添加文家對話框并不會自動關(guān)閉,而是等待繼續(xù)添加其他文件,如果不添加的話可以關(guān)閉:當(dāng)給工程添加源程序文件成功后,工程管理器中的“
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新提拔任職表態(tài)發(fā)言稿
- 三農(nóng)村居民生態(tài)文明意識培養(yǎng)手冊
- 2023-2024學(xué)年西師大版(2013)小學(xué)信息技術(shù)六年級下冊 第五單元活動1 有趣的動畫舞臺(教學(xué)設(shè)計(jì))
- 11 我們當(dāng)?shù)氐娘L(fēng)俗 教學(xué)設(shè)計(jì)-2023-2024學(xué)年道德與法治四年級下冊統(tǒng)編版
- 4 公民的基本權(quán)利和義務(wù)(教學(xué)設(shè)計(jì))-2024-2025學(xué)年統(tǒng)編版道德與法治六年級上冊
- 化妝品生產(chǎn)質(zhì)量控制預(yù)案
- 農(nóng)業(yè)生態(tài)保護(hù)行動計(jì)劃指南
- 11 蟋蟀的住宅教學(xué)設(shè)計(jì)-2024-2025學(xué)年四年級上冊語文統(tǒng)編版
- DB3715-T 24-2022 黨政機(jī)關(guān)綠色食堂建設(shè)指南
- DB3710-T 175-2022 商品和服務(wù)明碼標(biāo)價(jià)規(guī)范 第5部分:停車場服務(wù)
- 304不銹鋼圓管檢驗(yàn)報(bào)告
- “師徒結(jié)對”工作實(shí)施方案
- 少兒美術(shù)-五彩的蛋殼參考PPT1
- 小學(xué)勞動教育 一年級 活動六《餐前準(zhǔn)備我?guī)兔Α?PPT 課件
- 古詩宿建德江課件
- 科研課題申請表(模板)
- 新部編人教版九年級下冊初中歷史全冊期末復(fù)習(xí)課件(單元復(fù)習(xí)+專題復(fù)習(xí))
- 最新美術(shù)保護(hù)珍稀野生動物課件PPT
- Artisyn上市強(qiáng)生Y網(wǎng)片課件
- 軌道鋪設(shè)施工專項(xiàng)方案
- (完整PPT)地殼演化簡史課件
評論
0/150
提交評論