我的畢業(yè)設(shè)計(jì)-智能測(cè)速系統(tǒng)_第1頁
我的畢業(yè)設(shè)計(jì)-智能測(cè)速系統(tǒng)_第2頁
我的畢業(yè)設(shè)計(jì)-智能測(cè)速系統(tǒng)_第3頁
我的畢業(yè)設(shè)計(jì)-智能測(cè)速系統(tǒng)_第4頁
我的畢業(yè)設(shè)計(jì)-智能測(cè)速系統(tǒng)_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 設(shè)計(jì)題目:智能測(cè)速系統(tǒng)班 級(jí): 電氣0901 姓 名: 陳智慧 學(xué) 號(hào): 23 號(hào) 指導(dǎo)老師: 程 秀 玲 2012年 04 月 航空電子電氣工程系 2012-05專心-專注-專業(yè)摘 要隨著科技的飛速發(fā)展,計(jì)算機(jī)應(yīng)用技術(shù)日益滲透到社會(huì)生產(chǎn)生活的各個(gè)領(lǐng)域,而單片機(jī)的應(yīng)用則起到了舉足輕重的作用。并帶動(dòng)傳統(tǒng)控制檢測(cè)技術(shù)不斷更新。而測(cè)速就是一個(gè)很典型的例子,它跟我們的生活生產(chǎn)息息相關(guān)。傳統(tǒng)的車速測(cè)量是通過軟軸傳動(dòng)表來實(shí)現(xiàn)的,而現(xiàn)在基本都是利用LED和LCD實(shí)時(shí)進(jìn)行數(shù)字顯示的。這不僅克服了傳統(tǒng)測(cè)速的不足,同時(shí)還保證了測(cè)量的精度。本次設(shè)計(jì)中我們是以AT89S52為核心,利用單片

2、機(jī)的控制功能來實(shí)現(xiàn)測(cè)轉(zhuǎn)速進(jìn)而利用單片機(jī)來計(jì)算速度。該方案中利用了LCD顯示模塊和霍爾傳感器,因此在確保測(cè)量精度的基礎(chǔ)上節(jié)約了系統(tǒng)資源減少了該系統(tǒng)的外圍設(shè)備,同時(shí)也簡(jiǎn)化了編程。這就體現(xiàn)了該設(shè)計(jì)方案的簡(jiǎn)單、可靠的優(yōu)點(diǎn)。關(guān)鍵字:AT89S52單片機(jī)、霍爾傳感器、BS18B20溫度傳感、LCD顯示AbstractWith the rapid development of science and technology, computer application technology is increasingly permeating all areas of life in social produc

3、tion, and SCM applications has played a pivotal role. And promote the traditional control detection technology constantly updated. The tachometer is a very typical example, production is closely related to it with our lives. The speed measurement is achieved through the flexible shaft drive table, a

4、nd now are basically the use of LED and LCD in real time digital display. This is not only to overcome the deficiencies of the traditional tachometer, but also to ensure the accuracy of measurement. The design is based on AT89S52 as the core, the MCU control functions to achieve the measured speed a

5、nd then use the microcontroller to calculate the speed. The program using the LCD display module and the Hall sensor, on the basis of ensuring measurement accuracy, saving system resources to reduce the systems peripherals, but also simplifies the programming. This reflects the simple, reliable and

6、advantages of the design.Keywords: AT89S52 microcontroller, the Hall sensor, BS18B20 temperature sensor, LCD display 目 錄第一章 緒 論1.1 智能測(cè)速系統(tǒng)的意義速度測(cè)量是一個(gè)是社會(huì)生產(chǎn)和日常生活中重要的檢測(cè)和控制對(duì)象。同時(shí)也涉及到了軍事科技中。然而測(cè)速大都是通過測(cè)轉(zhuǎn)速來測(cè)得,我們都知道在測(cè)速的方法有很多,傳統(tǒng)的測(cè)速主要機(jī)械式的。例如傳統(tǒng)的機(jī)械式車速表是由旋轉(zhuǎn)磁場(chǎng)作用于轉(zhuǎn)動(dòng)盤,使轉(zhuǎn)動(dòng)盤連同車速表指針發(fā)生同向的偏轉(zhuǎn)。當(dāng)電磁轉(zhuǎn)矩與彈簧產(chǎn)生的阻力矩平衡時(shí),指針偏轉(zhuǎn)停留在某一角度上。因

7、而可用其表示車速。機(jī)械式車速表的缺陷是明顯的。由于表盤指針偏轉(zhuǎn)程度正比于軟軸的轉(zhuǎn)動(dòng)時(shí)產(chǎn)生的磁力,當(dāng)轉(zhuǎn)速較低的時(shí)候,磁力較小,隨轉(zhuǎn)速變化波動(dòng)較大。因此,低速時(shí)車速表指針擺動(dòng)劇烈、測(cè)量及顯示精度不高。對(duì)于發(fā)動(dòng)機(jī)后置的車輛,要將車速表指針的偏轉(zhuǎn)動(dòng)力由變速箱經(jīng)軟軸等傳至駕駛室,軟軸必然布置的較長,如何將這種長長的轉(zhuǎn)動(dòng)軟軸從結(jié)構(gòu)上布置妥當(dāng),肯定是一件十分困難的事情。后來人們又利用模擬技術(shù)來測(cè)速,即將測(cè)速發(fā)電機(jī)的轉(zhuǎn)軸與待測(cè)軸相連,測(cè)速發(fā)電機(jī)的電壓高低反映了轉(zhuǎn)速的高低,這種測(cè)速雖然有了很大的改進(jìn),但是還不是很精確。使用單片機(jī)進(jìn)行測(cè)速,可以使用簡(jiǎn)單的脈沖計(jì)數(shù)法。只要轉(zhuǎn)軸每旋轉(zhuǎn)一周,產(chǎn)生一個(gè)或固定的多個(gè)脈沖,并

