多氣體參數(shù)測定器畢業(yè)論文_第1頁
多氣體參數(shù)測定器畢業(yè)論文_第2頁
多氣體參數(shù)測定器畢業(yè)論文_第3頁
多氣體參數(shù)測定器畢業(yè)論文_第4頁
多氣體參數(shù)測定器畢業(yè)論文_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、畢業(yè)設(shè)計(論文)YQ7多氣體參數(shù)測定器產(chǎn)品設(shè)計論文作者:郝才才指導(dǎo)教師:XXX專 業(yè):應(yīng)用電子技術(shù)系 (院):電氣與電子工程系答辯日期:年 月 日摘要摘 要本設(shè)計利用六種氣體傳感器,一個風(fēng)速與溫度合一傳感器,分別為一氧化碳、硫化氫、二氧化碳、甲烷、氧氣、二氧化硫、檢測風(fēng)速與溫度的AR866-CT ,在使用這些傳感器之前先預(yù)熱五分鐘左右,預(yù)熱完之后將這些傳感元器放置與待測的環(huán)境中,這些傳感器可以根據(jù)與可燃氣體的濃度分別轉(zhuǎn)換為電壓,然后將裝換得到的電壓經(jīng)過MCP6002運算放大,最后送入MSP430單片機進行A/D模數(shù)轉(zhuǎn)換處理。為了方便用戶對可燃氣體濃度的實時了解,在MSP430單片機外圍鏈接了用

2、于顯示的KD023C-1B 型2.3寸彩色液晶,將經(jīng)過單片機處理的濃度顯示在液屏上,以防止事故的發(fā)生;為了更好地設(shè)置可燃氣體的報警濃度,還在單片機周圍鏈接了四個按鍵以便于設(shè)置報警濃度,當(dāng)檢測的濃度超過了設(shè)置的濃度時,單片機控制蜂鳴器發(fā)聲。 本次設(shè)計YQ7多氣體參數(shù)測定器所用的MSP430單片機價格便宜,性能穩(wěn)定。以可燃氣體傳感器和MSP430單片機為核心設(shè)計的可燃氣體檢測儀,設(shè)計方法簡單易行,使用效果良好。下面給出了YQ7多氣體參數(shù)測定器產(chǎn)品的總體設(shè)計原理,硬件電路和所有的軟件設(shè)計。關(guān)鍵詞: 氣體傳感器、MSP430單片機、模數(shù)轉(zhuǎn)換、液晶目錄目 錄第1章 緒 論11.1 多氣體參數(shù)測定器的課題

3、背景 11.1.1 多氣體參數(shù)測定器設(shè)計的目的11.1.2 在國內(nèi)外的發(fā)展概況11.2 多氣體參數(shù)測定器設(shè)計方案2第2章 多氣體參數(shù)測定器主要元件簡介 32.1 MSP430單片機32.1.1 MSP430單片機簡介32.1.2 MSP430單片機的特點32.2 可燃氣體傳感器42.2.1 傳感器的定義與組成42.2.2 可燃氣體傳感器工作原理52.3 MCP6002芯片52.3.1 MCP6002簡介52.3.2 MCP6002引腳及引腳功能62.4 2.3寸彩色液晶72.4.1 KD023C-1B型液晶簡介72.4.2 液晶接口接線圖8第3章 多氣體參數(shù)測定器系統(tǒng)的硬件設(shè)計93.1 多氣體

4、參數(shù)測定器基本原理93.2 單片機最小系統(tǒng)93.3 報警電路設(shè)計113.4 液晶顯示模塊設(shè)計113.5 信號運算放大模塊設(shè)計12第4章 多氣體參數(shù)測定器系統(tǒng)的軟件設(shè)計134.1 多氣體參數(shù)測定器的主程序流程圖134.2 控制器主程序設(shè)計要點134.3 液晶顯示程序設(shè)計134.4 報警程序設(shè)計154.5 模數(shù)轉(zhuǎn)換子程序設(shè)計19第5章 結(jié) 論22參考文獻23致 謝24第1章 緒 論第1章 緒 論1.1 多氣體參數(shù)測定器的課題背景1.1.1 多氣體參數(shù)測定器設(shè)計的目的隨著中國經(jīng)濟的高速發(fā)展,儀器儀表產(chǎn)業(yè)也得到了快速發(fā)展,各種氣體檢測儀表伴隨我國經(jīng)濟的快速發(fā)展也將迎來高速增長的時期。相對于近幾年儀器儀

