版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 畢業(yè)論文</b></p><p><b> 課題:數(shù)字溫度計</b></p><p> 系 部 電子信息工程系 </p><p> 專 業(yè) 名 稱 應(yīng)用電子 </p><p> 班 級 *****
2、 </p><p> 姓 名 **** </p><p> 學 號 **** </p><p> 指 導(dǎo) 教 師 *** </p><p> 2011年12月10 日</p><p> 摘要:本文研制
3、的數(shù)字式定時溫控系統(tǒng)是一個基于單總線數(shù)字式溫度傳感器DS18B20,以單片機芯片為核心的系統(tǒng)。該系統(tǒng)具有對溫度的實時檢測功能,實時日歷時鐘、溫度和時間數(shù)值的設(shè)定等功能。該系統(tǒng)可以應(yīng)用于發(fā)面、菜窖溫度控制及保健等領(lǐng)域。</p><p> 本文首先對測溫技術(shù)、溫度控制技術(shù)的現(xiàn)狀進行了介紹,對各種控制理論、方案進行了簡單的分析與比較;其次根據(jù)用戶提出的總體要求和技術(shù)指標,從工程應(yīng)用的角度出發(fā),以發(fā)面器為主要應(yīng)用對象進
4、行了硬件部分的設(shè)計和選型、軟件的設(shè)計與分析,且在實現(xiàn)中遵循了簡單、經(jīng)濟、實用的原則:然后詳細介紹了本系統(tǒng)所用各芯片的特點、工作原理、應(yīng)用及其與單片機間的通信協(xié)議。最后本文對實驗、調(diào)試和實踐應(yīng)用過程中出現(xiàn)的問題、誤差及采用的抗干擾措施進行了分析和討論。</p><p> 關(guān)鍵詞:DS18B120 溫度傳感器 AT89S52</p><p><b> 目錄</b>
5、</p><p> 摘要 …………………………………………………………1</p><p> 1,緒論 …………………………………………………………2</p><p> 2、系統(tǒng)功能 …………………………………………………………2</p><p> 3、基本原理 ………………
6、…………………………………………2</p><p> 4、硬件電路 …………………………………………………………3</p><p> 5、軟件設(shè)計 …………………………………………………………4</p><p> 6、電路制作 …………………………………………………………5</p><p> 7、電路板制
7、作 …………………………………………………………6</p><p> 8、元件焊接 …………………………………………………………7</p><p> 9、調(diào)試 …………………………………………………………8</p><p> 10、結(jié)論 …………………………………………………………9</p>&l
8、t;p> 11、收獲體會 …………………………………………………………9</p><p> 12、致謝 …………………………………………………………9</p><p> 13、參考文獻 …………………………………………………………10</p><p> 附錄A(電路元器件清單) </p>
9、<p> 附錄B(電路原理圖)</p><p> 附錄C(PCB圖) </p><p><b> 附錄D(軟件程序)</b></p><p><b> 1、緒論</b></p><p> 本文設(shè)計的簡單實用的數(shù)字式溫度測控系統(tǒng),亦可廣泛應(yīng)用于各種定時、溫度控制領(lǐng)域,如工業(yè)工控
10、過程的溫度控制溫,它以AT89S52單片機為核心,實現(xiàn)對溫度信號的采集和顯示。在溫度信號的采集方面,利用單總線數(shù)字度傳感器的特點及功能實現(xiàn)對溫度的采集,與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式,可在-55—+125℃的范圍內(nèi)測量溫度。從中央處理器到DS18B20僅需連接一條信號線,和地線,其指令信息和數(shù)據(jù)信息都經(jīng)過單總線接口與DS18B20進行數(shù)據(jù)交換,且每個DS18B
11、20有唯一的系列號。因此同一條單總線上可以掛接多個DS18B20,構(gòu)成主從結(jié)構(gòu)的多點測溫傳感器網(wǎng)絡(luò)。而在顯示方面采用數(shù)碼管顯示。此系統(tǒng)具有結(jié)構(gòu)簡單、價格低廉、易于操作及系統(tǒng)擴展、性價比高等特點。它利用89S52單片機的強大功能和可擴充性為后盾,可實現(xiàn)對某一路溫度和溫度的上下限進行有效的控制與輸出。</p><p><b> 2、系統(tǒng)功能</b></p><p>
12、(1)采用AT89S52單片機和DS18B20溫度傳感器通信,控制溫度的采集過程和進行數(shù)據(jù)通信;</p><p> (2)利用數(shù)碼管顯示測量的溫度值;</p><p> (3)編寫C51程序,完成單片機對溫度數(shù)據(jù)的采集過程以及與DS18B20數(shù)據(jù)傳輸過程的控制。</p><p><b> 3、基本原理</b></p><
13、;p> DS18B20與單片機之間采用串行通信的方式進行數(shù)據(jù)讀寫與系統(tǒng)的調(diào)試及性能的分析</p><p> DS18B20包括單片機最小系統(tǒng),溫度傳感器,和顯示電路,溫度傳感器,DS18B20將被測壞境溫度轉(zhuǎn)化為帶符號的數(shù)字信號,單片機對接收到的數(shù)字信號進行變換,轉(zhuǎn)換成實際的溫度值并送至數(shù)碼管顯示,AT89C52是整個電路裝置的控制核心。當計數(shù)門打開時,DS18B20就對溫度系數(shù)振蕩器產(chǎn)生脈沖后進行計數(shù)
14、,進而完成溫度測量。DS18B20數(shù)字溫度傳感器是Dallas公司生產(chǎn)的1-Wire,即單總線器件,具有線路簡單、體積小的特點。因此用他組成一個測溫系統(tǒng),具有線路簡單,在1根通信線可以掛很多這樣的數(shù)字溫度傳感器,十分方便。</p><p><b> 4、硬件電路</b></p><p> 根據(jù)系統(tǒng)的控制要求,選擇AT89S52單片機,包括數(shù)字溫度傳感器的數(shù)據(jù)采集、
15、數(shù)據(jù)處理、晶振復(fù)位和溫度顯示電路。系統(tǒng)電路原理圖如下所示:</p><p> 系統(tǒng)由3 個模塊組成:主控制器.測溫電路和顯示電路。結(jié)構(gòu)框圖1-1所示。</p><p><b> 圖(1-1)</b></p><p> ?。?) 主控制器:單片機使用AT89S52。易于調(diào)試及燒錄。</p><p> AT89S52是
16、一個低功耗,高性能CMOS 8位單片機,片內(nèi)含8k Bytes ISP(In-system</p><p> programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S52可為許多嵌入式控制應(yīng)用系統(tǒng)提
17、供高性價比的解決方案。AT89S52具有如下特點:40個引腳,8k Bytes Flash片內(nèi)程序存儲器,256 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。此外,AT89S52設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串
18、行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。時鐘電路:時鐘電路為單片機產(chǎn)生時序脈沖,單片機所有運算與控制過程都</p><p> EA/VPP(31腳)為內(nèi)外程序存儲器選擇控制引腳,當EA為低電位時,單片機從外部程序</p><p> 存儲器
19、取指令;當EA接高電平時,單片機從內(nèi)部程序存儲器取指令。把EA接到+5V高電平,讓單片機運行內(nèi)部的程序。復(fù)位電路:在復(fù)位引腳(9腳)腳持續(xù)出現(xiàn)24個振蕩器脈沖周期(即2個機器周期)的高電平信號將使單片機復(fù)位。如下圖所示電容C和電阻R構(gòu)成了單片機上電自動復(fù)位電路。</p><p> ?。?)顯示電路: 顯示電路采用4位共陽LED數(shù)碼管,從P1口輸出段碼,列掃描用P3.0-P3.3來實現(xiàn),列驅(qū)動用8055三極管。&l
20、t;/p><p><b> 5、軟件設(shè)計</b></p><p> 基于DS18B20數(shù)字溫度傳感器的軟件設(shè)計采用C51編寫程序,主要完成DS18B20的測量溫度值計算及溫度值的顯示功能。其采用模塊化設(shè)計,程序設(shè)計包括系統(tǒng)初始化、復(fù)位程序、讀取溫度程序、溫度轉(zhuǎn)換程序、數(shù)碼管顯示程序和延時程序,其總體流程圖1-2所示。</p><p><b
21、> 圖(1-2)</b></p><p><b> 6、電路制作</b></p><p> 電路制作包括電路板設(shè)計和電路板加工制作兩個過程。</p><p><b> ?。?) 電路板設(shè)計</b></p><p> 本實訓(xùn)電路板設(shè)計采用Protel設(shè)計軟件,Protel設(shè)計
22、電路板最基本的過程可分為三大步驟。</p><p> ?。?) 電路原理圖的設(shè)計</p><p> 電路原理圖的設(shè)計主要是利用Protel軟件的原理圖設(shè)計系統(tǒng)來繪制一張電路原理圖。在這一過程中,要充分利用Protel設(shè)計軟件所提供的各種原理圖繪圖工具、各種編輯功能,來實現(xiàn)我們的目的,即得到一張正確、精美的電路原理圖。</p><p><b> ?。?)產(chǎn)
23、生網(wǎng)絡(luò)表</b></p><p> 網(wǎng)絡(luò)表是電路原理圖設(shè)計(SCH)與印制電路板設(shè)計(PCB)之間的一座橋梁,它是電路板自動布線的靈魂。網(wǎng)絡(luò)表可以從電路原理圖中獲得,也可從印制電路板中提取出來。</p><p> (3)印制電路板設(shè)計</p><p> PCB設(shè)計是以電路原理圖為根據(jù),PCB設(shè)計決定印制板的固有特性,在一定程度上也決定了印制板的制造
24、、安裝和維修的難易程度,同時也影響印制板的可靠性和成本。</p><p> PCB設(shè)計基本流程:建立元器件封裝庫→ 原理圖輸入→ 網(wǎng)表生成→ PCB疊層結(jié)構(gòu)設(shè)計、材料工藝選擇→ PCB外形設(shè)計→ 器件布局→ 布線設(shè)計→ 規(guī)則檢查→ 工藝性設(shè)計→ 拼板設(shè)計→ CAM數(shù)據(jù)輸出。</p><p> PCB設(shè)計注意事項:</p><p><b> ?、僭O(shè)計環(huán)境
25、設(shè)置</b></p><p> 進入PCB系統(tǒng)后的第一步就是設(shè)置PCB設(shè)計環(huán)境,包括設(shè)置格點大小和類型、光標類型、版層參數(shù)、布線參數(shù)等等。大多數(shù)參數(shù)都可以用系統(tǒng)默認值,而且這些參數(shù)經(jīng)過設(shè)置之后,符合個人的習慣,以后無須再去修改。規(guī)劃電路版,主要是確定電路版的邊框,包括電路版的尺寸大小等等。在需要放置固定孔的地方放上適當大小的焊盤。對于3mm 的螺絲可用6.5~8mm 的外徑和3.2~3.5mm 內(nèi)徑
26、的焊盤對于標準板可從其它板或PCB izard 中調(diào)入。</p><p> 注意:在繪制電路版地邊框前,一定要將當前層設(shè)置成Keep Out層,即禁止布線層。</p><p> ②零件布局布線的關(guān)鍵是布局,多數(shù)設(shè)計者采用手動布局的形式。用鼠標選中一個元件,按住鼠標,左鍵不放,拖住這個元件到達目的地,放開左鍵,將該元件固定。Protel99新的交互式布局選項包含自動選擇和自動對齊。<
27、;/p><p> 零件布局,應(yīng)當從機械結(jié)構(gòu)散熱、電磁干擾、將來布線的方便性等方面綜合考慮。先布置與機械尺寸有關(guān)的器件,并鎖定這些器件,然后是大的占位置的器件和電路的核心元件,再是外圍的小元件。</p><p> ?、鄄季€規(guī)則設(shè)置布線規(guī)則是設(shè)置布線的各個規(guī)范,這個步驟不必每次都要設(shè)置,按個人的習慣,設(shè)定一次就可以。</p><p> a. 安全間距(Clearance
28、 Constraint) 設(shè)置它規(guī)定了板上不同網(wǎng)絡(luò)的走線焊盤過孔等之間必須保持的距離。一般板子可設(shè)為0.254mm,較空的板子可設(shè)為0.3mm,較密的貼片板子可設(shè)為0.2-0.22mm,極少數(shù)印板加工廠家的生產(chǎn)能力在0.1-0.15mm。0.1mm 以下是絕對禁止的。</p><p> b. 走線層面和方向(的Routing Layers)設(shè)置</p><p> 此處可設(shè)置使用的走線層
29、和每層的主要走線方向。請注意貼片的單面板只用頂層,直插型的單面板只用底層,但是多層板的電源層不是在這里設(shè)置的,機械層也不是在這里設(shè)置的。</p><p> 機械層1 一般用于畫板子的邊框;</p><p> 機械層3 一般用于畫板子上的擋條等機械結(jié)構(gòu)件;</p><p> 機械層4 一般用于畫標尺和注釋等,具體可自己用PCB Wizard 中導(dǎo)出一個PCAT結(jié)
30、構(gòu)的板子看一下。</p><p> c. 過孔形狀(Routing Via Style)設(shè)置它規(guī)定了手工和自動布線時自動產(chǎn)生的過孔的內(nèi)、外徑,均分為最小、最大和首選值,其中首選值是最重要的。</p><p> d. 走線線寬(Width Constraint)設(shè)置它規(guī)定了手工和自動布線時走線的寬度。整個板范圍的首選項一般取0.2-0.6mm,另添加一些網(wǎng)絡(luò)或網(wǎng)絡(luò)組(Net Class)
31、的線寬設(shè)置,如地線、+5 伏電源線、交流電源輸入線、功率輸出線和電源組等。網(wǎng)絡(luò)組可以事先在Design-Netlist Manager中定義好,地線一般可選1mm 寬度,各種電源線一般可選0.5-1mm 寬度,印板上線寬和電流的關(guān)系大約是每毫米線寬允許通過1安培的電流,具體可參看有關(guān)資料。當線徑首選值太大使得SMD 焊盤在自動布線無法走通時,它會在進入到SMD 焊盤處自動縮小成最小寬度和焊盤的寬度之間的一段走線,其中Board 為對整個
32、板的線寬約束,它的優(yōu)先級最低,即布線時首先滿足網(wǎng)絡(luò)和網(wǎng)絡(luò)組等的線寬約束條件。</p><p><b> 7、電路板制作</b></p><p> 完成PCB設(shè)計后就可以進行電路板生產(chǎn)制作。電路板制作可以用機械雕刻方法也可以用化學蝕刻方法,本實訓(xùn)采用化學方法生產(chǎn)雙面電路板,其生產(chǎn)流程為:</p><p> ?、挪冒澹拼蚩?,⑶刷板,⑷孔金屬化
33、,⑸出片,⑹涂曝光油墨,⑺烘干,⑻加正片曝光,</p><p> ?、惋@影,⑽鍍鉛,⑾脫膜,⑿堿性腐蝕,⒀褪鉛,⒁涂阻焊油墨,⒂烘干,⒃加焊盤片曝光,</p><p> ?、诊@影,⒅鍍錫,⒆做字符絲網(wǎng),⒇涂字符油墨,(21)烘干。</p><p> 具體各步驟所使用的設(shè)備及工藝過程需要大家在PCB制作實訓(xùn)過程中學習和體會。</p><p>
34、<b> 8、元件焊接</b></p><p> 電路板做好后經(jīng)檢驗若沒有質(zhì)量問題就可以進行元器件的焊裝,本實訓(xùn)對于貼片(SMT)</p><p> 元件,采用自動焊接。采用回流焊工藝的SMT焊接流程為:</p><p> 焊膏印刷→ 貼片→ 回流焊接</p><p> 對于插件,采用手工焊接,手工焊接最常用的
35、工具是電烙鐵。一般來說,電烙鐵的功率越大,熱量越大,烙鐵頭的溫度也就越高。一般的晶體管、集成電路電子元器件焊接選用20W的內(nèi)熱式電烙鐵足夠了,功率過大容易燒壞元件,因為二極管、三極管結(jié)點溫度超過200℃就會燒壞。線路焊接時,時間不能太長也不能太短,時間過長也容易損壞,而時間太短焊錫則不能充分融化,造成焊點不光滑不牢固,還可能產(chǎn)生虛焊,一般來說最恰當?shù)臅r間必須在1.5s~4s內(nèi)完成。</p><p><b&g
36、t; 1) 焊前準備</b></p><p> 電子元件在焊接前,必須先成型再焊接。</p><p> 焊接前,應(yīng)對元件引腳或電路板的焊接部位進行焊前處理。</p><p> 清除焊接部位的氧化層:可用斷鋸條制成小刀,刮去金屬引線表面的氧化層,使引腳露出金屬光澤。印刷電路板上的焊疤處涂上一層松香酒精溶液。</p><p>
37、 元件鍍錫:在刮凈的引線上鍍錫??蓪⒁€蘸一下松香酒精溶液后,將帶錫的熱烙鐵頭壓在引線上,并轉(zhuǎn)動引線。即可使引線均勻地鍍上一層很薄的錫層。導(dǎo)線焊接前,應(yīng)將絕緣外皮剝?nèi)ィ俳?jīng)過上面兩項處理,才能正式焊接。若是多股金屬絲的導(dǎo)線,打光后應(yīng)先擰在一起,然后再鍍錫。</p><p> 2) 手工焊接基本方法</p><p> ?、儆沂殖蛛娎予F。左手用尖嘴鉗或鑷子夾持元件或?qū)Ь€。焊接前,電烙鐵要充
38、分預(yù)熱。烙鐵頭刃面上要吃錫,即帶上一定量焊錫。</p><p> ?、趯⒗予F頭刃面緊貼在焊點處。電烙鐵與水平面大約成60℃角。以便于熔化的錫從烙鐵頭上流到焊點上。烙鐵頭在焊點處停留的時間控制在2~3秒鐘。</p><p> ?、厶ч_烙鐵頭。左手仍持元件不動。待焊點處的錫冷卻凝固后,才可松開左手。</p><p> ?、苡描囎愚D(zhuǎn)動引線,確認不松動,然后可用偏口鉗剪去多
39、余的引線。</p><p> 焊接時,要保證每個焊點焊接牢固、接觸良好。好的焊接質(zhì)量應(yīng)該是焊點光滑圓潤、大小適度、均勻,無毛刺、錫量適中、錫和被焊物融合牢固、無虛焊,焊腳在焊點外留長1~2mm。</p><p> 3)電烙鐵使用注意事項</p><p> ?、偈褂们埃瑧?yīng)認真檢查電源插頭、電源線有無損壞。并檢查烙鐵頭是否松動。</p><p&g
40、t; ?、谟辛己玫慕拥?,防漏電擊穿和損壞元器件,另外還要有防靜電措施。</p><p> ?、郾3智鍧崳コ予F頭的氧化物。8</p><p> ?、懿灰諢挥玫睦予F應(yīng)切斷電源,避免烙鐵的電熱絲燒壞。</p><p> ?、蓦娎予F使用中,不能用力敲擊。要防止跌落。烙鐵頭上焊錫過多時,可用布擦掉。不可亂甩,以防燙傷他人。焊接過程中,烙鐵不能到處亂放。不焊時,應(yīng)放在
41、烙鐵架上。注意電源線不可搭在烙鐵頭上,以防燙壞絕緣層而發(fā)生事故。</p><p> ?、奘褂媒Y(jié)束后,應(yīng)及時切斷電源,拔下電源插頭。冷卻后,再將電烙鐵收回工具箱。</p><p> ⑦吸錫:將元器件的引腳焊錫去掉,可借助吸錫器完成。也可用加熱電烙鐵配合多股細銅線點醮松香吸錫,待錫流到多股細銅絲后,可見焊點的錫基本清除。</p><p><b> 9、調(diào)試
42、</b></p><p> 測試儀器:①直流穩(wěn)壓電源;②數(shù)字萬用表;③溫度計;④編程器。</p><p><b> 1)程序下載</b></p><p> 利用編程器下載程序。</p><p><b> 2)硬件測試</b></p><p> 硬件調(diào)試首
43、先檢查電路的焊接是否正確,然后用萬用表測試或通電檢測。</p><p><b> 3)軟件測試</b></p><p> 利用標準溫度計檢測自制數(shù)字溫度計的測量顯示值,改變傳感器環(huán)境溫度,觀察溫度的變化情況。</p><p><b> 10、結(jié)論</b></p><p> 經(jīng)過一個月的方案論
44、證,系統(tǒng)的硬件和軟件的設(shè)計,系統(tǒng)的調(diào)試。查閱了大量的關(guān)于單片機接口電路以及控制方面的理論,經(jīng)過一番體驗后,有失敗的痛苦,但也有成功的喜悅,第一次用所學的知識來解決問題,檢查了自己的知識水平,是我對自己有一個全新的認識,通過這次設(shè)計,不僅鍛煉了自己分析問題,處理問題的能力,還提高了自己的動手能力,這些培養(yǎng)和鍛煉對于我來說很總要。 </p><p> 通過分析表明,本系統(tǒng)是一個性價比較好的系統(tǒng),不論對于生產(chǎn)者還是使
45、用者來說,都有好的經(jīng)濟效益,而此設(shè)計成本低,能夠很穩(wěn)定的控制溫度。</p><p> 本次設(shè)計基本上達到了本次設(shè)計的要求,實現(xiàn)了溫度的控制。</p><p><b> 11、收獲體會</b></p><p> 三年的學習很快就要結(jié)束了,通過這次畢業(yè)設(shè)計,我學到了很多東西,由于平時疏于操作,在寫程序上遇到了很大困難,查了好多資料,請教了好多
46、的同學才勉強做好了,盡管這樣還是發(fā)了不少時間,但比較高興的是我完整的把這次畢業(yè)設(shè)計做好了。</p><p> 通過這次的畢業(yè)設(shè)計,我認識到自己的專業(yè)水平還有很多的不足,通過這次畢業(yè)設(shè)計我找到信心,只要有恒心,堅持不懈,不管什么困難都是可以克服的,這對我在今后的學習工作有了很大的幫組。</p><p><b> 12、致謝</b></p><p&
47、gt; 本文是在導(dǎo)師xx老師的精心指導(dǎo)和耐心幫助下完成的。xx老師淵博的學識,嚴謹?shù)闹螌W的態(tài)度,精益求精的精神,一絲不茍的工作作風,隨和待人的高尚品質(zhì)給我留下了深刻的印象,成為我學習的榜樣,并激勵我不斷進取,使我盡最大努力不斷進步,在此謹向我的導(dǎo)師xx老師致以崇高的敬意和衷心的感謝!</p><p> 在這里也向所有給予我關(guān)心和幫助的同學、朋友們表示謝意!最后 , 在完成這篇論文的過程,我自覺和不自覺的參考了
48、許多文獻,對于這些文獻的作者,雖然在此不可能一一提及,但是對他們每一位表示最誠摯的謝意</p><p><b> 13、參考文獻</b></p><p> 樓然苗,李光飛編著. 51系列單片機設(shè)計實例[M]. 北京航天航空大學出版社</p><p> 先鋒工作室. 單片機程序設(shè)計實例[M]. 清華大學出版社</p><
49、p> 吳金戌,沈慶陽,郭庭吉編著.8051單片機實踐與應(yīng)用[M]. 清華大學出版社</p><p> 梅麗鳳. 單片機原理及接口技術(shù)[M]. 清華大學出版社 2004 年</p><p> 張迎新. 單片微型記數(shù)機原理,應(yīng)用接口技術(shù)[M]. 國防工業(yè)出版社 1993年</p><p> 李全利. 單片機原理及應(yīng)用技術(shù)[M]. 高等教育出版社 2001年
50、</p><p> 何立民. 單片機應(yīng)用系統(tǒng)設(shè)計[M]. 京航空航天大學</p><p><b> 附錄</b></p><p> 附錄A 電路元器件清單</p><p> 附錄B 電路原理圖</p><p><b> 附錄C PCB圖</b></p&g
51、t;<p><b> 附錄D 軟件程序</b></p><p> TEMPER_L EQU 59H</p><p> TEMPER_H EQU 58H</p><p> FLAG1 EQU 68H;是否檢測到DS18B20標志位</p><p> A_BIT EQU 50H ;數(shù)碼管個位數(shù)存放內(nèi)
52、存位置</p><p> B_BIT EQU 51H ;數(shù)碼管十位數(shù)存放內(nèi)存位置</p><p> XS EQU 30H</p><p> ;;;;;;;;;;;;程序入口地址;;;;;;;;;;;;;;</p><p><b> ORG0000H</b></p><p><
53、b> LJMPmain</b></p><p><b> ORG0003H</b></p><p><b> RETI</b></p><p> ORG000BH;定時器T0溢出中斷入口</p><p><b> RETI</b><
54、/p><p><b> ORG001BH</b></p><p><b> RETI</b></p><p><b> ORG0030H</b></p><p><b> MAIN:</b></p><p> LCALL
55、GET_TEMPER;調(diào)用讀溫度子程序</p><p><b> MOV A,29H</b></p><p><b> MOV B,A</b></p><p><b> CLR C</b></p><p><b> RLC A</b></p&
56、gt;<p><b> CLR C</b></p><p><b> RLC A</b></p><p><b> CLR C</b></p><p><b> RLC A</b></p><p><b> CLR C&l
57、t;/b></p><p><b> RLC A</b></p><p><b> SWAP A</b></p><p><b> MOV 31H,A</b></p><p><b> MOV A,B</b></p><p
58、> MOV C,40H;將28H中的最低位移入C</p><p><b> RRC A</b></p><p><b> MOV C,41H</b></p><p><b> RRC A</b></p><p><b> MOV C,42H</b
59、></p><p><b> RRC A</b></p><p><b> MOV C,43H</b></p><p><b> RRC A</b></p><p><b> MOV 29H,A</b></p><p>
60、; LCALL DISPLAY;調(diào)用數(shù)碼管顯示子程序</p><p> AJMP MAIN; 這是DS18B20復(fù)位初始化子程序</p><p> INIT_1820:SETB P3.7</p><p><b> NOP</b></p><p> CLR P3.7;主機發(fā)出延時537微秒的復(fù)位低脈沖</p
61、><p><b> MOV R1,#3</b></p><p> TSR1:MOV R0,#107</p><p><b> DJNZ R0,$</b></p><p> DJNZ R1,TSR1</p><p> SETB P3.7;然后拉高數(shù)據(jù)線</p>
62、<p><b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p> MOV R0,#25H</p><p> TSR2:JNB P3.7,TSR3;等待DS18B20回應(yīng)</p&g
63、t;<p> DJNZ R0,TSR2</p><p> LJMP TSR4 ; 延時</p><p> TSR3:SETB FLAG1 ; 置標志位,表示DS1820存在</p><p><b> LJMP TSR5</b></p><p> TSR4:CLR FLAG1 ; 清標志位,表示DS
64、1820不存在</p><p><b> LJMP TSR7</b></p><p> TSR5:MOV R0,#117</p><p> TSR6:DJNZ R0,TSR6 ; 時序要求延時一段時間</p><p> TSR7:SETB P3.7</p><p> RET; 讀出轉(zhuǎn)換后
65、的溫度值</p><p> GET_TEMPER:SETB P3.7</p><p> LCALL INIT_1820;先復(fù)位DS18B20</p><p> JB FLAG1,TSS2</p><p> RET ; 判斷DS1820是否存在?若DS18B20不存在則返回</p><p> TSS2:MOV
66、A,#0CCH ; 跳過ROM匹配</p><p> LCALL WRITE_1820</p><p> MOV A,#44H ; 發(fā)出溫度轉(zhuǎn)換命令</p><p> LCALL WRITE_1820;這里通過調(diào)用顯示子程序?qū)崿F(xiàn)延時一段時間,等待AD轉(zhuǎn)換結(jié)束,12位的話750微秒</p><p> LCALL DISPLAY</
67、p><p> LCALL INIT_1820;準備讀溫度前先復(fù)位</p><p> MOV A,#0CCH ; 跳過ROM匹配</p><p> LCALL WRITE_1820</p><p> MOV A,#0BEH ; 發(fā)出讀溫度命令</p><p> LCALL WRITE_1820</p>
68、<p> LCALL READ_18200; 將讀出的溫度數(shù)據(jù)保存到35H/36H </p><p> RET;寫DS18B20的子程序(有具體的時序要求)</p><p> WRITE_1820:MOV R2,#8;一共8位數(shù)據(jù)</p><p><b> CLR C</b></p><p> WR
69、1:CLR P3.7</p><p><b> MOV R3,#6</b></p><p><b> DJNZ R3,$</b></p><p><b> RRC A</b></p><p> MOV P3.7,C</p><p> MOV R
70、3,#23</p><p><b> DJNZ R3,$</b></p><p><b> SETB P3.7</b></p><p><b> NOP</b></p><p> DJNZ R2,WR1</p><p> RET; 讀DS18B
71、20的程序,從DS18B20中讀出兩個字節(jié)的溫度數(shù)據(jù) </p><p> READ_18200:MOV R4,#2 ; 將溫度高位和低位從DS18B20中讀出</p><p> MOV R1,#29H ; 低位存入29H(TEMPER_L),高位存入28H(TEMPER_H)</p><p> RE00:MOV R2,#8;數(shù)據(jù)一共有8位</p>
72、<p> RE01:CLR C</p><p><b> SETB P3.7</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> CLR P3.7</b></p&
73、gt;<p><b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> SETB P3.7</b></p><p><b> MOV R3,#9
74、</b></p><p> RE10: DJNZ R3,RE10</p><p> MOV C,P3.7</p><p> MOV R3,#23</p><p> RE20: DJNZ R3,RE20</p><p><b> RRC A</b></p><
75、;p> DJNZ R2,RE01</p><p><b> MOV @R1,A</b></p><p><b> DEC R1</b></p><p> DJNZ R4,RE00</p><p><b> RET</b></p><p>
76、<b> DISPLAY:</b></p><p> MOV A,29H;將29H中的十六進制數(shù)轉(zhuǎn)換成10進制 </p><p> MOV B,#10 ;10進制/10=10進制</p><p><b> DIV AB</b></p><p> MOV B_BIT,A ;十位在A</
77、p><p> MOV A_BIT,B ;個位在B</p><p> MOV R0,#4 </p><p><b> CLR C;多加的</b></p><p> MOV DPTR,#NUMTAB1</p><p> MOV A,A_BIT ;取個位數(shù)</p><p>
78、 MOVC A,@A+DPTR ;查個位數(shù)的7段代碼</p><p> MOV P1,A ;送出個位的7段代碼</p><p> MOV DPTR,#NUMTAB</p><p> MOV A,B_BIT ;取十位數(shù)</p><p> MOVC A,@A+DPTR ;查十位數(shù)的7段代碼</p><p> M
79、OV P0,A ;送出十位的7段代碼</p><p> JC XSW;多加的</p><p><b> MOV A,31H</b></p><p> MOV B,#160</p><p><b> DIV AB</b></p><p><b> MOV X
80、S,B</b></p><p><b> XSW:</b></p><p> MOV DPTR,#NUMTAB</p><p><b> MOV A,XS </b></p><p> MOVC A,@A+DPTR</p><p><b> MO
81、V P2,A </b></p><p><b> RET</b></p><p> ;1MS延時(按12MHZ算)</p><p> D1MS: MOV R7,#80 </p><p><b> DJNZ R7,$</b></p><p><b>
82、; RET</b></p><p> D10MS:MOV R6,#20</p><p> LOOP9:MOV R7,#250</p><p><b> DJNZ R7,$</b></p><p> DJNZ R6,LOOP9</p><p><b> RET&
83、lt;/b></p><p> D5MS:MOV R6,#10</p><p> LOOP8:MOV R7,#250</p><p><b> DJNZ R7,$</b></p><p> DJNZ R6,LOOP8</p><p><b> RET</b>
84、;</p><p> NUMTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,90H,90H,90H,90H,90H,90H</p><p> NUMTAB1: DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H</p><p><b> END<
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計---數(shù)字溫度計
- 數(shù)字溫度計畢業(yè)設(shè)計
- 數(shù)字溫度計畢業(yè)設(shè)計
- 數(shù)字溫度計設(shè)計畢業(yè)設(shè)計
- 畢業(yè)設(shè)計--數(shù)字溫度計設(shè)計
- 數(shù)字溫度計設(shè)計畢業(yè)設(shè)計
- 數(shù)字溫度計畢業(yè)設(shè)計論文
- 畢業(yè)設(shè)計---數(shù)字溫度計作
- 數(shù)字溫度計控制 畢業(yè)設(shè)計
- 數(shù)字溫度計的設(shè)計畢業(yè)設(shè)計
- 數(shù)字溫度計的設(shè)計畢業(yè)設(shè)計
- 畢業(yè)設(shè)計---數(shù)字溫度計的設(shè)計
- 畢業(yè)設(shè)計開題報告(數(shù)字溫度計)
- 數(shù)字溫度計畢業(yè)設(shè)計論文1
- 畢業(yè)設(shè)計---數(shù)字溫度計設(shè)計與實現(xiàn)
- 多點數(shù)字溫度計設(shè)計 畢業(yè)設(shè)計
- 畢業(yè)設(shè)計(論文)數(shù)字溫度計的設(shè)計
- 數(shù)字溫度計論文數(shù)字溫度計設(shè)計論文
- 畢業(yè)設(shè)計--- 數(shù)字溫度計的設(shè)計與制作
- 數(shù)字溫度計設(shè)計
評論
0/150
提交評論