8、將脈沖送入單片機(jī)中進(jìn)行計(jì)數(shù),即可獲得轉(zhuǎn)速的信息。這不僅使得機(jī)械簡(jiǎn)單化,更是提高了檢測(cè)精度。目前隨著我國城市規(guī)模的迅速擴(kuò)大及農(nóng)村道路的日益改善,長期依靠腳踏自行車的人們將會(huì)把目標(biāo)轉(zhuǎn)向電動(dòng)自行車,對(duì)電動(dòng)自行車需求也會(huì)越來越大。人們對(duì)環(huán)境的關(guān)注以及相關(guān)技術(shù)的更新,有力地促進(jìn)了電動(dòng)自行車的發(fā)展。1.2 智能測(cè)速系統(tǒng)的設(shè)計(jì)目的本次設(shè)計(jì)通過AT89S52單片機(jī)芯片,并以霍爾傳感器和美國MAXIM/DALLAS半導(dǎo)體公司的單總線溫度傳感器DS18B20為核心,將采集到的數(shù)據(jù)送入單片機(jī)處理,經(jīng)過單片機(jī)內(nèi)部將溫度和轉(zhuǎn)速數(shù)據(jù)的計(jì)算處理后再送到LCD中進(jìn)行顯示。通過單片機(jī)的不斷刷新數(shù)據(jù),進(jìn)而達(dá)到了對(duì)速度和溫度進(jìn)行實(shí)

9、時(shí)采集顯示。通過本系統(tǒng)分為硬件和軟件兩個(gè)部分,硬件部分由四個(gè)部分組成,即單片機(jī)最小系統(tǒng)模塊、溫度采集模塊、速度測(cè)試模塊以及顯示部分組成,所用的的軟件有KEIL 編程軟件、proteus仿真軟件以及DXP 2004.除了達(dá)到本次論文設(shè)計(jì)要求外,最重要的目的是通過對(duì)各模塊的分析以及對(duì)各軟件使用起到鞏固作用。1.3 設(shè)計(jì)要求溫度測(cè)量系統(tǒng):1、能夠?qū)崿F(xiàn)溫度測(cè)量2、用液晶顯示器顯示3、做實(shí)物4、能夠顯示時(shí)間測(cè)速系統(tǒng): 1、能夠測(cè)量速度 2、用液晶顯示器顯示3、做實(shí)物第二章 方案論證與系統(tǒng)結(jié)構(gòu)2.1 方案論證2.1.1 單片機(jī)芯片 單片機(jī)的種類比較多,世界上不同的國家的很多芯片廠商都生產(chǎn)不同的單片機(jī),如生

10、產(chǎn)的AT89C51、AT89S51、52等,Philips(飛利浦)公司的P80C54、P87C528等,Intel(英特爾)公司的i87C58、i87C51FC等,Siemens(西門子)公司的C501-1R、C513A-H等,STC公司的STC89C51RC、STC89S52RC等等。而且單片機(jī)有8位、16位以及32位的,但是目前應(yīng)用最廣的還是8位的單片機(jī)。本次設(shè)計(jì)中我從對(duì)芯片的熟悉程度和成本的兩個(gè)角度考慮,確定了選擇Atmel公司的AT89S52作為本次設(shè)計(jì)的單片機(jī)芯片。2.1.2 測(cè)速傳感器 方案一:旋轉(zhuǎn)編碼器旋轉(zhuǎn)編碼器具有無觸點(diǎn)、高轉(zhuǎn)速、高分辨率、安全可靠性高等優(yōu)點(diǎn)。旋轉(zhuǎn)編碼器有兩種

11、分為光電式和磁電式。光電編碼器的工作原理與光電傳感器類似,內(nèi)部由光電傳感器、信號(hào)處理電路、碼盤等組成。它在使用時(shí)必須要用聯(lián)軸器將它的軸和被測(cè)對(duì)象的轉(zhuǎn)軸連接起來才能獲得多種輸出信號(hào)。利用它來測(cè)速的原理就是當(dāng)被測(cè)對(duì)象旋轉(zhuǎn)一定距離就發(fā)出一個(gè)脈沖信號(hào)從而達(dá)到測(cè)速的目的。旋轉(zhuǎn)編碼器一般廣泛用在工業(yè)生產(chǎn)中,如數(shù)控機(jī)床、回轉(zhuǎn)臺(tái)、伺服傳動(dòng)、機(jī)器人、雷達(dá)和軍事科研等高精度的領(lǐng)域。以下圖2-1是深圳市華瑾光電科技公司產(chǎn)的光電編碼器的一種產(chǎn)品 圖 2-1 方案二:光電傳感器 光電傳感器是應(yīng)用非常廣泛的一種器件,根據(jù)用的不同場(chǎng)合,一般都會(huì)做成不同的形式,如透射式、反射式等。紅外對(duì)管就是一個(gè)典型代表。光電傳感器主要是由

12、一個(gè)發(fā)射管和一個(gè)光敏接受管組成,工作的基本原理就是當(dāng)發(fā)射管光照射到接收管時(shí),接收管導(dǎo)通,反之關(guān)斷。以透射式為例,如圖2-2所示,當(dāng)不透光的物體擋住發(fā)射與接收之間的間隙時(shí),開關(guān)管關(guān)斷,否則打開。為此為了達(dá)到測(cè)速的目的我們可以制作一個(gè)遮光葉片如圖2-3所示,安裝在被測(cè)對(duì)象的轉(zhuǎn)軸上,當(dāng)扇葉經(jīng)過時(shí),產(chǎn)生脈沖信號(hào)。當(dāng)葉片數(shù)較多時(shí),旋轉(zhuǎn)一周可以獲得多個(gè)脈沖信號(hào)。通過規(guī)定時(shí)間內(nèi)的脈沖個(gè)數(shù)我們可以計(jì)算被測(cè)對(duì)象的速度。圖2-2 光電傳感器的原理圖圖2-3 遮光葉片 方案三:霍爾傳感器 霍爾傳感器是一種對(duì)磁敏感的傳感元件,只對(duì)磁極的S極有效,只有S極的磁場(chǎng)達(dá)到霍爾傳感器的工作點(diǎn)它就會(huì)產(chǎn)生一個(gè)脈沖信號(hào)。典型應(yīng)用于無