5、表行業(yè)20%以上的市場增長速度,而氣體檢測儀器儀表行業(yè)的速度更是達到驚人的30%。在煤礦行業(yè)中含有大量的CH4(甲烷)及CO(一氧化碳)等易燃易爆有毒氣體,發(fā)生事故后會造成巨大的經(jīng)濟損失,甚至危及礦工的生命。本課題也是國家S863項目“易燃易爆氣體檢測微系統(tǒng)(No.2003AA404180)”的一部分,為煤礦井下提供一種低功耗的智能儀表,該儀表能快速檢測混合氣體,保障礦工安全,減少事故發(fā)生,對礦井中氣體進行快速準(zhǔn)確地檢測顯得尤其重要。所以,為了礦工們的生命安全,減少不必要的經(jīng)濟損失,實現(xiàn)多氣體參數(shù)測定器研究和開發(fā)也一直是人們關(guān)注的問題。1.1.2 在國內(nèi)外的發(fā)展概況隨著我國的改革開放,我國的經(jīng)

6、濟科技得到了飛躍的發(fā)展,我國電子信息業(yè)在上世紀(jì)八十年代第一次騰飛后,國民經(jīng)濟信息化進程的加快,之后又進入持續(xù)快速發(fā)展的新時期。這個時期電子信息產(chǎn)業(yè)的主要特征表現(xiàn)為:一是正在從單一的制造業(yè)轉(zhuǎn)變?yōu)槲镔|(zhì)生產(chǎn)與知識生產(chǎn),裝備制造與系統(tǒng)集成,硬件制造與軟件制造,工業(yè)生產(chǎn)與信息服務(wù)相結(jié)合的現(xiàn)代信息產(chǎn)業(yè);二是產(chǎn)業(yè)結(jié)構(gòu),企業(yè)結(jié)構(gòu),運行機制,管理模式等方面發(fā)生了深刻變化;三是我國信息產(chǎn)業(yè)成為國民經(jīng)濟的支柱產(chǎn)業(yè)和先導(dǎo)產(chǎn)業(yè),是新世紀(jì)的戰(zhàn)略產(chǎn)業(yè),為國民經(jīng)濟和社會信息化建設(shè)提供主要技術(shù)和物質(zhì)支撐。報警器技術(shù)及其產(chǎn)業(yè)的特點是:基礎(chǔ)、應(yīng)用兩頭依附;技術(shù)、投資兩個密集;產(chǎn)品、產(chǎn)業(yè)兩大分散。基礎(chǔ)、應(yīng)用兩頭依附,是指報警器技術(shù)的

7、發(fā)展依附于敏感機理、敏感材料、工藝設(shè)備和計測技術(shù)這四塊基石。敏感機理千差萬別,敏感材料多種多樣,工藝設(shè)備各不相同,計測技術(shù)大相徑庭,沒有上述四塊基石的支撐,報警器技術(shù)難以為繼。儀器儀表行業(yè)在中國經(jīng)過一個階段的發(fā)展,已經(jīng)趨近成熟。而氣體報警器作為工業(yè)儀器儀表的一個重要項目,它不僅代表了儀器儀表的發(fā)展?fàn)顩r,也反映了工業(yè)化的發(fā)展程度。用于氣體報警器的傳感器也在經(jīng)歷著飛速的變化,經(jīng)過了多次的技術(shù)創(chuàng)新和更新?lián)Q代,傳感器行業(yè),可燃氣體報警器行業(yè)又迎來了新的發(fā)展和突破。在傳感器行業(yè),一直在進行著反復(fù)試驗,希望通過工程創(chuàng)新方法來改善傳感器的靈敏度,但遺憾的是業(yè)界并沒有一個新的框架來總括所有的經(jīng)驗法則,以作為新

8、一代傳感器的設(shè)計方法。而來自美國普度大學(xué)的工程師補足了這個遺憾,為設(shè)計可燃氣體報警器傳感器提供了新的途徑。為了測試他們的可燃氣體報警器傳感器設(shè)計法則系統(tǒng),他們著手研究使用哪一種納米級傳感器設(shè)計,是透過目標(biāo)分子進行感測最適合的材料。研究人員過去就已經(jīng)發(fā)現(xiàn),當(dāng)感測單個分子時(例如氣體煙霧探測器或生物、化學(xué)探測器),感測組件越小越好,但其原因一直沒有一個理論來解釋和證實,是否與目標(biāo)分子的擴散情況會限制傳感器運作速度有關(guān)系。而艾姆和尼爾宣稱已經(jīng)證實了以上理論。首先,他們比較了傳統(tǒng)的平面?zhèn)鞲衅鹘M件與圓柱形的單納米管傳感器組件,結(jié)果顯示較小的圓柱形傳感器的靈敏度至少高出傳統(tǒng)的平面?zhèn)鞲衅?00倍,這足以證明

