版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(論文)正文</p><p> 2007年 6 月 9 日</p><p><b> 摘 要</b></p><p> 本文主要介紹了基于氣壓傳感器MPX4105的精密數(shù)字氣壓計系統(tǒng)的硬件組成、軟件設(shè)計及其工作原理。該系統(tǒng)通過氣壓傳感器MPX4105獲得與大氣壓相對應(yīng)的模擬電壓值,并經(jīng)過電壓/頻率(V/F)
2、轉(zhuǎn)換模塊轉(zhuǎn)換為數(shù)字脈沖,再通過單片機對此脈沖序列的計數(shù)等處理后獲得實際的氣壓值,最后通過數(shù)碼管顯示電路顯示。單片機是本系統(tǒng)的核心器件,它對本設(shè)計中的信號采集、控制和數(shù)據(jù)處理起著重要的作用。該方法制成的數(shù)字氣壓計攜帶方便,操作簡單,精確度高,完全符合設(shè)計要求。</p><p> 關(guān)鍵詞:氣壓計;氣壓傳感器;V/F轉(zhuǎn)換器; 單片機</p><p><b> Abstract<
3、;/b></p><p> This article mainly introduced based on one kind of pneumatic transmitter MPX4105 precise numeral air gage system hardware composition, the software design and its the principle of work. Thi
4、s system obtains the simulation voltage value through pneumatic transmitter MPX4105 which corresponds with the atmospheric pressure, and (V/F) transforms the module after the voltage/frequency to transform into the digit
5、al pulse, in counts regarding this through the monolithic integrated circuit pulse sequenc</p><p> Key words:Air gage Pneumatic transmitter V/F switch Monolithic integrated circuit</p><p>
6、;<b> 目 錄</b></p><p><b> 第一章 緒論1</b></p><p> 1.1 壓力測量的歷史1</p><p> 1.1.1 機械測量技術(shù)1</p><p> 1.1.2 電測技術(shù)1</p><p> 1.2.3
7、傳感器時代1</p><p> 1.2本設(shè)計的主要工作2</p><p> 1.3本設(shè)計的主要目的2</p><p> 第二章 單片機概述3</p><p> 2.1單片機的歷史及發(fā)展概況3</p><p> 2.2 單片機的發(fā)展趨勢3</p><p> 2.3
8、 單片機的應(yīng)用4</p><p> 2.3.1 單片機的特點4</p><p> 2.3.2單片機的應(yīng)用范圍5</p><p> 2.4 本章小結(jié)5</p><p> 第三章ATMEL系列單片機6</p><p> 3.1 ATMEL系列單片機簡介6</p><p&
9、gt; 3.2 ATMEL單片機型號的選擇6</p><p> 第四章系統(tǒng)硬件設(shè)計9</p><p> 4.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計9</p><p> 4.2 主要器件選擇9</p><p> 4.2.1氣壓傳感器9</p><p> 4.2.2 電壓/頻率轉(zhuǎn)換器10</p>
10、;<p> 4.2.3 三端穩(wěn)壓器12</p><p> 4.3 電路原理圖設(shè)計12</p><p> 4.3.1 氣壓傳感器和V/F轉(zhuǎn)換電路原理圖設(shè)計12</p><p> 4.3.2電源及單片機電路原理圖設(shè)計13</p><p> 4.3.35位7段數(shù)碼管顯示驅(qū)動電路原理圖設(shè)計14</p&
11、gt;<p> 4.3 本章小結(jié)16</p><p> 第五章系統(tǒng)軟件設(shè)計17</p><p> 5.1C語言介紹17</p><p> 5.2由頻率計算出氣壓值17</p><p> 5.3 程序流程圖17</p><p> 5.4 程序代碼18</p>
12、<p> 5.5 本章小結(jié)18</p><p><b> 結(jié) 論19</b></p><p><b> 致 謝20</b></p><p><b> 參考文獻21</b></p><p><b> 附 錄22<
13、/b></p><p><b> 第一章 緒論</b></p><p> 在工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力、流量、速度和開關(guān)量都是常用的主要被控參數(shù)。例如,在冶金工業(yè)、化工工業(yè)、電力工業(yè)、機械制造和食品加工等許多領(lǐng)域中,人們都需要對加熱爐、熱處理爐、和鍋爐中的氣壓進行監(jiān)測和控制。氣壓計是利用壓敏元件將待測氣壓直接變換為容易檢測、傳輸?shù)碾娏骰螂妷盒盘?,?/p>
14、后再經(jīng)過后續(xù)電路處理并進行實時顯示的一種設(shè)備。其中的核心元件就是氣壓傳感器,它的監(jiān)視壓力大小、控制壓力變化以及物理參量的測量等方面起著重要作用。</p><p> 采用單片機對他們進行控制不僅具有控制方便、簡單和靈活性大等優(yōu)點,而且可以大幅度提高被控氣壓的技術(shù)指標,從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。</p><p> 1.1 壓力測量的歷史</p><p>
15、 1.1.1 機械測量技術(shù)</p><p> 1843年,法國科學(xué)家Lucien Vidie發(fā)明無液膜盒氣壓計,其以彈簧平衡代替液體來測量大氣壓力。彈簧在測量儀表中受壓力作用而伸長。Eugene Bourdon(Bourdon Sedeme公司創(chuàng)始人)使用Vidie的指示器方式,于1849年獲得用于更高壓力的彈性金屬曲管式壓力計的專利。</p><p> 1.1.2 電測技術(shù)<
16、;/p><p> 1930年,第一個壓力傳感器是一種轉(zhuǎn)換機構(gòu),在此機構(gòu)中,膜片、彈簧或Bourdon管的移動量變?yōu)殡娏坎糠郑瑝毫δて蔀殡娙莶糠?,指示器可動機構(gòu)成為電位計分支。</p><p> 1938年,加利福尼亞技術(shù)學(xué)院的E.E.Simmons和麻薩諸塞州技術(shù)學(xué)院的A.C.Ruge獨立地研制結(jié)合型應(yīng)變儀。Simmons較快地獲得了專利權(quán)。1955年,第一個應(yīng)變片提供綜合式全電阻電橋,
17、若把它粘結(jié)在膜片上,就可看到中心和邊緣的應(yīng)力是相對的。1965年,應(yīng)變片的膜片連接,總會引起滯后和非穩(wěn)定性。在60年代,Statham 提出第一個穩(wěn)定性好,滯后少的薄膜式傳感器。今天, 在大壓力的市場上它是主要的競爭者。</p><p> 1973年,WilliamR.Royle獲得以玻璃或石英為基礎(chǔ)的電容式傳感器的專利權(quán)。幾年后,1979年Kavlico的Bob Bell獲得以陶瓷為基礎(chǔ)的傳感器的專利權(quán), 此
18、技術(shù)填補了低壓范圍(薄膜不適宜)的空缺。今天,陶瓷膜片上帶有電阻。這使此技術(shù)廣泛地在非良好介質(zhì)的用途中得到應(yīng)用。</p><p> 1.2.3 傳感器時代</p><p> 1967年美國Minneapolis的Honeywell研究中心Art.R.Zias和John Egan獲得邊界約束型硅膜片的專利權(quán),1969年Hans W.Keller獲得網(wǎng)格式批量擴散硅芯片的專利權(quán), 此技術(shù)
19、利用了集成電路技術(shù)的巨大進展成果。</p><p> 現(xiàn)代傳感器的典型重量為0.01克,如果所有非晶態(tài)膜片具有固有的滯后現(xiàn)象, 那么用今天的工具也不能測出其精確的界限。</p><p> 2000年,擴散硅壓阻技術(shù)是最通用的技術(shù),其應(yīng)用的壓力范圍在絕對壓力、表壓和差壓狀況是從100mbar到1500bar。由于美國的公司未能發(fā)展合適的外殼,使此技術(shù)長期來比較緩慢地在非良好介質(zhì)的用途中應(yīng)
20、用。30年來,KELLER公司已使此技術(shù)迅猛發(fā)展并可與任何其它技術(shù)相匹敵。</p><p><b> 本設(shè)計的主要工作</b></p><p> 本設(shè)計是利用壓力傳感器MPX4105(摩托羅拉公司生產(chǎn)的集成壓力傳感器芯片)將被測氣壓轉(zhuǎn)換成模擬電壓輸出,然后利用V/F電壓/頻率轉(zhuǎn)換器(國家半導(dǎo)體公司的高精度V/F轉(zhuǎn)換芯片LM331)將電壓幅值轉(zhuǎn)換成與之成正比的脈沖序
21、列,通過測量該頻率,可以實現(xiàn)A/D轉(zhuǎn)換,最后進行數(shù)碼顯示的數(shù)字氣壓計的設(shè)計。</p><p> 1.給出測量系統(tǒng)的總體思路。</p><p> 2.根據(jù)實際需要以及各種氣壓傳感器的性能參數(shù),選擇合適的氣壓傳感器芯片。</p><p> 3.設(shè)計硬件電路,包括氣壓傳感器和V/F轉(zhuǎn)換電路和單片機電路原理部分以及電源部分C51程序設(shè)計,對于單片機而言,輸入信號為具有
22、一定頻率的脈沖序列,通過單片機內(nèi)部的計數(shù)器可以獲得此脈沖序列的頻率,此頻率對應(yīng)于某個大氣壓值,在設(shè)計程序是應(yīng)考慮如何將頻率轉(zhuǎn)換成該氣壓值。</p><p><b> 本設(shè)計的主要目的</b></p><p> 1.培養(yǎng)了我們的科學(xué)研究的思維方法,開發(fā)應(yīng)用工程技術(shù)的綜合能力,創(chuàng)新思維和分析解決問題的能力。</p><p> 2.通過設(shè)計,探
23、討了單片機在非電信號測量領(lǐng)域中的應(yīng)用,使我們具有將理論知識轉(zhuǎn)化為實際產(chǎn)品開發(fā)的基本能力,同時對理論學(xué)習(xí)中的不足也可以通過實際設(shè)計進行補充和再次學(xué)習(xí)。</p><p> 3.可以系統(tǒng)的掌握51 單片機 C語言應(yīng)用程序設(shè)計,氣壓傳感器和A/D轉(zhuǎn)換芯片的選擇,以及硬件電路的設(shè)計,并掌握其工作原理。</p><p> 第二章 單片機概述</p><p> 單片微型計
24、算機(簡稱單片機)作為微型計算機的一個很重要的分支,自70年代以來,以極其高的性能價格比,受到人們的重視和關(guān)注,應(yīng)用很廣,發(fā)展也很快。單片機體積小、重量輕、抗干擾能力強、價格低廉、可靠性高、靈活性好、開發(fā)較為容易。廣大工程技術(shù)人員通過學(xué)習(xí)有關(guān)單片機的知識后,也能依靠自己的力量來開發(fā)所希望的單片機系統(tǒng),并可獲得較高的經(jīng)濟效益。正因為如此,在我國,單片機已廣泛地應(yīng)用在智能儀器儀表、機電設(shè)備過程控制、自動控制、家用電器和數(shù)據(jù)處理等各個方面。&
25、lt;/p><p> 單片機的歷史及發(fā)展概況</p><p> 單片機是在一塊硅片上集成了中央處理器,存儲器和各種輸入、輸出接口,這樣一塊芯片具有一臺計算機的功能,因而被稱為單片微型計算機。由于單片機的硬件結(jié)構(gòu)與指令系統(tǒng)的功能都是按工業(yè)控制要求而設(shè)計的,常用在工業(yè)的檢測、控制裝置中,因而也稱為微控制器(Micro-Controller)或者嵌入式控制器(Embedded-Controlle
26、r)。</p><p> 單片機按照其用途可以分為通用型和專用型兩大類,根據(jù)其基本操作處理的位數(shù)可分為1位單片機、4位單片機、8位單片機、16位單片機、32位單片機。</p><p> 單片機的發(fā)展歷史可以劃分為四個階段:</p><p> 第一階段(1974~1976年):單片機初級階段。因工藝限制,單片機采用雙片的形式而且功能比較簡單。</p>
27、<p> 第二階段(1976~1978年):低性能單片機階段。以Inter公司制造的MCS-48單片機為代表。</p><p> 第三階段(1978~現(xiàn)在):高性能單片機階段。這個階段推出的單片機普遍帶有串行I/O口,多級中斷系統(tǒng),16位定時/計數(shù)器,片內(nèi)ROM、RAM容量加大,且尋址范圍可達64K字節(jié),有的片內(nèi)還帶有A/D轉(zhuǎn)換器。</p><p> 第四階段(1982
28、~現(xiàn)在):8位單片機鞏固發(fā)展及16位單片機、32位單片機推出階段。此階段的主要特征是一方面發(fā)展16位單片機、32位單片機及專用型單片機;另一方面不斷完善高檔8位單片機,改善其結(jié)構(gòu),以滿足不同的用戶需要。</p><p> 2.2 單片機的發(fā)展趨勢</p><p> 單片機的發(fā)展趨勢將是向大容量、高性能化,外圍電路內(nèi)裝化等方面發(fā)展。為滿足不同的用戶要求,各公司競相推出能滿足不同需要的產(chǎn)
29、品。</p><p><b> 1. CPU的改進</b></p><p> ?。?)采用雙CPU結(jié)構(gòu),以提高處理能力。</p><p> ?。?)增加數(shù)據(jù)總線寬度,單片機內(nèi)部采用16位數(shù)據(jù)總線,其處理力明顯優(yōu)于一般8位單片機。</p><p> ?。?)采用流水線結(jié)構(gòu)。</p><p> ?。?/p>
30、4)串行總線結(jié)構(gòu)。</p><p><b> 2. 存儲器的發(fā)展</b></p><p> ?。?)加大存儲容量。</p><p> (2)片內(nèi)EPROM開始EEPROM化。</p><p><b> (3)程序保密化。</b></p><p> 3. 片內(nèi)I/O的改
31、進</p><p> ?。?)增加并行口的驅(qū)動能力。</p><p> ?。?)增加I/O口的邏輯控制功能。</p><p> ?。?)有些單片機設(shè)置了一些特殊的串行接口功能,為單片機構(gòu)成網(wǎng)絡(luò)和系統(tǒng)提供了方便條件。</p><p> 4. 外圍電路內(nèi)裝化</p><p> 隨著集成度的不斷提高,有可能把眾多的外圍功
32、能器件集成在片內(nèi)。這也是單片機發(fā)展的必然趨勢。除了一般必須具有的ROM、RAM、定時/計數(shù)器、中斷系統(tǒng)外,隨著單片機檔次的提高,以適應(yīng)檢測、控制功能更高的要求,片內(nèi)集成的部件還有模/數(shù)轉(zhuǎn)換器、數(shù)/模轉(zhuǎn)換器、DMA控制器、中斷控制器、鎖相環(huán)、頻率合成器、字符發(fā)生器、聲音發(fā)生器、CRT控制器、譯碼驅(qū)動等。</p><p><b> 5. 低耗化</b></p><p>
33、 8位單片機中有二分之一的產(chǎn)品已COMS化,COMS芯片的單片機具有功耗小的優(yōu)點,而且為了充分發(fā)揮低功耗的特點,這類單片機普遍配置有Wait和Stop兩種工作方式。</p><p> 2.3 單片機的應(yīng)用</p><p> 單片機以其卓越的性能,得到了廣泛的應(yīng)用,已深入到各個領(lǐng)域。單片機應(yīng)用在檢測、控制領(lǐng)域中,具有如下特點。</p><p> 2.3.1
34、 單片機的特點</p><p> 1.小巧靈活、成本低、易于產(chǎn)品化。它能方便地組裝成各種智能式測控設(shè)備及各種智能儀器儀表。</p><p> 2.可靠性好,適應(yīng)溫度范圍寬。單片機芯片本身是按工業(yè)測控環(huán)境要求設(shè)計的,能適應(yīng)各種惡劣的環(huán)境,這是其他機種無法比擬的。</p><p> 3.易擴展,很容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),控制功能強。單片機的邏輯控制功能很強,指
35、令系統(tǒng)有各種控制功能用指令。</p><p> 4.可以很方便地實現(xiàn)多機和分布式控制。</p><p><b> 單片機的應(yīng)用范圍</b></p><p> 單片機的應(yīng)用范圍很廣,在下述的各個領(lǐng)域中得到了廣泛的應(yīng)用。</p><p> 1.工業(yè)方面:各種測控系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、工業(yè)機器人、智能化儀器、機電一體化
36、產(chǎn)品。</p><p> 2.智能儀器儀表方面:單片機應(yīng)用在智能儀器、儀表方面,不僅使傳統(tǒng)的儀器儀表發(fā)生根本的變革,也給傳統(tǒng)的儀器、儀表行業(yè)改造帶來了曙光。</p><p> 3.通訊方面:調(diào)制解調(diào)器、程控交換技術(shù)。</p><p> 4.民用方面:電子玩具、錄像機、激光唱機。</p><p> 5.導(dǎo)彈與控制方面:導(dǎo)彈控制、
37、魚雷制導(dǎo)控制、智能武器裝備、航天飛機導(dǎo)航系統(tǒng)。</p><p> 6.各種計算機外部設(shè)備及電器方面:打印機、硬盤驅(qū)動器、彩色與黑白復(fù)印機,磁帶機等。</p><p> 7.多機分布式系統(tǒng):可用單片機構(gòu)成分布式測控系統(tǒng),它使單片機應(yīng)用進入了一個新的水平。</p><p> 由上所述,單片機從家用電器、智能儀器儀表、工業(yè)控制到火箭導(dǎo)航尖端技術(shù)領(lǐng)域,單片機都發(fā)揮
38、著十分重要的作用。</p><p><b> 2.4 本章小結(jié)</b></p><p> 本章主要對單片機的歷史及發(fā)展?fàn)顩r、單片機的發(fā)展趨勢和單片機的應(yīng)用等作了簡要的介紹。</p><p> 單片機已經(jīng)無處不在,與我們生活更加相關(guān)并滲透入生活的方方面面,為我們方便生產(chǎn)和生活發(fā)揮了巨大的作用,在未來的社會主義工業(yè)化的建設(shè)中,單片機無疑會發(fā)揮
39、更大的作用的。</p><p> ATMEL系列單片機</p><p> 3.1 ATMEL系列單片機簡介</p><p> 美國ATMEL公司是世界上著名的高性能、低功耗、非易失性存儲器和數(shù)字集成電路的一流半導(dǎo)體制造公司。ATMEL公司最令人矚目的是E2PROM和閃速(Flash)存儲器技術(shù),一直處在世界領(lǐng)先地位。該公司把E2PROM和Flash存儲器技巧
40、巧妙地運用于單片機,并采用多種封裝形式和高標準質(zhì)量檢測。</p><p> ATMEL單片機可分為AT89、AT90、AT91和智能IC卡等四個系列,這些單片機內(nèi)部含有Flash存儲器,故它們在便攜類產(chǎn)品中大有用武之地。ATMEL單片機按使用環(huán)境可分為C(商業(yè))檔、I(工業(yè))檔、A(汽車)檔和M(軍用)檔,其中M檔產(chǎn)品的環(huán)境使用溫度為-55~+150℃。因此,ATMEL單片機除廣泛用于計算機外部設(shè)備、通信設(shè)備、
41、自動化工業(yè)控制、儀器儀表和各種消費類產(chǎn)品以外,還在航空航天儀表、雷達系統(tǒng)、導(dǎo)彈、智能自適應(yīng)儀器、機器人和各類武器系統(tǒng)中具有廣泛的應(yīng)用。</p><p> AT89系列單片機可分為標準型、抵擋型和高檔型三類,均屬于8位機。標準型單片機有AT89C51、AT89LV51、AT89C52、AT89LV52、AT89C55和AT89S8252和AT89S4D12等型號。其中,數(shù)字9表示內(nèi)含F(xiàn)lash存儲器,C表示CMO
42、S工藝,LV表示低電壓,S表示含有串行下載Flash存儲器,51、52和8252等表示型號。</p><p> 3.2 ATMEL單片機型號的選擇</p><p> 單片機芯片是本系統(tǒng)的核心器件,本設(shè)計選用ATMEL公司的單片機AT89C52,該芯片是美國公司生產(chǎn)的低電壓,高性能CMOS8位單片機,片內(nèi)含8k bytes的可反復(fù)擦寫的只讀程序存儲器(PEROM)和256 bytes的
43、隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強大的AT89C52單片機適合于許多較為復(fù)雜控制應(yīng)用場合。因此, 它完全可以滿足本設(shè)計中采集、控制和數(shù)據(jù)處理的需要。</p><p> AT89C52的引腳分布圖如圖3—1所示,它有40個引腳,32個外部雙向輸入/輸出
44、(I/O)端口,同時內(nèi)含2個外中斷口,3個16位可編程定時/計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89C52可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。</p><p> 圖3—1 AT89C52單片機引腳分布圖</p><p><b> VCC : 電源<
45、/b></p><p><b> GND: 接地</b></p><p> P0 口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在flash編程時,P0口也用來接收指令字節(jié);在
46、程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。</p><p> P1 口:P1 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動4 個TTL 邏輯電平。對P1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和時
47、器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX),在flash編程和校驗時,P1口接收低8位地址字節(jié)。</p><p> P2 口:P2 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動4 個TTL 邏輯電平。對P2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外
48、部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR)時,P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。</p><p> P3 口:P3 口是一個具有內(nèi)部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動4 個TTL 邏輯電平。對P3 端
49、口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)使用,在flash編程和校驗時,P3口也接收一些控制信號。</p><p> RST: 復(fù)位輸入。晶振工作時,RST腳持續(xù)2 個機器周期高電平將使單片機復(fù)位??撮T狗計時完成后,RST 腳輸出96 個晶振周期的高電平。特殊寄存器AUX
50、R(地址8EH)上的DISRTO位可以使此功能無效。DISRTO默認狀態(tài)下,復(fù)位高電平有效。</p><p> ALE/PROG:地址鎖存控制信號(ALE)是訪問外部程序存儲器時,鎖存低8 位地址的輸出脈沖。在flash編程時,此引腳(PROG)也用作編程輸入脈沖。</p><p> 在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強調(diào)
51、,在每次訪問外部數(shù)據(jù)存儲器時,ALE脈沖將會跳過。如果需要,通過將地址為8EH的SFR的第0位置 “1”,ALE操作將無效。這一位置 “1”,ALE 僅在執(zhí)行MOVX 或MOVC指令時有效。否則,ALE 將被微弱拉高。這個ALE 使能標志位(地址為8EH的SFR的第0位)的設(shè)置對微控制器處于外部執(zhí)行模式下無效。</p><p> PSEN:外部程序存儲器選通信號(PSEN)是外部程序存儲器選通信號。當(dāng)AT89C
52、52從外部程序存儲器執(zhí)行外部代碼時,PSEN在每個機器周期被激活兩次,而在訪問外部數(shù)據(jù)存儲器時,PSEN將不被激活。</p><p> EA/VPP:訪問外部程序存儲器控制信號。為使能從0000H 到FFFFH的外部程序存儲器讀取指令,EA必須接GND。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。在flash編程期間,EA也接收12伏VPP電壓。</p><p> XTAL1:振蕩器反相放
53、大器和內(nèi)部時鐘發(fā)生電路的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 通過以上介紹,使我們可以知道AT89C52單片機完全可以滿足本設(shè)計中信號采集、控制和數(shù)據(jù)處理的需要。</p><p><b> 系統(tǒng)硬件設(shè)計</b></p><p> 4.1 系統(tǒng)總體結(jié)構(gòu)設(shè)計</
54、p><p> 本系統(tǒng)的總體結(jié)構(gòu)框圖如圖4—1所示。</p><p> 圖4—1 單片機數(shù)字氣壓計系統(tǒng)結(jié)構(gòu)框圖</p><p> 在整個系統(tǒng)中,氣壓傳感器用來將被測氣壓轉(zhuǎn)換為模擬的電壓信號輸出,但此輸出信號不能直接交由單片機處理。因此,需要經(jīng)過V/F轉(zhuǎn)換模塊把氣壓傳感器輸出的模擬電壓信號轉(zhuǎn)換成具有一定頻率的脈沖信號(其頻率隨輸入電壓呈線性變化)。以便用單片機接收該
55、脈沖信號,并根據(jù)單位時間內(nèi)得到的脈沖數(shù),依據(jù)電壓與頻率的線性關(guān)系式計算出所對應(yīng)的實際氣壓值,最后在單片機的控制下由數(shù)碼管顯示電路顯示給用戶。</p><p> 本氣壓計能夠在氣壓傳感器的線性范圍內(nèi)準確測量相應(yīng)氣壓值。需要說明的是,其測量值是絕對氣壓值。本設(shè)計研究的氣壓計的技術(shù)指標如下:</p><p> 測量范圍:15~105kPa;</p><p> 測量精
56、度:1.7%FS(20℃);</p><p> 顯示精度:0.1%,由5位7段數(shù)碼顯示管實現(xiàn);</p><p> 工作溫度范圍:0~85℃;</p><p> 電源電壓:+15V。</p><p> 4.2 主要器件選擇</p><p> 硬件電路離不開功能性器件,因此首先介紹一下本設(shè)計所采用的主要器件。&
57、lt;/p><p><b> 氣壓傳感器</b></p><p> 氣壓傳感器對于本設(shè)計的實現(xiàn)至關(guān)重要,因此需要綜合實際的需求和各類氣壓傳感器的性能參數(shù)加以選擇。</p><p> 本設(shè)計要實現(xiàn)的數(shù)字氣壓計顯示的是絕對氣壓值,同時為了簡化電路,提高穩(wěn)定性和抗干擾能力,要求使用具有溫度補償能力的氣壓傳感器。經(jīng)過綜合考慮,本設(shè)計選用集成壓力傳感芯
58、片MPX4105作為氣壓傳感器。MPX4105屬于美國MOTOROLA公司的MPX系列硅壓力傳感器,主要以氣壓測量為主,適合用于醫(yī)療器械,氣體壓力控制等領(lǐng)域,輸出數(shù)字信號。其測量方式可分為:表壓(GP)、絕壓(A、AP)、差壓(D、DP)型。在寬溫度范圍工作時需外加補償網(wǎng)絡(luò)和信號調(diào)整電路。</p><p> MPX4105可以產(chǎn)生與所加氣壓呈線性關(guān)系的高精度模擬輸出電壓,它具有以下特點。</p>
59、<p> 供電范圍:4085~5.35V,典型值為5.1V。</p><p> 測量范圍:15~105kPa。</p><p> 工作溫度范圍:0~85℃。</p><p> 溫度補償范圍:-40~+125℃。</p><p> 測量精度為:±1.7﹪VFSS。</p><p> 最低氣
60、壓對應(yīng)的輸出電壓VOFF為0.184~0.428V,典型值為0.306V;最高氣壓對應(yīng)的輸出電壓VOFF為4.804~4.988V,典型值為4.896V;滿刻度輸出電壓間距VOFF的典型值為4.590V。</p><p> 理想的微處理器接口。</p><p> 壓力傳感芯片MPX4105的引腳分布圖</p><p> 如圖4—2所示,其各引腳功能說明如下。&
61、lt;/p><p> VOUT(1腳):電壓輸出腳。</p><p> GND(2腳):接地端。</p><p> NC(4、5、6腳):空引腳,用于芯片 圖4—2 MPX4105引腳分布圖</p><p> 內(nèi)部連接,懸空不使用。 </p><p> 4.2.2
62、 電壓/頻率轉(zhuǎn)換器</p><p> 氣壓傳感器MPX4105輸出的是模擬電壓,因此,必須進行模擬到數(shù)字的轉(zhuǎn)換(A/D轉(zhuǎn)換),才能交由單片機處理。這里將采用一種電壓/頻率(V/F)轉(zhuǎn)換電路來實現(xiàn)模擬電壓的數(shù)字化處理。</p><p> V/F轉(zhuǎn)換電路由V/F器件實現(xiàn)。V/F器件的作用是將輸入電壓的幅值轉(zhuǎn)換成頻率與輸入電壓幅值成正比的脈沖序列,雖然V/F器件本身還不能算做量化器,但是加
63、上定時器與計數(shù)器以后也可以實現(xiàn)A/D轉(zhuǎn)換。V/F器件的突出特點就是它能夠把模擬電壓轉(zhuǎn)換成抗干擾能力強、可遠距離傳送并能直接輸入單片機接口的脈沖序列。通過測量V/F的輸出頻率,可以實現(xiàn)A/D轉(zhuǎn)換功能。</p><p> 針對本設(shè)計電路的實際需要,并考慮到外圍電路實現(xiàn)的難易程度和相應(yīng)的性能指標,本設(shè)計選用國家半導(dǎo)體公司的芯片LM331來實現(xiàn)A/D轉(zhuǎn)換。LM331是美國NS 公司生產(chǎn)的性能價格比較高的集成芯片,可用作
64、精密頻率電壓轉(zhuǎn)換器、A/ D轉(zhuǎn)換器、線性頻率調(diào)制解調(diào)、長時間積分器及其他相關(guān)器件。LM331 采用了新的溫度補償能隙基準電路,在整個工作溫度范圍內(nèi)和低到4.0V 電源電壓下都有極高的精度。LM331的外接電路簡單, 只需接入幾個外部元件就可方便構(gòu)成V/ F 或F/ V 等變換,它具有以下特點。</p><p> 最大非線性誤差為0.01﹪。</p><p> 可單、雙電源供電,電壓范圍
65、為5~40V。</p><p> 脈沖輸出可兼容任何邏輯形式。</p><p> 內(nèi)部具有溫度補償能隙基準電路,因而具有極佳的溫度穩(wěn)定性,最大溫度漂為±50ppm/℃。</p><p> 寬的滿量程頻率范圍:1Hz~100Hz。</p><p> LM331引腳分布如圖4—3所示。</p><p>
66、 CO(1腳):電流輸出腳。</p><p> RefC(2腳):基準電流腳。此引腳可接一固定電阻串聯(lián)一個可變電阻器的組合,用于轉(zhuǎn)換增益。</p><p> FO(3腳):脈沖序列輸出腳。該序列 圖4—3 LM331引腳分布圖</p><p> 的頻率值對應(yīng)于輸入電壓的脈沖序列。</p><p> GND(4腳):接地
67、端。</p><p> R/C(5腳):阻容網(wǎng)絡(luò)引腳。此引腳連接一個阻容網(wǎng)絡(luò),電阻和電容的值會影響到轉(zhuǎn)換增益。</p><p> Thre(6腳):閾值電壓腳。芯片內(nèi)部的電壓比較器會對此腳上的電壓和7腳CmpIn上的電壓作比較。</p><p> CmpIn(7腳):比較器電壓輸入腳。需要進行V/F轉(zhuǎn)換的電壓經(jīng)過低通濾波后由此引腳輸入。</p>
68、<p> VCC(8腳):電源腳??刹捎脝?、雙電源供電,輸入電壓5~40V。</p><p> 4.2.3 三端穩(wěn)壓器</p><p> 由于本設(shè)計采用的是+15V電源供電,LM331工作于+15V,但是單片機、MPX4105等其他芯片需要+5V供電,因此還需要設(shè)計專門的供電電路以滿足整個系統(tǒng)的電源需求。本設(shè)計的電源電路選用摩托羅拉公司的三端低電流線性穩(wěn)壓芯片MC78L0
69、5。MC78L05具有以下特點。</p><p> 輸入電壓范圍:2.6~24V,輸出+5V固定電壓;</p><p> 具有內(nèi)部短路電路限制和熱過載保護功能;</p><p><b> 無須外部元件。</b></p><p> MC78L05引腳分布如圖4—4所示,其各引腳</p><p&g
70、t;<b> 功能說明如下。</b></p><p> VOUT(1腳):+5V固定電壓輸出腳。</p><p> GND(2腳):接地端。 圖4—4 MC78L05引腳分布如圖</p><p> Vin(3腳):電壓輸入腳。</p><p> 4.3 電路原理圖設(shè)計&
71、lt;/p><p> 該數(shù)字氣壓計的硬件電路可分為5個部分:氣壓傳感電路、V/F轉(zhuǎn)換電路、單片機電路、電源電路和數(shù)碼顯示管電路。</p><p> 4.3.1 氣壓傳感器和V/F轉(zhuǎn)換電路原理圖設(shè)計</p><p> 氣壓傳感器和V/F轉(zhuǎn)換電路的原理圖如圖4—5所示。</p><p> 圖4-5中,U3為氣壓傳感器芯片MPX4105,它工
72、作于+5V電壓,將被測氣壓轉(zhuǎn)換為輸出電壓(對應(yīng)圖中網(wǎng)絡(luò)標號為Vin),送至V/F轉(zhuǎn)換電路。電阻R5和電容C7構(gòu)成典型的去耦合濾波電路。</p><p> U2為V/F轉(zhuǎn)換芯片LM331,它工作于+15V電壓,在此電路中,電壓Vin和輸出脈沖FO的頻率fo的轉(zhuǎn)換關(guān)系滿足公式(1)。</p><p><b> (1)</b></p><p>&
73、lt;b> 其中,</b></p><p><b> ?。?)</b></p><p> 電路中,Rt、Ct、RL的典型值分別為6.8kΩ、0.01pf和100kΩ,Rs由一個定值電阻R2和一個可變電阻R3串聯(lián)組成,其中,R2為22kΩ,R3的最大阻值為12kΩ,通過可變電阻R3調(diào)節(jié)Rs的阻值可以實現(xiàn)對電路轉(zhuǎn)換增益的調(diào)整。</p>
74、<p> 圖4—5 基于MPX4105的數(shù)字氣壓計系統(tǒng)氣壓傳感器及V/F轉(zhuǎn)換電路原理圖</p><p> 氣壓的變化引起Vin的變化,而Vin在滿刻度輸出電壓間距VFSS內(nèi)變化,VFSS典型值為4.590V,所以Vin變化范圍很小,那么根據(jù)fo=KVin的關(guān)系式,必須增大K值提高測量的精度。本設(shè)計中,fo通過單片機的定時/計數(shù)器1的計數(shù)測得,該計數(shù)器的計數(shù)范圍為0~65536,500ms計算頻率1
75、次。因此,K值的選取還要考慮到計數(shù)器的計數(shù)范圍。綜合考慮之后,將K設(shè)為2000,這樣代人式(2)計算,可知R3的阻值應(yīng)調(diào)節(jié)到6.424kΩ。</p><p> 圖4—5中,Cin和Rin構(gòu)成低通濾波器,濾除輸入電壓信號中的干擾脈沖。其中,Cin取0.1µf,Rin取100kΩ,CL的取容值為1µf的漏極電流小的電容。</p><p> 電源及單片機電路原理圖設(shè)計&l
76、t;/p><p> 本設(shè)計的電源及單片機電路原理圖如圖4—6所示。</p><p> 圖4—6中,U4為電源轉(zhuǎn)換芯片MC78L05,它將+15V電壓轉(zhuǎn)換為+5V電壓,提供單片機和氣壓傳感芯片使用。U1為單片機芯片AT89C52,工作于11.0590MHz時鐘,它的P3.5腳(定時/計數(shù)器1外部脈沖輸入端)和FO相連,對脈沖序列計數(shù),以獲取頻率信息,從而轉(zhuǎn)換為氣壓值。U1的P0口和P2口是和
77、數(shù)碼管顯示電路的接口,其中,P0口為8位段碼,P2口提供5位位碼(5位7段數(shù)碼顯示)。</p><p> 圖4—6 基于MPX4105的數(shù)字氣壓計系統(tǒng)電源及單片機電路原理圖</p><p> 5位7段數(shù)碼管顯示驅(qū)動電路原理圖設(shè)計</p><p> 單片機驅(qū)動LED數(shù)碼管有靜態(tài)顯示和動態(tài)掃描顯示兩種方法,本設(shè)計采用動態(tài)掃描顯示。動態(tài)掃描方法是用其接口電路把所有
78、顯示器的8個筆畫字段(a~g和dp)同名端連在一起,而每一個顯示器的公共極COM各自獨立的接受I/O線控制。CPU向字段輸出端口輸出字型碼時,所有顯示器接收到相同的字型碼,但究竟使用哪個顯示器,則取決于COM端,而這一端由I/O控制的,由單片機決定何時顯示哪一位。動態(tài)掃描用分時的方法輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮?xí)r間極為短暫,但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),給人的
79、印象就是一組穩(wěn)定的顯示數(shù)據(jù)。動態(tài)顯示需要分時顯示,需要CPU時刻對顯示器件進行數(shù)據(jù)刷新,顯示數(shù)據(jù)有閃爍感,占用的CPU時間多,但使用的硬件少,可以大幅度地降低硬件成本和電源的功耗,還可以節(jié)省線路板空間。</p><p> 基于MPX4105數(shù)字氣壓計數(shù)碼管位驅(qū)動電路原理圖如圖4—7所示。U5為六路反相放大器CD4069UB,它對單片機的P2.0~P2.4進行反相操作以提供正確的數(shù)碼管位選擇信號,它可以提供足夠的
80、驅(qū)動電流。U1的P2口P2.0~P2.4用于產(chǎn)生5位數(shù)碼管的位選擇信號,控制應(yīng)該顯示的7段數(shù)碼管發(fā)光,位選擇信號S1~S5需由P2.0~P2.4經(jīng)過六路反相器CD4096UB反相驅(qū)動。</p><p> 圖4—7 基于MPX4105數(shù)字氣壓計數(shù)碼管位驅(qū)動電路原理圖 </p><p> 圖4—8 基于MPX4105數(shù)字氣壓計5位7段數(shù)碼管顯示電路原理圖</p><
81、p> 基于MPX4105數(shù)字氣壓計5位7段數(shù)碼管顯示電路原理圖如圖4—8所示。U01、U02、U03、U04和U05為7段數(shù)碼管,本設(shè)計采用共陰極數(shù)碼管。U1的P0口用于7段數(shù)碼管的字段選擇信號,控制數(shù)碼管的字段LED發(fā)光,RP1為220Ω的上拉排阻。</p><p><b> 4.3 本章小結(jié)</b></p><p> 這一章主要介紹了基于MPX410
82、5數(shù)字氣壓計系統(tǒng)的外圍電路的設(shè)計過程,對外圍電路的所用到的芯片作了簡要的介紹。其中對氣壓傳感器電路和數(shù)碼管顯示電路作了比較詳細的分析。</p><p><b> 系統(tǒng)軟件設(shè)計</b></p><p><b> C語言介紹</b></p><p> C語言是近年來在國內(nèi)外得到迅速推廣的一種計算機語言。C語言功能豐富,表
83、達能力強,使用靈活方便,應(yīng)用面廣,目標程序效率高,可植性好,既具有高級語言的優(yōu)點,又具有低級語言的許多特點。其優(yōu)點是可讀性好,移植容易,是普遍使用的一種計算機語言。缺點是占用資源較多,執(zhí)行效率沒有匯編高。</p><p> 以前的操作系統(tǒng)等系統(tǒng)軟件主要是匯編語言編寫的。但是由于匯編語言依賴于計算機硬件,程序的可讀性和可移植性都比較差。為了提高可讀性和可移植性,最好改用高級語言,但是一般高級語言難以實現(xiàn)匯編語言的
84、某些功能。而C語言既具有高級語言的特性,又具有低級語言的特性。</p><p><b> 由頻率計算出氣壓值</b></p><p> 在測量過程中信號的變換過程如下:</p><p> 第一步,被測氣壓經(jīng)過氣壓傳感器MPX4105轉(zhuǎn)換成電壓輸出,根據(jù)MPX4105芯片資料可知,輸出電壓VOUT和大氣壓P的關(guān)系如下。</p>
85、<p><b> (3)</b></p><p> 這里VCC為+5V,因此可得:</p><p><b> (4)</b></p><p> 第二步,MPX4105的輸出電壓VOUT作為輸入電壓Vin,經(jīng)過V/F轉(zhuǎn)換電路轉(zhuǎn)變?yōu)榫哂袑?yīng)頻率fo的脈沖序列FO。Vin和FO的這種對應(yīng)關(guān)系如上一節(jié)的式(1)
86、所示。</p><p> 綜合式(1)和式(4),根據(jù)VOUT=Vin,可得:</p><p><b> ?。?)</b></p><p> 式(5)中,fo的單位為Hz,P的單位為kPa,K為V/F轉(zhuǎn)換增益,本設(shè)計中K值為2000。在程序中,根據(jù)式(5)編程計算得到氣壓值P。</p><p> 5.3 程序流程
87、圖</p><p> 單片機實現(xiàn)數(shù)字氣壓計的程序流程如圖5—1所示。</p><p> 圖5—1 單片機實現(xiàn)數(shù)字氣壓計的程序流圖</p><p><b> 5.4 程序代碼</b></p><p> 所有程序代碼見最后附錄。</p><p><b> 5.5 本章小結(jié)&l
88、t;/b></p><p> 這一章主要介紹了基于MPX4105數(shù)字氣壓計系統(tǒng)的軟件設(shè)計過程,對C語言編程作了簡要的介紹,解決了由頻率換算實際對應(yīng)氣壓值的問題。再次學(xué)習(xí)了C51程序設(shè)計的方法。</p><p><b> 結(jié) 論</b></p><p> 經(jīng)過幾個月的研究設(shè)計,已經(jīng)很好地完成了課題任務(wù),所設(shè)計的系統(tǒng)也能滿足要求,
89、實現(xiàn)所要求的功能。</p><p> 在現(xiàn)在的工業(yè)控制系統(tǒng)中,各種型號的單片機的使用越來越廣泛,而各種新型單片機系統(tǒng)越來越顯示出其在運算能力、適應(yīng)范圍、可擴展性以及抗故障能力等方面的優(yōu)勢。本課題所設(shè)計的系統(tǒng)就是基于一種低電壓,高性能CMOS8位單片機單片機AT89C52來實現(xiàn)信號采集、控制和數(shù)據(jù)處理。</p><p> 本次畢業(yè)設(shè)計主要完成的工作如下:</p><p
90、> 對氣壓傳感器和V/F轉(zhuǎn)換器的合理選擇;</p><p> 利用V/F轉(zhuǎn)換器實現(xiàn)模數(shù)的轉(zhuǎn)換;</p><p><b> 設(shè)計硬件電路;</b></p><p><b> 編寫軟件控制程序;</b></p><p> 在程序中實現(xiàn)了所測脈沖序列的頻率和所對應(yīng)的實際氣壓值的換算。<
91、;/p><p> 單片機除了可以用于測量電信號以外,還可以應(yīng)用于非電信號的測量,本設(shè)計就是單片機在非電信號測量領(lǐng)域中的應(yīng)用。由本設(shè)計制成的數(shù)字氣壓計具有精度高、穩(wěn)定性好、功能易于擴展等優(yōu)點,可為儀器及電子產(chǎn)品設(shè)計提供一種新的思路。</p><p><b> 致 謝</b></p><p> 本文是在xx老師的悉心指導(dǎo)和親切關(guān)懷下完成的。
92、xx老師淵博的知識、嚴謹?shù)闹螌W(xué)態(tài)度、敏銳的學(xué)術(shù)洞察力以及平易近人的師長風(fēng)范,都給我留下了深刻的印象。在畢業(yè)設(shè)計期間,xx老師雖然自己的工作非常忙,但他一直關(guān)注我的進度,對我在這期間所遇到的不懂的問題都給以了細致的解答,直至我明白為止。值此論文完成之際,謹向xx老師致以深深的敬意和衷心的感謝。</p><p> 另外還要感謝在此次畢業(yè)設(shè)計期間給予我?guī)椭钠渌蠋熀屯瑢W(xué)。
93、 </p><p><b> 參考文獻</b></p><p> [1]胡漢才.單片機原理及其接口技術(shù).[M]北京:清華大學(xué)出版社,1996</p><p> [2]李朝青.單片機原理及其接口技術(shù). [M]北京:北京航空航天大學(xué)出版社,1994</p><
94、p> [3]高海生,楊文煥.單片機應(yīng)用技術(shù)大全. [M]成都:西南交通大學(xué)出版社,1996</p><p> [4]徐愛鈞,彭秀華.單片機高級語言C51應(yīng)用程序設(shè)計. [M]北京:電子工業(yè)出版社,1998</p><p> [5]徐愛鈞,朱清詳.單片機高級語言C51的編程與實際. [J]計算機應(yīng)用研究,1997</p><p> [6]戴佳. 51 單
95、片機 C 語言應(yīng)用程序設(shè)計實例精講. [M]北京:電子工業(yè)出版社,2006</p><p> [7]丁元杰.單片機原理及應(yīng)用[M].北京:機械工業(yè)出版社,2000</p><p> [8]徐愛卿,孫涵芳.MCS-51單片機原理及應(yīng)用. [M]北京:北京航空航天大學(xué)出版社,1987</p><p> [9]徐澤善.傳感器與壓電器件——信息裝備的特種元件. [M]
96、北京:國防工業(yè)出版社,1999</p><p> [10]張友德,趙志英,涂時亮.單片微型計算機原理、應(yīng)用與實驗[M].上海:復(fù)旦大學(xué)出版社,1992</p><p> [11]潘新民,王燕芳.微型計算機與傳感器. [M]北京:人民郵電出版社,1998</p><p> [12]何立民.單片機應(yīng)用文集. [M]北京:北京航空航天大學(xué)出版社,1991</p
97、><p> [13]何立民.單片機應(yīng)用系統(tǒng)設(shè)計. [M]北京:北京航空航天大學(xué)出版社,1990</p><p> [14]沙占友,王彥朋,孟志永.單片機外圍電路設(shè)計. [M]北京:電子工業(yè)出版社,2003</p><p> [15]胡漢才.單片機原理及系統(tǒng)設(shè)計. [M]北京:清華大學(xué)出版社,2002</p><p> [16]徐惠民,安德
98、寧.單片微型計算機原理、接口、應(yīng)用. [M]北京:北京郵電大學(xué)出版社,1900</p><p><b> 附 錄</b></p><p> 主要程序代碼及其說明(見注釋語句)如下。</p><p> #ifndef_DIGAIRPRESS_H // 防止DigAirPress.h被重復(fù)引用</p><p&g
99、t; #define_DIGAIRPRESS_H</p><p> #include <reg52.h> // 引用標準庫的頭文件</p><p> #include <absacc.h></p><p> #include <stdio.h></p><p> #include
100、 <math.h></p><p> #define uchar unsigned char </p><p> #define uint unsigned int </p><p> #define K 2000 // K為V/F轉(zhuǎn)換增益常數(shù) </p><p> uchar PressVal; //
101、氣壓值 </p><p> uchar count; // 計數(shù)器</p><p> uchar digbit //字位</p><p> uchar wordbuf[5] //字型碼緩沖區(qū)</p><p> #include "DigAirPress.h&qu
102、ot;</p><p> void display();</p><p> /* 定時器0中斷 */</p><p> void timer0() interrupt 1 using 1</p><p><b> {</b></p><p><b> uint x,y;<
103、/b></p><p><b> uint fo;</b></p><p> ET0 = 0; // 關(guān)閉定時器0中斷</p><p><b> count++;</b></p><p> if (count == 10) // 500ms</p&
104、gt;<p><b> {</b></p><p> TR1 = 0; // 停止計數(shù)器1</p><p> count = 0;</p><p><b> x = TH1;</b></p><p><b> y = TL1;</b>&l
105、t;/p><p> /* 計算頻率值,由于是500ms所以需乘以2 */</p><p> fo = (x*256+y)*2;</p><p> /* 根據(jù)推算出來的公式 P=20fo/K+9 計算氣壓值 */</p><p> PressVal = (uint)(20*(float)(fo)/K+9);</p><
106、p> /* 顯示函數(shù),將計算出的PressVal值通過5位數(shù)碼管(4位數(shù)字和</p><p> 1位小數(shù)點)顯示出來,顯示精度為0.1,即保留小數(shù)點后一位。*/</p><p> display();</p><p> /* 計數(shù)器1清0 */</p><p><b> TH1 = 0;</b><
107、/p><p> TL1 = 0;</p><p><b> }</b></p><p> /* 重置TH0和TL0 */</p><p> TH0 = -50000/256;</p><p> TL0 = -50000%256;</p><p> ET0 = 1
108、;// 打開定時器0中斷</p><p> TR1 = 1;// 啟動計數(shù)器1</p><p><b> return;</b></p><p><b> }</b></p><p><b> /* 主程序 */</b></p><p
109、> void main(void)</p><p><b> {</b></p><p><b> EA = 1;</b></p><p> ET0 = 1; // 打開定時器0中斷</p><p> /* 設(shè)置T1為16位計數(shù)器,T0為16位定時器 */</p>
110、;<p> TMOD = 0x51;</p><p> /* 定時器0為50ms定時 */</p><p> TH0 = -50000/256;</p><p> TL0 = -50000%256;</p><p> /* 定時器1從0開始計數(shù) */</p><p><b> TH1
111、 = 0;</b></p><p><b> TL1 = 0;</b></p><p> TR0 = 1; // 啟動定時器0</p><p> TR1 = 1; // 啟動計數(shù)器1</p><p> count = 0;</p><p> /* 開始無限
112、循環(huán),等待中斷到來 */</p><p> while (1);</p><p><b> }</b></p><p><b> /*顯示函數(shù)*/</b></p><p> void display(void)</p><p><b> {</b
113、></p><p><b> uchar i;</b></p><p> switch (digbit)</p><p><b> {</b></p><p> case 1: i=0; break;</p><p> case 2:
114、i=1; break;</p><p> case 4: i=2; break;</p><p> case 8: i=3; break;</p><p> case 16: i=4; break;</p><p> default: break;<
115、/p><p><b> }</b></p><p> P2 = 0x0; // 關(guān)閉顯示</p><p> P0 = getcode(wordbuf[i]); // 送字型碼</p><p> P2 = digbit; // 送字位碼</p>&
116、lt;p> if (digbit<0x0F) // 共5位</p><p> digbit = digbit*2; // 左移一位</p><p><b> else</b></p><p> digbit = 0x01;</p><p><b> }<
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- mpx4115數(shù)字氣壓計設(shè)計設(shè)計
- mpx的數(shù)字氣壓計設(shè)計課題論文
- 基于MPX4115的數(shù)字氣壓計設(shè)計論文.pdf
- 基于單片機的數(shù)字氣壓計設(shè)計-畢業(yè)設(shè)計
- 畢業(yè)設(shè)計——基于單片機的數(shù)字氣壓計設(shè)計
- 基于mpx4115的數(shù)字氣壓計設(shè)計論文和源碼(mpx4250傳感器)
- 畢業(yè)設(shè)計(論文)-基于單片機的氣壓計設(shè)計
- 基于單片機控制的數(shù)字氣壓計的設(shè)計與實現(xiàn)畢業(yè)設(shè)計
- 單片機控制的數(shù)字氣壓計的設(shè)計與實現(xiàn)畢業(yè)設(shè)計
- 基于單片機的數(shù)字式大氣壓計的設(shè)計--畢業(yè)設(shè)計
- 數(shù)字氣壓計畢業(yè)論文
- 基于單片機的數(shù)字氣壓計設(shè)計畢業(yè)論文
- 基于AVR的智能數(shù)字氣壓計的優(yōu)化設(shè)計.pdf
- 基于單片機的數(shù)字氣壓計的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計--具有高度顯示的氣壓計控制電路設(shè)計
- 單片機氣壓計課程設(shè)計
- 單片機氣壓計課程設(shè)計報告
- 畢業(yè)設(shè)計---數(shù)字轉(zhuǎn)速計的設(shè)計
- jjf1625-2017數(shù)字式氣壓計型式評價大綱
- 數(shù)字溫度計的設(shè)計畢業(yè)設(shè)計
評論
0/150
提交評論