13、觸點(diǎn)開關(guān)、 汽車點(diǎn)火器、 剎車電路、 位置轉(zhuǎn)速檢測(cè)與控制、 安全報(bào)警裝置和紡織控制系統(tǒng)等?;魻杺鞲衅魇且粋€(gè)3端器件,外形與三極管相似,只要接上電源和地,即可工作,輸出通常是集電極開路(OC)門輸出,工作電壓范圍寬,使用非常方便。霍爾傳感器能在很多場(chǎng)合都能可靠工作,不怕灰塵和油污等,被廣泛用于工業(yè)現(xiàn)場(chǎng)。為了實(shí)現(xiàn)測(cè)速我們要選擇開關(guān)型的霍爾器件,常用的型號(hào)有CS3020、CS3040、A04E、A44E等。圖2-4是霍爾傳感器A04E。圖2-5 A44E 霍爾傳感器實(shí)物圖2-4 A04E的實(shí)物圖圖2-5 A44E 霍爾傳感器實(shí)物 測(cè)速系統(tǒng)使用開關(guān)型霍爾傳感器來獲取脈沖數(shù),可以使得機(jī)械上的設(shè)計(jì)變的較為

14、簡(jiǎn)單,利用它的工作原理,我們可以在被測(cè)對(duì)象進(jìn)行一個(gè)簡(jiǎn)單的處理,這里我就一車輪為例,在車輪上加上一粒磁鋼,確保車輪每一圈都能使磁鋼感應(yīng)到霍爾傳感器,這樣就能得一圈就可獲得一個(gè)脈沖,如果想一圈獲得多個(gè)脈沖的話,我們就可以在車輪上多加幾粒磁鋼就可以獲得多個(gè)脈沖。通過脈沖處理我們可以測(cè)得被測(cè)物體速度和里程。 綜合考慮三個(gè)方案,旋轉(zhuǎn)編碼器價(jià)格昂貴,而紅外對(duì)管則對(duì)環(huán)境的要求比較高,因?yàn)楣饷綦娮柙谟杏臀邸⒛嗨突覊m的場(chǎng)所會(huì)影響它的正常工作。因此光電傳感器也不適合裝在車輪上進(jìn)行使用?;魻杺鞲衅鲀r(jià)格便宜,且具有體積小、安裝方便、靈敏度高、響應(yīng)速度快、溫度性能好、精確度高、可靠性高等特點(diǎn)。即使在有灰塵、油污、泥水

15、的惡劣環(huán)境下也可以正常工作。也能很好地滿足車輪測(cè)速和系統(tǒng)設(shè)計(jì)的需要。所以本次設(shè)計(jì)選擇方案三霍爾傳感器。型號(hào)為A44E。2.1.3 溫度傳感器 方案一:采用熱敏電阻可滿足測(cè)溫要求,但熱敏電阻精度低,重復(fù)性和可靠性較差,對(duì)于精度要求較高的測(cè)溫不適用,而且采用熱敏電阻要求復(fù)雜的電路和算法,增加了設(shè)計(jì)復(fù)雜程度。方案二:采用專用的集成溫度傳感器(如AD590、LM35/LM45)和數(shù)字化溫度傳感器如DS18B20、測(cè)溫,數(shù)字化溫度傳感器具有接口簡(jiǎn)單、直接數(shù)字量輸出、精確度高等優(yōu)點(diǎn)。DS18B20是DALLAS公司的最新單線數(shù)字溫度傳感器,它是世界上第一片支持“一線總線”接口的溫度傳感器。一線總線獨(dú)特而且

16、經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),它的測(cè)量溫度范圍為55125,在1085范圍內(nèi),精度為0.5,現(xiàn)場(chǎng)溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過程控制、測(cè)溫類消費(fèi)電子產(chǎn)品等,DS18B20支持35.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、更方便、更便宜、體積更小。DS18B20可以程序設(shè)定912位的分辨率,精度為0.5,分辨率設(shè)定及用戶設(shè)定的報(bào)警溫度存儲(chǔ)在E2PROM中,掉電后依然保存。因此,本方案選用DS18B20作為溫度測(cè)量傳感器。從精度方面和計(jì)算方面來考慮本次選擇DS18B20作為本次的溫度采集芯片。2.1.4 顯

17、示模塊方案一:數(shù)碼管顯示 數(shù)碼管分為共陰極數(shù)碼管和共陽極數(shù)碼管兩種,其結(jié)構(gòu)簡(jiǎn)單,成本低廉,實(shí)用性強(qiáng),應(yīng)用廣泛。數(shù)碼管的亮度高,控制簡(jiǎn)單。我們主要是利用數(shù)碼管的動(dòng)態(tài)掃描顯示來實(shí)現(xiàn)我們的顯示要求,但數(shù)碼只能顯示0-9和幾個(gè)固定的字母其余的都不能顯示這就是它的不足。數(shù)碼管具有很搞得清晰度即使的在陽光下也會(huì)保持一定的清晰度。在一些的特定場(chǎng)合數(shù)碼管用的比較多。方案二:液晶顯示液晶顯示器的主要原理是以電流刺激液晶分子產(chǎn)生點(diǎn)、線、面并配合背部燈管構(gòu)成畫面。液晶具有體積小、功耗低、顯示操作簡(jiǎn)單。但有一個(gè)不足的地方就是其使用的溫度范圍很窄,通用型液晶正常工作的溫度范圍為0度到+55即使是寬溫級(jí)液晶,其正常工作溫

18、度范圍為-20到+70度。就液晶1602而言每行能顯示16個(gè)字符,一共可以顯示兩行的,能顯示ASCII碼字符,如數(shù)字、大小寫字母等。本次設(shè)計(jì)中因要考慮要顯示溫度和轉(zhuǎn)速以及里程和節(jié)約單片機(jī)的I/O口減少外圍設(shè)備的角度,選擇使用液晶顯示,根據(jù)自己對(duì)1602的熟悉程度選用1602液晶。下圖2-1-4為1602液晶實(shí)物圖圖2-1-4 1602液晶實(shí)物圖2.1.5 方案確定 方案最終決定CPU選用AT89S52為控制芯片,測(cè)速選用霍爾傳感器,測(cè)溫選用DS18B20溫度傳感器,顯示模塊選用1602液晶顯示。2.2 系統(tǒng)結(jié)構(gòu) 溫度采集AT89S52 主機(jī)顯示模塊速度采集電源時(shí)鐘電路按鍵電路第三章 硬件模塊設(shè)