9、感測器組建越小越好的理論是正確的。1.2 多氣體參數(shù)測定器設(shè)計方案多氣體參數(shù)測定器設(shè)計是利用單片機控制技術(shù),制作了多種氣體與一體的報警器。該儀器對這六種氣體進行實時監(jiān)控,當(dāng)這些氣體的濃度超過上限值時,單片機發(fā)送所接收到的氣體濃度給液晶顯示進行實時的監(jiān)測,并且單片機控制電路進行發(fā)聲音報警,時刻提醒人們,以防事故發(fā)生?;贛SP430性價比高的優(yōu)勢,主要運用了MSP430單片機進行控制。而對與報警器而言至關(guān)重要的部分是傳感器,由于氣敏元件采用半導(dǎo)體敏感材料,其靈敏度、選擇性、穩(wěn)定性、抗干擾性、響應(yīng)時間及壽命等主要性能,均達到國內(nèi)先進水平。用該系列元件組裝成易燃易爆氣體泄漏報警器及檢測裝置,可廣泛運

10、用于礦山、油田、化工、國防、醫(yī)藥及家庭。在模數(shù)轉(zhuǎn)換這塊,利用MCP600芯片雙通道運放,經(jīng)過MSP430單片機的內(nèi)部D/A轉(zhuǎn)換,實現(xiàn)模數(shù)轉(zhuǎn)換,MCP6002是低功率雙運算放大器,它采用了Microchip先進的CMOS工藝。為了方便用戶了解濃度信息,好提前準(zhǔn)備,還采用了顯示環(huán)節(jié)。顯示環(huán)節(jié)用2.3寸彩色液晶顯示。顯示器顯示常用兩種方法:靜態(tài)顯示和動態(tài)掃描顯示。所謂靜態(tài)顯示,就是每一個顯示器都要占用單獨的具有鎖存功能的I/O接口用于筆劃段字形代碼。這樣單片機只要把要顯示的字形代碼發(fā)送到接口電路,就不用管它了,直到要顯示新的數(shù)據(jù)時,再發(fā)送新的字形碼,因此,使用這種方法單片機中CPU的開銷小??梢蕴峁?/p>

11、單獨鎖存的I/O接口電路很多??偟膩碚f,本次設(shè)計主要利用了以上的檢測模塊,A/D轉(zhuǎn)換模塊,顯示模塊,控制模塊四大模塊,組成了可燃氣體探測報警器。24第2章 多氣體參數(shù)測定器主要元件簡介第2章 多氣體參數(shù)測定器主要元件簡介2.1 MSP430單片機2.1.1 MSP430單片機簡介MSP430系列單片機是美國德州儀器(TI)1996年開始推向市場的一種16位超低功耗、具有精簡指令集(RISC)的混合信號處理器(Mixed Signal Processor)。稱之為混合信號處理器,是由于其針對實際應(yīng)用需求,將多個不同功能的模擬電路、數(shù)字電路模塊和微處理器集成在一個芯片上,以提供“單片機”解決方案。

12、該系列單片機多應(yīng)用于需要電池供電的便攜式儀器儀表中。MSP430系列的部分產(chǎn)品具有Flash存儲器,在系統(tǒng)設(shè)計、開發(fā)調(diào)試及實際應(yīng)用上都表現(xiàn)出較明顯的優(yōu)點。TI公司推出具有Flash 型存儲器及JTAG邊界掃描技術(shù)的廉價開發(fā)工具MSP-FET430X110,將國際上先進的JTAG技術(shù)和Flash在線編程技術(shù)引入MSP430。這種以Flash 技術(shù)與FET開發(fā)工具組合的開發(fā)方式,具有方便、廉價、實用等優(yōu)點,給用戶提供了一個較為理想的樣機開發(fā)方式。2.1.2 MSP430單片機特點1.處理能力強MSP430系列單片機是一個16位的單片機,采用了精簡指令集(RISC)結(jié)構(gòu),具有豐富的尋址方式(7 種源

13、操作數(shù)尋址、4 種目的操作數(shù)尋址)、簡潔的 27 條內(nèi)核指令以及大量的模擬指令;大量的寄存器以及片內(nèi)數(shù)據(jù)存儲器都可參加多種運算;還有高效的查表處理指令。這些特點保證了可編制出高效率的源程序。2.運算速度快MSP430 系列單片機能在25MHz晶體的驅(qū)動下,實現(xiàn)40ns的指令周期。16位的數(shù)據(jù)寬度、40ns的指令周期以及多功能的硬件乘法器(能實現(xiàn)乘加運算)相配合,能實現(xiàn)數(shù)字信號處理的某些算法(如FFT等)。MSP430 單片機之所以有超低的功耗,是因為其在降低芯片的電源電壓和靈活而可控的運行時鐘方面都有其獨到之處。首先,MSP430 系列單片機的電源電壓采用的是1.8-3.6V 電壓。因而可使其

14、在1MHz 的時鐘條件下運行時,芯片的電流最低會在165A左右,RAM保持模式下的最低功耗只有0.1A。其次,獨特的時鐘系統(tǒng)設(shè)計。在 MSP430 系列中有兩個不同的時鐘系統(tǒng):基本時鐘系統(tǒng)、鎖頻環(huán)(FLL 和FLL+)時鐘系統(tǒng)和DCO數(shù)字振蕩器時鐘系統(tǒng)??梢灾皇褂靡粋€晶體振蕩器(32768Hz),也可以使用兩個晶體振蕩器。由系統(tǒng)時鐘系統(tǒng)產(chǎn)生 CPU 和各功能所需的時鐘。并且這些時鐘可以在指令的控制下,打開和關(guān)閉,從而實現(xiàn)對總體功耗的控制。由于系統(tǒng)運行時開啟的功能模塊不同,即采用不同的工作模式,芯片的功耗有著顯著的不同。在系統(tǒng)中共有一種活動模式(AM)和五種低功耗模式(LPM0LPM4)。在實時

15、時鐘模式下,可達2.5A ,在RAM 保持模式下,最低可達0.1A 。3.片內(nèi)資源豐富MSP430 系列單片機的各系列都集成了較豐富的片內(nèi)外設(shè)。它們分別是看門狗(WDT)、模擬比較器A、定時器A0(Timer_A0)、定時器A1(Timer_A1)、定時器B0(Timer_B0)、UART、SPI、I2C、硬件乘法器、液晶驅(qū)動器、10位/12位ADC、16位- ADC、DMA、I/O端口、基本定時器(Basic Timer)、實時時鐘(RTC)和USB控制器等若干外圍模塊的不同組合。其中,看門狗可以使程序失控時迅速復(fù)位;模擬比較器進行模擬電壓的比較,配合定時器,可設(shè)計出A/D 轉(zhuǎn)換器;16 位

16、定時器(Timer_A 和 Timer_B)具有捕獲/比較功能,大量的捕獲/比較寄存器,可用于事件計數(shù)、時序發(fā)生、PWM等;有的器件更具有可實現(xiàn)異步、同步及多址訪問串行通信接口可方便的實現(xiàn)多機通信等應(yīng)用;具有較多的 I/O 端口,P0、P1、P2 端口能夠接收外部上升沿或下降沿的中斷輸入;10/12位硬件 A/D 轉(zhuǎn)換器有較高的轉(zhuǎn)換速率,最高可達200kbps ,能夠滿足大多數(shù)數(shù)據(jù)采集應(yīng)用;能直接驅(qū)動液晶多達 160 段;實現(xiàn)兩路的 12 位D/A轉(zhuǎn)換;硬件I2C串行總線接口實現(xiàn)存儲器串行擴展;以及為了增加數(shù)據(jù)傳輸速度,而采用的DMA模塊。MSP430 系列單片機的這些片內(nèi)外設(shè)為系統(tǒng)的單片解決

17、方案提供了極大的方便。另外,MSP430 系列單片機的中斷源較多,并且可以任意嵌套,使用時靈活方便。當(dāng)系統(tǒng)處于省電的低功耗狀態(tài)時,中斷喚醒只需5s。MSP430 系列有 OTP 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開發(fā)手段不同。對于 OTP 型和 ROM 型的器件是使用仿真器開發(fā)成功之后燒寫或掩膜芯片;對于 FLASH 型則有十分方便的開發(fā)調(diào)試環(huán)境,因為器件片內(nèi)有 JTAG 調(diào)試接口,還有可電擦寫的 FLASH 存儲器,因此采用先下載程序到 FLASH 內(nèi),再在器件內(nèi)通過軟件控制程序的運行,由 JTAG 接口讀取片內(nèi)信息供設(shè)計者調(diào)試使用的方法進行開發(fā)。這種方式只需要一臺

18、 PC 機和一個 JTAG 調(diào)試器,而不需要仿真器和編程器。開發(fā)語言有匯編語言和 C 語言。2.2 可燃氣體傳感器2.2.1傳感器的定義與組成傳感器是能感受規(guī)定的被測量并按照一定規(guī)律轉(zhuǎn)換成可用輸出信號的器件或裝置。 在有些國家和有些科學(xué)領(lǐng)域,也將傳感器稱為變換器、檢測器或探測器等。一般來講,傳感器由敏感元件和轉(zhuǎn)換元件組成。但是,由于傳感器輸出的信號一般都很微弱,需要有信號調(diào)節(jié)與轉(zhuǎn)換電路將其放大或轉(zhuǎn)換為容易傳輸、處理、記錄和顯示的形式。隨著半導(dǎo)體器件與集成技術(shù)在傳感器中的應(yīng)用,傳感器的信號調(diào)節(jié)與轉(zhuǎn)換電路可能安裝在傳感器的殼體里或與敏感元件一起集成在同一芯片上。因此,信號調(diào)節(jié)與轉(zhuǎn)換電路以及所需電源