19、計(jì)介紹3.1 AT89S52單片機(jī)功能介紹AT89S52為 ATMEL 所生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flsah存儲(chǔ)器。3.1.1 AT89S52主要功能1、擁有靈巧的8位CPU和在系統(tǒng)可編程Flash2、晶片內(nèi)部具時(shí)鐘振蕩器(傳統(tǒng)最高工作頻率可至 12MHz)3、內(nèi)部程序存儲(chǔ)器(ROM)為 8KB4、內(nèi)部數(shù)據(jù)存儲(chǔ)器(RAM)為 256字節(jié)5、32 個(gè)可編程I/O 口線6、8 個(gè)中斷向量源7、三個(gè) 16 位定時(shí)器/計(jì)數(shù)器8、三級(jí)加密程序存儲(chǔ)器9、全雙工UART串行通道3.1.2 AT89S52各引腳功能介紹: 1)主電源引腳Vss和VccVCC(40腳):

20、AT89S52電源正端輸入,接+5V。VSS(20腳):電源地端。2)外部晶振引腳XTAL1和XTAL2XTAL1(18腳):?jiǎn)涡酒到y(tǒng)時(shí)鐘的反相放大器輸入端。XTAL2(19腳):系統(tǒng)時(shí)鐘的反相放大器輸出端。AT89S52內(nèi)部有一個(gè)時(shí)鐘振蕩電路,一般在設(shè)計(jì)上只要在 XTAL1 和 XTAL2 上接上一只石英振蕩晶振和電容組成并聯(lián)諧振回路,與內(nèi)部振蕩電路就產(chǎn)生自激振蕩。如下圖所示,晶振可以再1.2-12MHz之間選擇,此外在兩引腳與地之間加入電容值可以在5-30PF之間選擇。電容的大小可起到頻率微調(diào),使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)的作用。XTAL1XTAL2C1C2晶振3)復(fù)位引腳RST/V

21、pdRESET/Vpd(9腳):AT89S52的重置引腳,高電平動(dòng)作,當(dāng)要對(duì)芯片重置時(shí),只要對(duì)此引腳電平提升至高電平并保持兩個(gè)機(jī)器周期以上的時(shí)間,AT89S52便能完成系統(tǒng)重置的各項(xiàng)動(dòng)作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址0000H處開始讀入程序代碼而執(zhí)行程序。在VCC掉電期間,此引腳可接上備用電源,由Vpd向內(nèi)部提供備用電源,以保持內(nèi)部RAM中的數(shù)據(jù)。常用的復(fù)位電路如下圖所示。RSTSm22u10k104+VCC4)EA/VppEA/Vpp(31腳):EA為英文External Access的縮寫,表示存取外部程序代碼之意,低電平動(dòng)作,也就是說當(dāng)此引腳接低電平后,系統(tǒng)會(huì)

22、取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。當(dāng)EA/Vpp為高電平時(shí),訪問內(nèi)部程序存儲(chǔ)器。5)ALE/PROGALE/PROG(30腳):ALE是英文Address Latch Enable的縮寫,表示地址鎖存器啟用信號(hào)。AT89S52可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0A7)鎖進(jìn)鎖存器中,因?yàn)锳T89S52是以多工的方式送出地址及數(shù)據(jù)。平時(shí)在程序執(zhí)行時(shí)ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅(qū)動(dòng)其他周邊晶片的時(shí)基輸入。此外在燒錄8751程序代碼時(shí),此引腳會(huì)被當(dāng)成程序規(guī)劃的特殊功能來使用。6)/PSEN/PSEN(29

23、腳):此為Program Store Enable的縮寫,其意為程序儲(chǔ)存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(shí)(EA=0),會(huì)送出此信號(hào)以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S52可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器可以合并在一起而共用64K的定址范圍。7)PORT0(P0.0P0.7)PORT0(P0.0P0.7)(32-39腳):端口0是一個(gè)8位寬的開路汲極(Open Drain)雙向輸出入端口,共有8個(gè)位,P0.0表示位0,P0.1表示位1,依此類推。其他三個(gè)I/O端口(P1、P2、P3)則不具有此

24、電路組態(tài),而是內(nèi)部有一提升電路,P0在當(dāng)做I/O用時(shí)可以推動(dòng)8個(gè)LS的TTL負(fù)載。如果當(dāng)EA引腳為低電平時(shí)(即取用外部程序代碼或數(shù)據(jù)存儲(chǔ)器),P0就以多工方式提供地址總線(A0A7)及數(shù)據(jù)總線(D0D7)。設(shè)計(jì)者必須外加一鎖存器將端口0送出的地址栓鎖住成為A0A7,再配合端口2所送出的A8A15合成一完整的16位地址總線,而定址到64K的外部存儲(chǔ)器空間。8)PORT2(P2.0P2.7)PORT2(P2.0P2.7)(21-28腳):端口2是具有內(nèi)部提升電路的雙向I/O端口,每一個(gè)引腳可以推動(dòng)4個(gè)LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來使用。P2除了當(dāng)做一般I/

25、O端口使用外,若是在AT89S52擴(kuò)充外接程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),也提供地址總線的高字節(jié)A8A15,這個(gè)時(shí)候P2便不能當(dāng)做I/O來使用了。9)PORT1(P1.0P1.7)PORT1(P1.0P1.7)(1-8腳):端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)LS TTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)做定時(shí)器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。10)PORT3(P3.0P3.7)PORT3(P3.0P3.7)(10-17腳):端口3也具有內(nèi)部提