19、都應(yīng)作為傳感器組成的一部分。常見的信號調(diào)節(jié)與轉(zhuǎn)換電路有放大器、電橋、振蕩器、變阻器等等,如圖2-1所示。圖2-1傳感器組成圖2.2.2 可燃氣體傳感器工作原理可燃氣體傳感器是利用難熔金屬鉑絲加熱后的電阻變化來測定可燃氣體濃度 。當(dāng)可燃氣體進入探測器時,在鉑絲表面引起氧化反應(yīng)(無焰燃燒),其產(chǎn)生的熱量使鉑絲的溫度升高,而鉑絲的電阻率便發(fā)生變化,當(dāng)空氣中有可燃氣體存在并吸附在氧化物燒結(jié)體上,引起半導(dǎo)體電導(dǎo)率或熱導(dǎo)率的變化,使其阻值變小,從而將被測氣體的濃度信息轉(zhuǎn)變?yōu)殡娦盘枴?由于接觸燃燒式氣體傳感器是利用可燃性氣體氧化燃燒使電熱絲升溫來達到檢測可燃氣體的目的,因此這種類型傳感器對不燃燒氣體不敏感,

20、不會造成其他氣體的交叉感染。而且傳感器受環(huán)境溫度濕度的影響比較小,性能穩(wěn)定。催化燃燒式氣體傳感器采用電橋原理構(gòu)成檢測電路,其線性度及靈敏度比較好。2.3 MCP6002芯片2.3.1 MCP6002簡介Microchip Technology Inc.的MCP6001/2/4系列運算放大器是專門為各種通用應(yīng)用設(shè)計的。這一系列器件具有1MHz增益帶寬積(Gain Bandwidth Product,GBWP)和90相位容限(典型值)。在500pF的容性負載下,它也同樣具有45相位容限(典型值)。即使單電源供電電壓只有1.8V,這個系列的運算放大器仍可工作,此時靜態(tài)電流為100A(典型值)。此外,

21、MCP6001/2/4支持軌到軌輸入輸出,它的共模輸入電壓范圍為VDD+300mV 到VSS-300mV。這個系列的運算放大器在設(shè)計中采用了Microchip先進的CMOS工藝。應(yīng)用領(lǐng)域有提供單運放、雙運放和四運放封裝、汽車、便攜式設(shè)備、光電二極管放大器、模擬濾波器、筆記本電腦和PDA、電池供電系統(tǒng)。2.3.2 MCP6002引腳及引腳功能1.MCP6002引腳,如圖2-2所示。圖2-2 MCP6002引腳圖2.MCP6002引腳功能,如表2-1所示。表2-1 MCP6002引腳功能圖2.4 2.3寸彩色液晶2.4.1 KD023C-1B型液晶簡介1. 模塊名稱:2.3寸320*240, IL

22、I9342C, 8/9/16/18位MCU, 3/4線SPI, 16/18位RGB接口TFT 彩色液晶屏帶鐵框2. 型號:KD023C-1B3. 兼容型號:否4. 尺寸:2.3寸5. 是否帶觸摸:否6. 顯示模式:TFT7. 顯示色彩:65K/262K8. 分辨率: 320*2409. 點距:0.1461(H)*0.1461(V)10. 視角:12:0011. 控制IC:ILI9342C12. 顯示類型:全透型,常白13. 外形尺寸:52.35*46.35*2.60mm14. 可視面積:48.65*36.96mm 15. 點陣區(qū)面積:46.75*35.06mm16. 亮度:350cd/m217

23、. 對比度:50018. 接口類型: 8080 8/9/16/18位 MCU接口、16/18位RGB、3/4線SPI19. 引腳數(shù):4520. 引腳距離:0.5mm21. 連接類型: FPC插接型22. 工作電壓:3.3V23. 背光燈顏色及類型: 白色LED背光24. 背光電路:4 LED并聯(lián), 共陽,Vled =3.2V, Iled=80mA25. 使用壽命:100000h26. 工作溫度:-20 - 70C27. 儲存溫度:-30 - 80C28. 質(zhì)量體系認證:ISO9001:200829. 產(chǎn)品認證:RoHS2.4.2 液晶接口接線圖液晶外圍驅(qū)動電路。如圖2-4所示。圖2-4液晶接線

24、圖第3章 多氣體參數(shù)測定器系統(tǒng)的硬件設(shè)計第3章 多氣體參數(shù)測定器系統(tǒng)的硬件設(shè)計3.1 多氣體參數(shù)測定器基本原理多氣體參數(shù)測定器主要有三部分組成,一是檢測儀器,也就是甲烷,一氧化碳,二氧化碳,五個傳感器采集空氣中的可燃氣體,安裝在可燃氣體釋放源的附近環(huán)境中,當(dāng)這些檢測儀器檢測到附近的環(huán)境中有可燃氣體時,這個檢測儀器就能將可燃氣體濃度的變化轉(zhuǎn)成相應(yīng)的模擬信號;二是轉(zhuǎn)換器,轉(zhuǎn)換器的作用就是把檢測儀器的輸出的模擬電信號轉(zhuǎn)換成數(shù)字信號;三是控制器,控制器的作用是把轉(zhuǎn)換器輸出的數(shù)字信號進行處理并把處理過的信號濃度送到液晶屏上顯示,并能在濃度超過一定值發(fā)出信號控制報警電路。3.2 單片機最小系統(tǒng)1.復(fù)位電路

25、,如圖3-1(a)所示。圖3-1(a) MSP430單片機上電復(fù)位電路單片機在啟動時都需要復(fù)位,已使CPU及系統(tǒng)處于確定的初始狀態(tài),并從初始狀態(tài)開始工作。單片機的復(fù)位方式有:手動按鈕復(fù)位和上電復(fù)位。手動復(fù)位:需要人為在復(fù)位輸入端RST上加入高電平。一般采用的辦法是在RST端和正電源VCC之間接一個按鈕。上電復(fù)位:只要在RST復(fù)位端輸入引腳接一個電容至VCC端,下接一個電阻到地即可。2.時鐘電路MSP430系列單片機時鐘模塊包括數(shù)控振蕩器(DCO)、高速晶體振蕩器和低速晶體振蕩器等3個時鐘源。這是為了解決系統(tǒng)的快速處理數(shù)據(jù)要求和低功耗要求的矛盾,通過設(shè)計多個時鐘源或為時鐘設(shè)計各種不同工作模式,才

26、能解決某些外圍部件實時應(yīng)用的時鐘要求,如低頻通信、LCD顯示、定時器、計數(shù)器等。數(shù)字控制振蕩器DCO已經(jīng)集成在MSP430內(nèi)部,在系統(tǒng)中只需設(shè)計高速晶體振蕩器和低速晶體振蕩器兩部分電路。低速晶體振蕩器(LFXTl)滿足了低功耗及使用32768kHz晶振的要求。LFXTl振蕩器默認工作在低頻模式,即32768kHz,也可以通過外接450kHz8MHz的高速晶體振蕩器或陶瓷諧振器工作在高頻模式,在本電路中我們使用低頻模式,晶振外接2個22pF的電容經(jīng)過XIN和XOUT連接到MCU。高速晶振也稱為第二振蕩器XT2,它為MSP430F149工作在高頻模式時提供時鐘,XT2最高可達8MHz。在系統(tǒng)中XT

27、2采用4MHz的晶體,XT2外接2個22pF的電容經(jīng)過XT2IN和XT2OUT連接到MCU。如圖3-1(b)所示。圖3-1(b)高速時鐘電路3.數(shù)據(jù)存儲數(shù)據(jù)存儲選擇大容量的E2PROMCAT24WC256。它是一個256K位串行CMOS E2PROM,內(nèi)部含有32768個字節(jié),每字節(jié)為8位,CATALYST公司的先進CMOS技術(shù)減少了器件的功耗,CAT24WC256有一個64字節(jié)頁寫緩沖器該器件通過I2C總線接口進行操作。如圖3-1(c)所示。圖3-1(c)數(shù)據(jù)存儲電路4.整個單片機最小系統(tǒng)單片機最小系統(tǒng)上面就有復(fù)位電路、時鐘電路、數(shù)據(jù)存儲、電源,在加上MSP430單片機組成,單片機最小系統(tǒng)的

28、電路圖3-1(d)所示。圖3-1(d)MSP430單片機最小系統(tǒng)3.3 報警電路設(shè)計報警電路是聲音報警,電路是有蜂鳴器一個三極管和電阻組成,三極管是為了放大從單片機的輸出信號使蜂鳴器能都被驅(qū)動,如圖3-2所示。圖3-2報警電路3.4 液晶顯示模塊設(shè)計液晶顯示模塊的的設(shè)計,如圖3-3所示。KD023C-1B型的液晶接口RD、WR、RS、CS、REST分別接入單片機的P4.3、P4.4、P4.5、P4.6、P4.7引腳,數(shù)據(jù)口接MSP430單片機的P5口。圖3-3液晶顯示電路3.5 信號運算放大模塊設(shè)計氣體傳感器采集的信號,由MCP6002運算放大器進行放大,發(fā)送到單片機MSP430中,在單片機內(nèi)