26、升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)TTL負(fù)載,同時(shí)還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋F湟_分配如下:P3.0:RXD,串行通信輸入。P3.1:TXD,串行通信輸出。P3.2:INT0,外部中斷0輸入。P3.3:INT1,外部中斷1輸入。P3.4:T0,計(jì)時(shí)計(jì)數(shù)器0輸入。P3.5:T1,計(jì)時(shí)計(jì)數(shù)器1輸入。P3.6:WR:外部數(shù)據(jù)存儲(chǔ)器的寫入信號(hào)。P3.7:RD,外部數(shù)據(jù)存儲(chǔ)器的讀取信號(hào)。3.1.3 中斷源 中斷時(shí)為使用單片機(jī)具有對(duì)外部或內(nèi)部隨機(jī)發(fā)生的時(shí)間實(shí)時(shí)處理而設(shè)置的,中斷功能的存在,很大程度上提高了

27、單片機(jī)的處理外部或內(nèi)部時(shí)間的能力。AT89S52單片機(jī)有6個(gè)中斷源,它們的符號(hào)、名稱及產(chǎn)生的條件分別解釋如下:INT0:外部中斷0,由P3.2端口線引入,低電平或下降沿引起。INT1:外部中斷1,由P3.3端口線引入,低電平或下降沿引起。T0:定時(shí)器/計(jì)數(shù)器0中斷,由T0計(jì)數(shù)器計(jì)滿回零引起。T1:定時(shí)器/計(jì)數(shù)器1中斷,由T1計(jì)數(shù)器計(jì)滿回零引起。T2:定時(shí)器/計(jì)數(shù)器2中斷,由T2計(jì)數(shù)器計(jì)滿回零引起。TI/RI:串行口中斷,串行端口完成一幀字符發(fā)送/接收后引起。以上6個(gè)中斷源中,T2是52單片機(jī)特有的,它們默認(rèn)中斷級(jí)別如下:中斷源中斷級(jí)別序號(hào)(C語言用)入口地址(匯編)INT0外部中斷0最高000

28、03HT0定時(shí)器/計(jì)數(shù)器0中斷第21000BHINT1外部中斷1第320013HT1定時(shí)器/計(jì)數(shù)器1中斷第43001BHTI/RI串行口中斷第540023HT2定時(shí)器/計(jì)數(shù)器2中斷最低5002BH 表3.1.1 52單片機(jī)中斷級(jí)別 1)中斷允許寄存器IE 中斷允許寄存器用來設(shè)定各個(gè)中斷源的打開和關(guān)閉,IE在特殊功能寄存器中,字節(jié)地址為A8H,位地址(由地位到高位)分別是A8HAFH,該寄存器可進(jìn)行位尋址,即可對(duì)該寄存器的每位進(jìn)行單獨(dú)操作。單片機(jī)復(fù)位時(shí)IE全部被清0.各定義見下表3.1.2:表3.1.2 中斷允許寄存器IE位序號(hào)D7D6D5D4D3D2D1D0位符號(hào)EA-ET2ESET1EX1E

29、T0EX0位地址AFH-ADHACHABHAAHA9HA8HEA全局中斷允許位EA=1,打開全局中斷控制,在此條件下,由各個(gè)中斷控制位確定相應(yīng)中斷打開和關(guān)閉。EA=0,關(guān)閉全部中斷。 - ,無效位ET2定時(shí)器/計(jì)數(shù)器2中斷允許位ET2=1,打開T2中斷。ET2=0,關(guān)閉T2中斷。ES串行口中斷允許位ES=1,打開串行口中斷ES=0,關(guān)閉串行口中斷ET1定時(shí)器/計(jì)數(shù)器1中斷允許位ET1=1,打開T1中斷。ET1=0,關(guān)閉T1中斷。EX1外部中斷1中斷允許位EX1=1,打開外部中斷1中斷EX1=0,關(guān)閉外部中斷1中斷ET0定時(shí)器/計(jì)數(shù)器0中斷允許位ET0=1,打開T0中斷。ET0=0,關(guān)閉T0中斷

30、。EX0外部中斷0中斷允許位EX0=1,打開外部中斷0中斷EX0=0,關(guān)閉外部中斷0中斷2)中斷優(yōu)先級(jí)寄存器IP中斷優(yōu)先級(jí)寄存器在特殊功能寄存器中,字節(jié)地址為B8H,位地址(由低位到高位)分別是B8H-BFH,IP用來設(shè)定各個(gè)中斷源屬于兩級(jí)中斷中哪一級(jí)。該寄存器可進(jìn)行位尋址,即可對(duì)該寄存器的每一位進(jìn)行單獨(dú)操作。單片機(jī)復(fù)位時(shí)IP全部被清0,各位定義見表3.1.3:表3.1.3中斷優(yōu)先級(jí)寄存器IP位序號(hào)D7D6D5D4D3D2D1D0位符號(hào)-PSPT1PX1PT0PX0位地址-BCHBBHBAHB9HB8H- 無效位PS串行口中斷優(yōu)先級(jí)控制位PS=1,串行口中斷定義為高優(yōu)先級(jí)中斷。PS=0,串行口

31、中斷定義為低優(yōu)先級(jí)中斷。PT1定時(shí)器/計(jì)數(shù)器1中斷優(yōu)先級(jí)控制位PT1=1,定時(shí)器/計(jì)數(shù)器1中斷定義為高優(yōu)先級(jí)中斷。PT1=0,定時(shí)器/計(jì)數(shù)器1中斷定義為低優(yōu)先級(jí)中斷。PX1外部中斷1中斷優(yōu)先級(jí)控制位PX1=1,外部中斷1定義為高優(yōu)先級(jí)中斷。PX1=0,外部中斷1定義為低優(yōu)先級(jí)中斷。PT0定時(shí)器/計(jì)數(shù)器0中斷優(yōu)先級(jí)控制位PT0=1,定時(shí)器/計(jì)數(shù)器0中斷定義為高優(yōu)先級(jí)中斷。PT0=0,定時(shí)器/計(jì)數(shù)器0中斷定義為低優(yōu)先級(jí)中斷。PX0外部中斷0中斷優(yōu)先級(jí)控制位PX0=1,外部中斷0定義為高優(yōu)先級(jí)中斷。PX0=0,外部中斷0定義為低優(yōu)先級(jí)中斷。3)定時(shí)器/計(jì)數(shù)器工作方式寄存器TMOD 定時(shí)器/計(jì)數(shù)器工作