29、部進行AD模數(shù)轉(zhuǎn)換,如圖3-4所示。圖3-4運算放大模塊設(shè)計第4章 多氣體參數(shù)測定器系統(tǒng)的軟件設(shè)計第4章 多氣體參數(shù)測定器系統(tǒng)的軟件設(shè)計4.1 多氣體參數(shù)測定器的主程序流程圖主程序流程圖,如圖4-1所示??扇細怏w傳感器MCP6002芯片對信號處理MSP430單片機3寸液晶顯示按鍵設(shè)置濃度報警不報警判斷是否超過設(shè)置濃度Y N圖4-1主程序流程圖4.2 控制器主程序設(shè)計要點系統(tǒng)程序只有采集程序,顯示程序,按鍵程序,報警程序組成。在設(shè)計程序的時候要學(xué)會模塊化編程,模塊化編程比較容易理解也更容易發(fā)現(xiàn)錯誤。模塊程序編寫的原則是:不該讓外界知道的信息就不應(yīng)該出現(xiàn)頭文件里面,而外界調(diào)用的模塊內(nèi)借口或者接口變

30、量所必須的信息就一定出現(xiàn)在有文件里面,否則,外界無法正確的調(diào)用我們提供的借口功能。因為為了讓外部函數(shù)或者文件調(diào)用我們提供的這個接口描述文件-即頭文件。同時我們自身模塊也需要包含這份模塊頭文件(因為其包含了模塊源文件中所需要的宏定義或者結(jié)構(gòu)體)。4.3 液晶顯示程序設(shè)計void LCD_PageMain(UINT8 mSelectedItem)/主菜單:參數(shù)、曲線、數(shù)據(jù)、時間、歸零、標(biāo)定 UINT16 mForColor6,mColor6; UINT16 i; if(CurrentPageIndex!=PageMain) LCDClear(SYS_WHITE); CurrentPageIndex

31、=PageMain; DisplayCircleFill(159,120,100,SYS_GREEN); /圓形標(biāo)題 /DisplayCircle(159,120,40,SYS_WHITE); DisplayCircle(159,120,41,SYS_WHITE); /DisplayCircle(159,120,42,SYS_WHITE); DrowLine(109,34,139,86,SYS_WHITE); DrowLine(209,206,179,154,SYS_WHITE); DrowLine(109,206,139,154,SYS_WHITE); DrowLine(209,34,179

32、,86,SYS_WHITE); DrowLine(59,119,119,119,SYS_WHITE); DrowLine(199,119,259,119,SYS_WHITE); /* GUI_LineWith(109,34,139,86,3,SYS_WHITE); GUI_LineWith(209,206,179,154,3,SYS_WHITE); GUI_LineWith(109,206,139,154,3,SYS_WHITE); GUI_LineWith(209,34,179,86,3,SYS_WHITE); GUI_LineWith(59,119,119,119,3,SYS_WHITE)

33、; GUI_LineWith(199,119,259,119,3,SYS_WHITE);*/ /LcdFill(0,LCD_H-35,LCD_W,35,SYS_BLUE); /LcdTxt(15,LCD_H-25,2,16,16,TXT_Select ,SYS_WHITE,SYS_BLUE); for(i=0;i6;i+) mColori=SYS_WINDOWS_Main_COLOR; mForColori=SYS_WINDOWS_TXT_COLOR; mColormSelectedItem-1=SYS_WINDOWS_SEL_COLOR; mForColormSelectedItem-1=S

34、YS_WINDOWS_SEL_TXT_COLOR; LcdTxt(109+28,36,2,24,24,TXT_Measure_CN,mForColor0,mColor0); LcdTxt(198,74,2,24,24,TXT_Curve_CN ,mForColor1,mColor1); LcdTxt(198,145,2,24,24,TXT_Data_CN ,mForColor2,mColor2); LcdTxt(109+28,180,2,24,24,TXT_Time_CN ,mForColor3,mColor3); LcdTxt(75,145,2,24,24,TXT_Zero_CN ,mFor

35、Color4,mColor4); LcdTxt(75,74,2,24,24,TXT_Calibrate_CN ,mForColor5,mColor5);4.4 報警程序設(shè)計void LCD_PageAlarmSetup_Key(UINT8 mKeyValue)/報警設(shè)置 UnionFP32 mTFpData; switch (mKeyValue) case Key_FUNC: if(SysParaHoldFlag) SysParaHoldFlag=FALSE; else SysParaHoldFlag=TRUE; PageRefreshEnable=TRUE; break; case Key_