32、方式寄存器在特殊功能寄存器中,字節(jié)地址為89H,不能位尋址,TMOD用來確定定時(shí)器的工作方式及功能選擇。單片機(jī)復(fù)位時(shí)TMOD全部被清0。其各位的定義如表3.1.4:表3.1.4 定時(shí)器/計(jì)數(shù)器工作方式寄存器TMOD位序號(hào)D7D6D5D4D3D2D1D0位符號(hào)GATEC/TM1M0GATEC/TM1M0定時(shí)器1定時(shí)器0由表3.1.4可知,TMOD的高4位用于設(shè)置定時(shí)器1,低4位用來設(shè)置定時(shí)器0。對(duì)應(yīng)4位的含義如下:GATE門控制位GATE=0,定時(shí)器/計(jì)數(shù)器啟動(dòng)與停止僅受TCON寄存器中TRX(X=0,1)來控制。GATE=1,定時(shí)器/計(jì)數(shù)器啟動(dòng)與停止由TCON寄存器中TRX(X=0,1)和外部

33、中斷引腳(INT0和INT1)上的電平狀態(tài)來共同控制。C/T定時(shí)器模式和計(jì)數(shù)器模式選擇位C/T=1,為計(jì)數(shù)器模式;C/T=0,為定時(shí)器模式。M1M0工作方式選擇位每個(gè)定時(shí)器/計(jì)數(shù)器都有4種工作方式,它們由M1M0設(shè)定,對(duì)應(yīng)關(guān)系表3.1.5:表3.1.5 定時(shí)器/計(jì)數(shù)器的4種工作方式M1M0 工作方式00方式0,為13位定時(shí)器/計(jì)數(shù)器01方式1,為16位定時(shí)器/計(jì)數(shù)器10方式2,8位初值自動(dòng)重裝的8位定時(shí)器/計(jì)數(shù)器11方式3,僅適用于T0,分成兩個(gè)8位計(jì)數(shù)器,T1停止計(jì)數(shù)4) 定時(shí)器/計(jì)數(shù)器控制寄存器TCON定時(shí)器/計(jì)數(shù)器控制寄存器在特殊功能寄存器中,字節(jié)地址為88H,位地址(由低位到高位)分別

34、是88H-8FH,該寄存器可進(jìn)行位尋址。TCON寄存器用來控制定時(shí)器的啟、停,標(biāo)志定時(shí)器溢出和中斷情況。單片機(jī)復(fù)位時(shí)TCON全部被清0。其各位定義如表3.1.6.其中TF1、TR1、TF0和TR0位用于定時(shí)器/計(jì)數(shù)器;IE1、IT1、IE0和IT0用于外部中斷。表3.1.6 定時(shí)器/計(jì)數(shù)器控制寄存器TCON位序號(hào)D7D6D5D4D3D2D1D0位符號(hào)TF1TR1TF0TR0IE1IT1IE0IT0位地址8FH8EH8DH8CH8BH8AH89H88HTF1定時(shí)器1溢出標(biāo)志位當(dāng)定時(shí)器1計(jì)滿溢出時(shí),由硬件使TF1置1,并且申請(qǐng)中斷。進(jìn)入中斷服務(wù)程序后,由硬件自動(dòng)清0。需要注意的是,如果使用定時(shí)器的

35、中斷,那么該位完全不用人為去操作但是如果使用軟件查詢方式的話,當(dāng)查詢到該位置1后,就需要用軟件清0。TR1定時(shí)器1運(yùn)行控制位由軟件清0關(guān)閉定時(shí)器1。當(dāng)GATE=1,且INT1為高電平時(shí),TR1置1啟動(dòng)定時(shí)器1;當(dāng)GATE=0,TR1置1啟動(dòng)定時(shí)器1;TF0定時(shí)器0溢出標(biāo)志其功能及操作方法同TF1。TR0定時(shí)器0運(yùn)行控制位其功能及操作方法同TR1。IE1外部中斷1請(qǐng)求標(biāo)志當(dāng)IT1=0時(shí),位電平觸發(fā)方式,每個(gè)機(jī)器周期的S5P2采樣INT1引腳,若INT1腳位低電平,則置1,否則IE1清0.當(dāng)IT1=1時(shí),INT1位跳變沿觸發(fā)方式,當(dāng)?shù)谝粋€(gè)機(jī)械周期采樣到INT1位低電平時(shí),則IE1=1,表示外部中斷

36、1正在向CPU申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷,轉(zhuǎn)向中斷服務(wù)程序時(shí),該位由硬件清0。IT1外部中斷1觸發(fā)方式位IT1=0,為電平觸發(fā)方式,引腳INT1上低電平有效。IT1=1,為跳變沿觸發(fā)方式,應(yīng)繳INT1上的電平從高到低的負(fù)跳變有效。IE0外部中斷0請(qǐng)求標(biāo)志其功能及操作方法同IE1。IT0外部中斷0觸發(fā)方式選擇位。 其功能及操作方法同IT1。3.2 測(cè)速模塊設(shè)計(jì)3.2.1 霍爾測(cè)速的方法 在科技發(fā)展的今天測(cè)速已廣泛應(yīng)用在人們的生產(chǎn)生活。過去人們是通過軸的連接利用機(jī)械比來換算來測(cè)得速度,因?yàn)槿藗儗?duì)精度的要求越來越高,現(xiàn)在主要是根據(jù)脈沖測(cè)速,本系統(tǒng)設(shè)計(jì)就是利用脈沖來測(cè)速的。脈沖測(cè)速最典型的方法有測(cè)頻率