36、DOWN: switch(SelectedItemIndex) case 1: if(SysParaHoldFlag) AlarmLimitCO2_TYPE-=0.1; else AlarmLimitCO2_TYPE-=0.01; if(AlarmLimitCO2_TYPECO2_LOW_SCALE) AlarmLimitCO2_TYPE=CO2_HIGH_SCALE; break; case 2: if(SysParaHoldFlag) AlarmLimitSO2_TYPE-=10; else AlarmLimitSO2_TYPE-=1; if(AlarmLimitSO2_TYPESO2_L

37、OW_SCALE) AlarmLimitSO2_TYPE=SO2_HIGH_SCALE; break; case 3: if(SysParaHoldFlag) AlarmLimitCH4_TYPE-=0.1; else AlarmLimitCH4_TYPE-=0.01; if(AlarmLimitCH4_TYPECH4_LOW_SCALE) AlarmLimitCH4_TYPE=CH4_HIGH_SCALE; break; case 4: if(SysParaHoldFlag) AlarmLimitO2_TYPE-=1; else AlarmLimitO2_TYPE-=0.1; if(Alar

38、mLimitO2_TYPEO2_LOW_SCALE) AlarmLimitO2_TYPE=O2_HIGH_SCALE; break; case 5: if(SysParaHoldFlag) AlarmLimitCO_TYPE-=10; else AlarmLimitCO_TYPE-=1; if(AlarmLimitCO_TYPECO_LOW_SCALE) AlarmLimitCO_TYPE=CO_HIGH_SCALE; break; case 6: if(SysParaHoldFlag) AlarmLimitH2S_TYPE-=10; else AlarmLimitH2S_TYPE-=1; i

39、f(AlarmLimitH2S_TYPECO2_HIGH_SCALE) AlarmLimitCO2_TYPE=CO2_LOW_SCALE; break; case 2: if(SysParaHoldFlag) AlarmLimitSO2_TYPE+=10; else AlarmLimitSO2_TYPE+=1; if(AlarmLimitSO2_TYPESO2_HIGH_SCALE) AlarmLimitSO2_TYPE=SO2_LOW_SCALE; break; case 3: if(SysParaHoldFlag) AlarmLimitCH4_TYPE+=0.1; else AlarmLi

40、mitCH4_TYPE+=0.01; if(AlarmLimitCH4_TYPECH4_HIGH_SCALE) AlarmLimitCH4_TYPE=CH4_LOW_SCALE; break; case 4: if(SysParaHoldFlag) AlarmLimitO2_TYPE+; else AlarmLimitO2_TYPE+=0.1; if(AlarmLimitO2_TYPEO2_HIGH_SCALE) AlarmLimitO2_TYPE=O2_LOW_SCALE; break; case 5: if(SysParaHoldFlag) AlarmLimitCO_TYPE+=10; e

41、lse AlarmLimitCO_TYPE+=1; if(AlarmLimitCO_TYPECO_HIGH_SCALE) AlarmLimitCO_TYPE=CO_LOW_SCALE; break; case 6: if(SysParaHoldFlag) AlarmLimitH2S_TYPE+=10; else AlarmLimitH2S_TYPE+=1; if(AlarmLimitH2S_TYPEH2S_HIGH_SCALE) AlarmLimitH2S_TYPE=H2S_LOW_SCALE; break; PageRefreshEnable=TRUE; break; case Key_EN

42、TER: /存儲當(dāng)前設(shè)定的報警參數(shù) mTFpData.mFloat=AlarmLimitSelectedItemIndex-1; SaveFloatData(SYS_ALARM_LIMIT_Addr+(SelectedItemIndex-1)*4,mTFpData.mFloat); KeyIncreaseItem(6,1); PageRefreshEnable=TRUE; break; case Key_CANCEL: NextPageIndex=PageData; SelectedItemIndex = 3; PageRefreshEnable=TRUE; break; 4.5 模數(shù)轉(zhuǎn)換子程

43、序設(shè)計void Init_AD(UINT8 Channel) / Channel : 18 P6SEL = (1Channel); ADC12CTL0 &= ENC; ADC12CTL0 = MSC+ADC12ON+SHT0_15+REFON+REF2_5V; ADC12CTL1 = SHP+CONSEQ1; ADC12MCTL0= EOS+SREF_2+Channel; ADC12CTL0 |= ENC; Delay(100);SINT32 Read_AD(UINT8 Channel) FP32 result=0; UINT8 i=0; FP32 TempResultFILTER_TIMES

44、; Init_AD(Channel); ADC12CTL0|=ADC12SC; for(i=0;iFILTER_TIMES;i+) Delay(SAMPLE_DELAY); TempResulti=ADC12MEM0; /result+=ADC12MEM0; ADC12CTL0 |= MSC+ENC; /對ADC12CTL0進行設(shè)置,打開AD轉(zhuǎn)換 ADC12CTL1 |= SHP;/單通道連續(xù)轉(zhuǎn)換模式 ADC12CTL0 &= ENC; result=MiddleFilter(TempResult,FILTER_TIMES); /result=(result+AverageVal(TempResult,FILTER_AVR_START,FILTER_AVR_END)/2; return(SINT32)result*10);void AdParaSample(void) UINT8 i; FP32 LastResult,mVal; FP32 mResVal; for(i=0;i=LastResult) mVal=AdcDigiti-LastResult; else mVal=LastResult-AdcDigiti; if(mValLimitSpani) AdcDigiti=(SINT32)(LastResult*(1-FILTER_PERCENT)+(AdcDigi

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論