37、(M法)和測(cè)周期(T法)。 M測(cè)速法是利用一段固定時(shí)間間隔內(nèi)霍爾傳感器產(chǎn)生的脈沖數(shù)來確定轉(zhuǎn)速。T測(cè)速法是通過測(cè)量霍爾傳感器產(chǎn)生的兩個(gè)相鄰脈沖的時(shí)間間隔,即脈沖周期來確定轉(zhuǎn)速。本系統(tǒng)設(shè)計(jì)主要是利用A44E霍爾傳感器采用M法來測(cè)速的。 本設(shè)計(jì)系統(tǒng)中的計(jì)算速度的計(jì)算公式: V=(2/z) f 式中r轉(zhuǎn)盤半徑;z磁粒數(shù)量;f轉(zhuǎn)速脈沖頻率。對(duì)于確定的系統(tǒng),2z為常數(shù),所以車速計(jì)算的誤差分析轉(zhuǎn)換成轉(zhuǎn)速輸出脈沖頻率的誤差分析。3.2.2 霍爾傳感器的工作原理 A44E芯片屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(4.518 V) ,其輸出的信號(hào)符合 TTL 電平標(biāo)準(zhǔn)可以直接接到單片機(jī)的 I/ O 端口上,

38、而且其最高檢測(cè)頻率可達(dá)到1 MHz。A44E霍爾開關(guān)集成電路應(yīng)用霍爾效應(yīng)原理,采用半導(dǎo)體集成技術(shù)制造的磁敏電路,它是由電壓調(diào)整器、 霍爾電壓發(fā)生器、 差分放大器、 史密特觸發(fā)器,溫度補(bǔ)償電路和集電極開路的輸出級(jí)組成的磁敏傳感電路,其輸入為磁感應(yīng)強(qiáng)度,輸出是一個(gè)數(shù)字電壓信號(hào)。下圖3-2為開關(guān)型霍爾傳感器的內(nèi)部結(jié)構(gòu)。圖3-3為霍爾效應(yīng)原理圖 圖3-2 開關(guān)型霍爾傳感器結(jié)構(gòu)圖 圖3-3 霍爾效應(yīng)原理圖霍爾傳感器的工作原理:當(dāng)輸入電壓Uc經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍爾片的兩端,由霍爾效應(yīng)原理得知,當(dāng)霍爾片處在磁場(chǎng)中時(shí),霍爾電勢(shì)發(fā)生器就會(huì)有一個(gè)霍爾電壓UH輸出,再經(jīng)放大器放大后,送至施密特觸發(fā)器整形,當(dāng)施加的磁

39、場(chǎng)達(dá)到該器件的工作點(diǎn)時(shí),施密特電路翻轉(zhuǎn),使OC門開關(guān)。3.2.3 霍爾傳感器與單片機(jī)應(yīng)用 霍爾傳感器 A44E芯片的引腳接線圖見圖3-4 所示。 圖3-4 引腳1 是電源 V cc ,引腳 2 是地 GND ,引腳 3 是輸出OUT。霍爾器件的工作電壓不得超過規(guī)定的 V cc ,大部分霍爾開關(guān)均為OC 輸出。因此,輸出應(yīng)接負(fù)載電阻,其數(shù)值值取決于負(fù)載電流的大小,不得超負(fù)載使用。A44E的磁輸入檢測(cè):A44E的磁輸入為單極磁場(chǎng),即施加磁場(chǎng)的方式是改變磁鐵和 A44E之間的距離。判定磁鐵極性方法是:把磁鐵的兩個(gè)極分別靠近 A44E 的正面,當(dāng)其 OUT引腳電平由高變低時(shí)即為正確的安裝位置,如圖3-

40、5 所示。 A44E 只對(duì)磁鐵的 S 級(jí)有響應(yīng)而對(duì) N極沒有絲毫響應(yīng)。安裝時(shí)一定要讓磁鐵的 S極對(duì)準(zhǔn) A44E的反應(yīng)傳感區(qū)。 圖3-6 霍爾傳感器A44E的輸出特性由圖3-6可知,當(dāng)外加的磁感應(yīng)強(qiáng)度超過動(dòng)作點(diǎn)Bop時(shí),傳感器輸出低電平,但磁感應(yīng)強(qiáng)度降到動(dòng)作點(diǎn)Bop以下時(shí),傳感器輸出電平不變,一直要降到釋放點(diǎn)BRE時(shí),傳感器才由低電平躍變?yōu)楦唠娖?。Bop與Bre之間的滯后(或稱為回差)使開關(guān)動(dòng)作更為可靠。 圖3-7為霍爾傳感器測(cè)速簡(jiǎn)易圖 圖3-7A44E與單片機(jī)硬件電路連接。(如下圖3-8所示)3.3 溫度測(cè)量模塊介紹溫度傳感器的種類眾多,在應(yīng)用與高精度、高可靠性的場(chǎng)合時(shí)DALLAS(達(dá)拉斯)公

41、司生產(chǎn)的DS18B20溫度傳感器當(dāng)仁不讓。超小的體積,超低的硬件開消,抗干擾能力強(qiáng),精度高,附加功能強(qiáng),與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)位的數(shù)字值讀數(shù)方式。使得DS18B20更受歡迎。對(duì)于我們普通的電子愛好者來說,DS18B20的優(yōu)勢(shì)更是我們學(xué)習(xí)單片機(jī)技術(shù)和開發(fā)溫度相關(guān)的小產(chǎn)品的不二選擇。了解其工作原理和應(yīng)用可以拓寬您對(duì)單片機(jī)開發(fā)的思路。3.3.1 DS18B20的主要特征: 獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;多個(gè)DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;無須外部器件;可通過數(shù)據(jù)線供電,電壓范圍為3.05.5;零待

42、機(jī)功耗;溫度以或位數(shù)字;用戶可定義報(bào)警設(shè)置;報(bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件;負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作; 3.3.2 DS18B20引腳結(jié)構(gòu)圖及其功能描述TO92封裝的DS18B20的引腳排列見下圖,其引腳功能描述見表3.2.1。 圖3.2.1 DS18B20實(shí)物圖及封裝表3.2.1DS18B20詳細(xì)引腳功能描述序號(hào)名稱引腳功能描述1GND地信號(hào)2DQ數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源。3VDD可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。C64 位ROM和單線接口高

43、速緩存存儲(chǔ)器與控制邏輯溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL配置寄存器8位CRC發(fā)生器Vdd3.3.3 DS18B20內(nèi)部結(jié)構(gòu)I/O 圖3.2.2 DS18B20內(nèi)部結(jié)構(gòu)DS18B20采用腳PR35封裝或腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖3.2.2所示64位ROM的結(jié)構(gòu)開始位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后位是前面56位的CRC檢驗(yàn)碼,這也是多個(gè)DS18B20可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器和,可通過軟件寫入戶報(bào)警上下限。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存和一個(gè)非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如

44、表3.2.2所示。表3.2.2表高速暫存RAM寄存器內(nèi)存字節(jié)地址溫度值低位(LSB)0溫度值高位(MSB)1高溫限制(TH)2低溫限制(TL)3配置寄存器4保留5保留6保留7CRC校驗(yàn)位8高速暫存器RAM由9個(gè)字節(jié)的存儲(chǔ)器組成。第0-1個(gè)字節(jié)是溫度的顯示位;第2和第3個(gè)字節(jié)是復(fù)的TH和TL,同時(shí)第2和第3個(gè)字節(jié)的數(shù)字可以更新;第4個(gè)字節(jié)是配置寄存器,同時(shí)第4個(gè)字節(jié)的數(shù)字可以更新;第5、6、7三個(gè)字節(jié)是保留的??呻姴脸鼸2POROM又包括溫度觸發(fā)器TH和TL,以及一個(gè)配置寄存器。表3.2.3列出了溫度數(shù)據(jù)在高速暫存器RAM的第0和第1個(gè)字節(jié)中的存儲(chǔ)格式。表3.2.3 溫度數(shù)據(jù)存儲(chǔ)格式位7位6位5

45、位4位3位2位1位0232221202-12-22-32-4位15位14位13位12位11位10位9位8SSSSS262524表3.2.4 DS18B20溫度轉(zhuǎn)換的時(shí)間比較長,而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存的第、字節(jié)保留未用,表現(xiàn)為全邏輯。第字節(jié)讀出前面所有字節(jié)的CRC碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第、字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以0

46、.0625LSB形式表示。當(dāng)符號(hào)位時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表3.2.4 DS18B20溫度轉(zhuǎn)換時(shí)間表 DS18B20完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值與RAM中的TH、T字節(jié)內(nèi)容作比較。若TH或TTL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只DS18B20同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。在64位ROM的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)ROM的前56位來計(jì)算CRC值,并和存入DS18B20的CRC

47、值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。DS18B20的測(cè)溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器、溫度寄存器中,計(jì)數(shù)器和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器的預(yù)

48、置值減到時(shí),溫度寄存器的值將加,減法計(jì)數(shù)器的預(yù)置將重新被裝入,減法計(jì)數(shù)器重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù)到時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門仍未關(guān)閉就重復(fù)上述過程,直到溫度寄存器值大致被測(cè)溫度值。另外,由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。3.3.4 DS18B20接口電路和工作時(shí)序DS18B20可以采用

49、兩種方式供電,一種是采用電源供電方式,此時(shí)DS18B20的1腳接地,2腳作為信號(hào)線,3腳接電源。另一種是寄生電源供電方式,如圖3.2.3 所示單片機(jī)端口接單線總線,為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來完成對(duì)總線的上拉。圖3.2.3 DS18B20的接口電路當(dāng)DS18B20處于寫存儲(chǔ)器操作和溫度A/D轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開啟時(shí)間最大為10us。采用寄生電源供電方式時(shí)VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。由于DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。DS18B20有嚴(yán)格的通信

50、協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、寫數(shù)據(jù)、讀數(shù)據(jù)。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。(1)DS18B20的初始化時(shí)序1) 先將數(shù)據(jù)線置高電平12) 延時(shí)(該時(shí)間要求不是很嚴(yán)格,但盡可能短一點(diǎn))3) 數(shù)據(jù)線拉到低電平04) 延時(shí)750us(該時(shí)間范圍可以再480-960us)5) 數(shù)據(jù)線拉到高電平16) 延時(shí)等待。如果初始化成功則在15-60ms內(nèi)產(chǎn)生一個(gè)由DS18B20返回的

51、低電平0,據(jù)該狀態(tài)可以確定它的存在。但應(yīng)注意,不能無限等待,不然會(huì)是程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)判斷7) 若CPU讀到數(shù)據(jù)線上的低電平0后,還要進(jìn)行延時(shí),其延時(shí)的時(shí)間從發(fā)出高電平算起最少480us8) 將數(shù)據(jù)線再次拉到高電平1后結(jié)束(2)DS18B20的寫數(shù)據(jù) ) 數(shù)據(jù)線先置低電平0) 延時(shí)確定的時(shí)間為15us) 按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)送一位) 延時(shí)時(shí)間為45us) 將數(shù)據(jù)線拉到高電平1) 重復(fù)1)-5)步驟,直到發(fā)送完整個(gè)字節(jié)) 最后將數(shù)據(jù)線拉到(2)DS18B20的讀數(shù)據(jù)) 將數(shù)據(jù)線拉高到) 延時(shí)us) 將數(shù)據(jù)線拉低到0) 延時(shí)6us) 將數(shù)據(jù)線拉高到1) 延時(shí)4us)

52、讀數(shù)據(jù)線的狀態(tài)得到一個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理) 重復(fù)1)-7)步驟,直到讀取完一個(gè)字節(jié)3.4 1602液晶顯示模塊 在顯示模塊中,本次系統(tǒng)設(shè)計(jì)是采用LCD1602顯示器。因?yàn)榭紤]到顯示的數(shù)據(jù)量比較多,使用LCD1602可以省下單片機(jī)的端口,同時(shí)也簡(jiǎn)化了硬件和程序。但它與數(shù)碼管在使用時(shí)是不同的,它需要在程序驅(qū)動(dòng)并要寫一些指令才能按照我們的要求工作。3.4.1 LCD1062的管腳功能 1602的引腳圖如下圖3-4-1 引腳說明:1602字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來的2條線施背光電源線。本次設(shè)計(jì)是采用1602。每個(gè)引腳的定義如下:1腳:VSS為地電源。2腳:VDD接5V正電源。3腳:V0為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整對(duì)比度。4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。5腳:RW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論