




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、綿陽(yáng)師范學(xué)院2016屆本科畢業(yè)設(shè)計(jì)(論文)本科生畢業(yè)設(shè)計(jì)(論文)題 目 基于單片機(jī)的煤氣報(bào)警器 設(shè)計(jì)與實(shí)現(xiàn) 專(zhuān) 業(yè) 電子信息科學(xué)與技術(shù) 院 部 信息工程學(xué)院 學(xué) 號(hào) 姓 名 指 導(dǎo) 教 師 答 辯 時(shí) 間 2016年5月 工作時(shí)間: 2015年12月 至2016年5月基于單片機(jī)的煤氣報(bào)警器設(shè)計(jì)與實(shí)現(xiàn)摘 要:此課題研究設(shè)計(jì)煤氣報(bào)警采用了STC89C51單片機(jī)為報(bào)警器的核心部件,對(duì)煤氣是否泄漏進(jìn)行控制。并選用可燃?xì)怏w氣敏傳感器MQ- 5與ADC0832數(shù)模轉(zhuǎn)換器相連接,將傳感器收集到的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)再傳送給單片機(jī),使得STC89C51單片機(jī)能處理這些數(shù)字信號(hào),并對(duì)處理后的數(shù)據(jù)進(jìn)行分析。這里
2、設(shè)置了3個(gè)按鍵,一個(gè)是減小報(bào)警值,一個(gè)是增大報(bào)警值,一個(gè)是初始化報(bào)警值(默認(rèn)100mg/L)并在LCD1602中顯示。通電之后,如果煤氣采集值大于預(yù)置的氣體濃度值的話則會(huì)啟動(dòng)報(bào)警電路蜂鳴器發(fā)出報(bào)警聲音,反之則不會(huì)報(bào)警。關(guān)鍵詞:氣敏傳感器;蜂鳴器;STC89C51單片機(jī);ADC0832;LCD1602Microcontroller-based Gas Alarm Design and ImplementationUndergraduate: Chaole ZhangSupervisor:Bowei Chen Abstract:This research use a design gas alar
3、m STC89C51 micro-controller core components for gas leaks control. And selection of the gas sensor MQ- 5 and ADC0832 analog converter connected to the sensor to collect the analog signal into a digital signal then passes the micro-controller,so that STC89C51 micro-controller can deal with the digita
4、l signals, and the processed data can be analyzed . There are three buttons,one is to reduce the value of warning, one is to increase the alarm value of warning,another one is initialized value of warning (default 100mg / L) and displayed in the LCD1602. After it is powered,if the value is higher th
5、an the concentration of the gas concentration alarm setting value,then the circuit will automatically activate the buzzer alarm .Key words:selected gas sensor;Leaking gases alarm;STC89C51 microcomputer; ADC0832;LCD1602目錄1 前言11.1研究目的和意義11.2研究?jī)?nèi)容和方法22 系統(tǒng)總體概述32.1天然氣報(bào)警的設(shè)計(jì)思路32.2系統(tǒng)的設(shè)計(jì)要求及基本功能3 2.2.1系統(tǒng)的設(shè)計(jì)要求3
6、 2.2.2系統(tǒng)的基本功能32.3系統(tǒng)結(jié)構(gòu)框圖32.4方案的選擇43 硬件設(shè)計(jì)53.1主控單片機(jī)模塊53.2氣敏傳感器模塊53.3模數(shù)轉(zhuǎn)換模塊63.4蜂鳴器報(bào)警模塊73.5 LCD1602顯示模塊84 軟件設(shè)計(jì)104.1程序設(shè)計(jì)思路10 4.1.1 main主程序10 4.1.2 ADC0832程序設(shè)計(jì)11 4.1.3 LCD1602程序114.2 程序設(shè)計(jì)流程圖125 結(jié)論與建議135.1結(jié)論135.2建議14致 謝15參考文獻(xiàn)16附錄一 源程序17ADC0832驅(qū)動(dòng)程序:17LCD1602驅(qū)動(dòng)程序:19主程序:22附錄二 原理圖251 前言1.1研究目的和意義煤氣實(shí)用的安全隱患對(duì)于每戶(hù)家庭
7、來(lái)說(shuō)是個(gè)不可忽視的問(wèn)題。為了減小或避免各種因煤氣泄露而造成的經(jīng)濟(jì)損失和人身傷害,所以,使用一種實(shí)用的煤氣報(bào)警器用來(lái)預(yù)防或杜絕這種安全隱患是頭號(hào)問(wèn)題。因?yàn)槿绻斐擅簹庵卸净蛘弑◣Ыo人們的影響會(huì)不可計(jì)算的,甚至?xí){生命。而今,煤氣報(bào)警器以外觀小巧,性能穩(wěn)定,方便攜帶安裝,精確度高的特性,更以很低的價(jià)錢(qián)進(jìn)去各家各戶(hù)。由于煤氣泄漏對(duì)人們?cè)斐珊芏嗖槐愫臀:?,所以,?duì)于煤氣泄漏的預(yù)防和實(shí)時(shí)監(jiān)測(cè),是一個(gè)很重要的問(wèn)題,因此,我們要求的煤氣傳感器必須具有很高的的靈敏度,能夠精確的檢測(cè)到空氣中煤氣的濃度值,一旦有煤氣泄漏發(fā)生,煤氣報(bào)警器就能及時(shí)的提醒用戶(hù),避免人們因?yàn)槊簹庑孤┒粘刹槐匾娜松韨徒?jīng)濟(jì)損失,
8、隨著現(xiàn)在社會(huì)電子科技技術(shù)的發(fā)展與突破,煤氣報(bào)警器不斷的在原有的基礎(chǔ)上添加更多的輔助功能和外圍模塊,除了已有的模數(shù)轉(zhuǎn)換模塊,報(bào)警模塊,現(xiàn)在又添加了顯示模塊LED、LCD、點(diǎn)陣等,外圍繼電器模塊:連接排氣扇和關(guān)閉閥門(mén)模塊等構(gòu)成。所以這樣告訴大家,如果技術(shù)不更新,就會(huì)落后,哪怕是原地踏步也是一種落后。我們平常都是用STC的 51單片機(jī)來(lái)做設(shè)計(jì)。如今氣體檢測(cè)技術(shù)日漸成熟,為現(xiàn)代人的工作、研究、生活提供更好的設(shè)施和生活質(zhì)量。煤氣泄漏報(bào)警器的發(fā)展與更新主要有以下幾個(gè)方面:低功耗,高性能,小體積,精簡(jiǎn)電路,降低成本,這是我們當(dāng)今電子領(lǐng)域技術(shù)發(fā)展進(jìn)步的重要體現(xiàn)之一。煤氣泄漏報(bào)警器還有就是增強(qiáng)可靠性,實(shí)現(xiàn)元件和
9、電路集成化,多功能化,發(fā)展現(xiàn)場(chǎng)適用的變送器和智能型煤氣報(bào)警器1。本次設(shè)計(jì)的煤氣報(bào)警器模塊組成一般是:?jiǎn)纹瑱C(jī)主控模塊,LCD模塊,氣敏傳感器模塊,蜂鳴器報(bào)警模塊,數(shù)模轉(zhuǎn)換模塊。這些報(bào)警器的出現(xiàn),能隨時(shí)、及時(shí)、實(shí)時(shí)準(zhǔn)確測(cè)量周?chē)h(huán)境中的煤氣等危害氣體,保護(hù)各個(gè)家庭的人身安全和財(cái)產(chǎn)安全功不可沒(méi)。1.2研究?jī)?nèi)容和方法本設(shè)計(jì)主要以STC89C51單片機(jī)為主控模塊,LCD1602顯示模塊,ADC0832數(shù)模轉(zhuǎn)換模塊,蜂鳴器報(bào)警模塊,為分支模塊的煤氣泄漏報(bào)警器。該系統(tǒng)便于安裝模塊簡(jiǎn)單,功耗低,靈敏度高,當(dāng)出現(xiàn)異常情況時(shí),蜂鳴器會(huì)第一時(shí)間報(bào)警。關(guān)于報(bào)警電路,考慮到兩種因素來(lái)設(shè)計(jì):第一:從視覺(jué)上,我們可以設(shè)計(jì)當(dāng)系
10、統(tǒng)檢測(cè)到煤氣泄露時(shí)使用發(fā)光二極管控制它,讓它不斷的亮滅來(lái)提示報(bào)警。第二:從聽(tīng)覺(jué)上,我們可以設(shè)計(jì)當(dāng)系統(tǒng)檢測(cè)到煤氣泄露時(shí)使用蜂鳴器,讓蜂鳴器產(chǎn)生的鳴叫來(lái)提示報(bào)警。關(guān)于顯示電路,在以前的單片機(jī)課程中,我們可以用以前實(shí)驗(yàn)做過(guò)的LCD1602來(lái)顯示檢測(cè)到的煤氣濃度值,在通過(guò)預(yù)置數(shù)的報(bào)警值作出比較,這兩個(gè)值都可以在LCD上顯示。本設(shè)計(jì)使用STC89C51單片機(jī)而不使用ATM89C51的單片機(jī),是因?yàn)镾TC的平均價(jià)格適中,性能也很不錯(cuò),用它來(lái)完成本設(shè)計(jì)綽綽有余。本設(shè)計(jì)主要針對(duì)檢測(cè)CO氣體,主要實(shí)現(xiàn)的功能是能夠?qū)崟r(shí)的對(duì)家庭燃?xì)庑孤┑臋z測(cè)與報(bào)警。單片機(jī)通過(guò)ADC0832為主體的模數(shù)轉(zhuǎn)換模塊所輸出得來(lái)的信號(hào),來(lái)對(duì)
11、之后的蜂鳴器報(bào)警模塊和LCD顯示模塊來(lái)進(jìn)行驅(qū)動(dòng),實(shí)現(xiàn)當(dāng)ADC檢測(cè)值超過(guò)預(yù)置值時(shí),能對(duì)蜂鳴器進(jìn)行工作。本次系統(tǒng)設(shè)計(jì)能夠把氣體傳感器輸出的模擬信號(hào)經(jīng)過(guò)ADC0832模塊處理送入單片機(jī)主控模塊中進(jìn)行處理,并將測(cè)量數(shù)值傳到LCD1602顯示模塊,若氣體濃度超過(guò)預(yù)置值,那么控制單片機(jī)引腳上的蜂鳴器的引腳高電平1,此時(shí)蜂鳴器就會(huì)發(fā)出警報(bào)聲,并且LED閃爍,提醒用戶(hù)有異常情況;若沒(méi)有超過(guò)預(yù)置值,蜂鳴器就不會(huì)工作。該設(shè)計(jì)以MQ-5氣敏傳感器為接收設(shè)備,STC89C51 單片機(jī)為核心以及其他輔助電路,設(shè)計(jì)此煤氣報(bào)警器并實(shí)現(xiàn)以下幾個(gè)問(wèn)題:(1)設(shè)計(jì)電路在通電的情況下能穩(wěn)定的運(yùn)行并準(zhǔn)確測(cè)量周?chē)h(huán)境中CO泄漏值;(2
12、)實(shí)現(xiàn)C語(yǔ)言對(duì)于單片機(jī)的各個(gè)模塊的編程;(3)了解MQ-5氣體傳感器的具體功能;(4)了解LCD1602的工作原理;(5)了解ADC0832的工作原理。2 系統(tǒng)總體概述 2.1天然氣報(bào)警的設(shè)計(jì)思路本次研究基于單片機(jī)煤氣報(bào)警器設(shè)計(jì)的報(bào)警器能夠檢測(cè)出空氣中煤氣含量的濃度百分比,如果采集到的濃度值高于我們預(yù)置的煤氣報(bào)警值,蜂鳴器就會(huì)開(kāi)始報(bào)警,發(fā)光二極管也會(huì)閃爍示警,由于實(shí)際設(shè)計(jì)的實(shí)踐過(guò)程中,煤氣不容易采集,所以我們把報(bào)警值預(yù)置為0,這樣就能檢測(cè)出報(bào)警模塊中是否存在問(wèn)題。首先,MQ-5氣敏傳感器作為檢測(cè)氣體濃度值檢測(cè)模塊首先要實(shí)時(shí)檢查我們的空間環(huán)境中一氧化碳的濃度,并將氣體濃度通過(guò)ADC0932模數(shù)轉(zhuǎn)
13、換轉(zhuǎn)換成為對(duì)應(yīng)的電信號(hào)傳給單片機(jī)。隨后將數(shù)字信號(hào)以10進(jìn)制數(shù)的形式表現(xiàn)在LCD1602顯示模塊中,同時(shí)判斷氣體濃度值,讓這個(gè)濃度值與預(yù)置報(bào)警值進(jìn)行比較,如果氣體濃度值大于預(yù)置報(bào)警值,蜂鳴器報(bào)警模塊則會(huì)自動(dòng)啟動(dòng)報(bào)警電路,蜂鳴器發(fā)出報(bào)警聲音示意煤氣泄漏,反之則沒(méi)有泄漏煤氣。所以我們最終定下來(lái)的設(shè)計(jì)方案如下:煤氣泄漏報(bào)警器的關(guān)鍵部分是STC89C51單片機(jī)主控模塊和MQ-5氣體傳感器模塊,根據(jù)周?chē)h(huán)境,所檢測(cè)的氣體采用MQ-5氣敏傳感器和STC89C51單片機(jī)。系統(tǒng)總體主要是分為:STC89C51單片機(jī)、氣敏傳感器MQ-5模塊、ADC0832模數(shù)轉(zhuǎn)換、LCD1602顯示模塊、蜂鳴器報(bào)警模塊這五個(gè)部分
14、。 2.2系統(tǒng)的設(shè)計(jì)要求及基本功能 2.2.1系統(tǒng)的設(shè)計(jì)要求 (1)由于環(huán)境因素導(dǎo)致采集煤氣量有所差異,要求可以預(yù)置報(bào)警值(2)測(cè)量煤氣范圍可以設(shè)定(范圍是50mg/L200mg/L)(3)初始化時(shí)顯示設(shè)定報(bào)警值100mg/L 2.2.2系統(tǒng)的基本功能(1)能對(duì)煤氣值進(jìn)行檢測(cè),超出報(bào)警值時(shí)蜂鳴器鳴叫。(2)能通過(guò)按鍵來(lái)預(yù)置報(bào)警值,并且在超出預(yù)置報(bào)警值時(shí)進(jìn)行報(bào)警。2.3系統(tǒng)結(jié)構(gòu)框圖本設(shè)計(jì)中煤氣報(bào)警器系統(tǒng)采用了STC89C51單片機(jī)主控模塊,LCD1602顯示模塊,蜂鳴器報(bào)警模塊,氣敏傳感器MQ-5模塊,和ADC0832模數(shù)轉(zhuǎn)換模塊。其設(shè)計(jì)合理,結(jié)構(gòu)簡(jiǎn)單,成本不高,其結(jié)構(gòu)如下圖2-1所示: 圖 2
15、-1. 天燃?xì)庑孤﹫?bào)警系統(tǒng)結(jié)構(gòu)框圖其中MQ-5氣敏傳感器是對(duì)于周?chē)h(huán)境煤氣濃度值進(jìn)行檢測(cè)。ADC0832轉(zhuǎn)換模塊是將傳感器接收到的模擬信號(hào)轉(zhuǎn)換成“0”和“1”的形式,然后經(jīng)過(guò)輔助電路供給51單片機(jī)采集信號(hào)。最后,由單片機(jī)判斷是否進(jìn)行聲光信號(hào)報(bào)警,來(lái)表明當(dāng)前的狀態(tài)。2.4方案的選擇(1)主控模塊設(shè)計(jì)方案的論證與選擇本設(shè)計(jì)采用單片機(jī)STC89C51單片機(jī),與ATM89C51單片機(jī)芯片作比較,STC89C51單片機(jī)基本功能用來(lái)做本次設(shè)計(jì)完全夠用,關(guān)鍵是這款芯片價(jià)格比ATMEL公司的51單片機(jī)便宜。STC89C51單片機(jī)是宏晶科技推出的新一代高速/低功耗/超強(qiáng)抗干擾的單片機(jī),指令代碼完全兼容傳統(tǒng)805
16、1單片機(jī),12時(shí)鐘/機(jī)器周期和6時(shí)鐘/機(jī)器周期可以任意選擇綜合考慮設(shè)計(jì)成本以及實(shí)現(xiàn)的功能后,決定采用單片機(jī)STC89C51芯片23。(2)顯示模塊的設(shè)計(jì)方案的論證與選擇采用LCD1602動(dòng)態(tài)顯示,LCD顯示分兩欄,一欄顯示ADC測(cè)量值一欄顯示預(yù)置報(bào)警值。LCD1602已很普遍了,具體介紹我就不多說(shuō)了,市情上這種液晶絕大多數(shù)是能夠很便捷地應(yīng)用于市面上大部分的字符型液晶4。用LCD顯示我們的內(nèi)容可以用以前單片機(jī)實(shí)驗(yàn)現(xiàn)有的LCD驅(qū)動(dòng)程序改一下端口依葫蘆畫(huà)瓢搬過(guò)來(lái)使用,這樣做出來(lái)的效果無(wú)疑很高大上,比多位LED數(shù)碼管顯示出來(lái)的效果好很多,所以我采用LCD1602作為顯示模塊。(3)報(bào)警模塊的設(shè)計(jì)與選擇
17、報(bào)警模塊要工作的話要求在周?chē)h(huán)境中的煤氣濃度值超出預(yù)置值時(shí),利用蜂鳴器的鳴叫可以很實(shí)時(shí)的作出報(bào)警,設(shè)計(jì)電路很實(shí)用方便,用一個(gè)三極管跟蜂鳴器連接保證蜂鳴器供電充足。253 硬件設(shè)計(jì)3.1主控單片機(jī)模塊 STC89C51單片機(jī)是一款高性能,低功耗,穩(wěn)定的集成芯片,它有40個(gè)引腳,除了VCC和GND腳,每個(gè)腳都可以用程序來(lái)控制置高電平還是低電平,在很多開(kāi)發(fā)板上,都是用的這款STC89C51單片機(jī),可見(jiàn)這款單片機(jī)是很受大家的熱愛(ài)與歡迎。P2口內(nèi)部帶上拉電阻,所以P2口不用像P0口一樣外接設(shè)備需要上拉電阻。我們?cè)诖嗽O(shè)計(jì)中用P2口連接LCD1602;用P0.1口引申出一個(gè)繼電器做開(kāi)關(guān),并預(yù)留一個(gè)繼電器外接
18、口接外設(shè)比如說(shuō)硬件開(kāi)關(guān);用P1.4與P1.5焊接兩個(gè)按鍵作為預(yù)置報(bào)警值按鈕;用P3.0與P3.1預(yù)留下載口,方便下載與修改。3.2氣敏傳感器模塊MQ-5氣體傳感器基本原理圖(如圖2所示),此傳感器能夠很精確的檢測(cè)出空氣中煤氣濃度的含量,用來(lái)做本次設(shè)計(jì)完全能夠滿(mǎn)足要求,它的靈敏度、高集成、小體積、低功耗,在各種應(yīng)用類(lèi)型里面都有著廣泛的好評(píng),而且它是一款能在很多地方應(yīng)用的低成本傳感器。MQ-5基本電路圖如圖3-1:圖3-1 MQ-5基本原理圖如圖3-2所示MQ-5引腳圖,2,5為加熱電極,1,3和4,6導(dǎo)通圖3-2 MQ-5引腳圖3.3模數(shù)轉(zhuǎn)換模塊 ADC0832 是我們經(jīng)常用到的一款雙通道A/D
19、轉(zhuǎn)換、在很多使用傳感器都能用到的高精度集成芯片,其目前已經(jīng)有很高的普及率。使用ADC0832是在以后基于傳感器的單片機(jī)應(yīng)用方面必須要掌握的技能,不僅僅是因?yàn)槟?shù)之間的轉(zhuǎn)換,還要養(yǎng)成自主查找芯片資料的習(xí)慣,因?yàn)槲覀冊(cè)谌粘W(xué)習(xí)的過(guò)程中,只有不斷的學(xué)習(xí)才不會(huì)落后。電路設(shè)計(jì)時(shí),我們通常把D0和D1連接單片機(jī),判斷CS的狀態(tài),再分析CLK的時(shí)序,在程序中用公式的形式表示出來(lái),用if語(yǔ)句來(lái)判斷狀態(tài)。一般在看傳感器芯片手冊(cè)對(duì)應(yīng)的時(shí)序圖,找到對(duì)應(yīng)的關(guān)系,在寫(xiě)出程序,準(zhǔn)確的分辨CH0與CH1在不同狀態(tài)下輸入端,IN+與IN-怎么輸入;要準(zhǔn)確的分析第幾個(gè)下降沿轉(zhuǎn)換數(shù)據(jù)最高位,這是使用ADC0832的關(guān)鍵。圖3-3
20、為ADC0832數(shù)據(jù)讀取流程。開(kāi)始使能芯片產(chǎn)生時(shí)鐘信號(hào)輸入通道控制字讀取2字節(jié)數(shù)據(jù)字節(jié)數(shù)據(jù)校驗(yàn)表2將值選入指定寄存器結(jié)束圖3-3 ADC0832數(shù)據(jù)讀取流程芯片接口說(shuō)明: · CS_ 片選使能,低電平芯片使能。 · CH0 模擬輸入通道0,或作為IN+/-使用。 · CH1 模擬輸入通道1,或作為IN+/-使用。 · GND 芯片參考0 電位(地)。 · DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。 · DO 數(shù)據(jù)信號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。 · CLK 芯片時(shí)鐘輸入。 · Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。pro
21、tel 99 se中ADC0832電路連接原理圖如圖3-4所示圖3-4 ADC0832電路連接原理圖3.4蜂鳴器報(bào)警模塊對(duì)于煤氣報(bào)警裝置,此模塊是標(biāo)志模塊。通過(guò)根據(jù)煤氣所占空氣中的百分比來(lái)決定什么時(shí)候報(bào)警,避免由于人們吸入一氧化碳過(guò)度而造成的人身傷害與財(cái)產(chǎn)的損失。蜂鳴器報(bào)警表現(xiàn)形式如下:(1)ADC數(shù)據(jù)采集值低于報(bào)警值,說(shuō)明此時(shí)煤氣濃度不高或沒(méi)有煤氣泄露,蜂鳴器正常;(2)當(dāng)空氣中有一氧化碳時(shí),ADC數(shù)據(jù)采集值高于報(bào)警值,此時(shí)蜂鳴器開(kāi)始工作鳴叫;為了保證蜂鳴器正常工作,要在電路中單獨(dú)加一個(gè)三極管,這是由于單片機(jī)本身的對(duì)外圍設(shè)備驅(qū)動(dòng)能力不強(qiáng)。用放大電路或者PNP的集電極連接蜂鳴器以確保蜂鳴器供應(yīng)
22、電流充足,蜂鳴器才會(huì)工作。這里連接單片機(jī)RD即P3.7口,是利用P3口第二功能,所以應(yīng)該保持高電平。圖3-5為protel 99 se蜂鳴器電路連接原理圖圖3-5 蜂鳴器電路連接原理圖3.5 LCD1602顯示模塊我們常用的顯示模塊一般有以下四種。LED:LED也就是我們常說(shuō)的發(fā)光二極管,一般只是用來(lái)做流水燈,指示燈,它有兩個(gè)引腳,長(zhǎng)腳接VCC,短腳接GND,兩端均可以直接連接在單片機(jī)上,然后用單片機(jī)控制端口置數(shù)“1”或“0”。數(shù)碼管:從位數(shù)上說(shuō)分單位和多位,從電極上說(shuō)分共陰極和共陽(yáng)極,從顯示功能來(lái)說(shuō)分靜態(tài)顯示和動(dòng)態(tài)顯示。不管是單位數(shù)碼管還是多位數(shù)碼管,也不論是共陰還是共陽(yáng),數(shù)碼管都是用來(lái)顯示
23、數(shù)字和基本字符的,連接單片機(jī),控制對(duì)應(yīng)的位選,在顯示要確定的段選碼,就能顯示出我們想要顯示的數(shù)據(jù)。點(diǎn)陣:是由很多個(gè)LED組裝而成,原理也很簡(jiǎn)單,可以顯示數(shù)字,字符和漢字,但是用來(lái)做本設(shè)計(jì)的顯示模塊,成本太高,不劃算。LCD:LCD1602是可以用來(lái)顯示字符、數(shù)字、符號(hào),完全可以用作本次設(shè)計(jì)的顯示模塊 。我們把單片機(jī)P2口用于連接LCD1602數(shù)據(jù)位如圖如圖3-6:圖3-6 1602電路原理連接圖LCD1602各個(gè)引腳都有其獨(dú)有的功能,有的是VCC,有的是GND,有的是數(shù)據(jù)位,有的是背光燈,還有使能信號(hào),讀寫(xiě)選擇,命令選擇等。如果在焊接過(guò)程中失誤,焊錯(cuò)的話,會(huì)導(dǎo)致LCD不能正常顯示,所以,在使用
24、這塊顯示模塊之前,一定要仔細(xì)翻閱LCD1602的資料,不要把引腳搞錯(cuò)了。LCD1602各引腳接口如表3-1所示:表3-1 LCD1602引腳接口說(shuō)明表編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫(xiě)選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極關(guān)于LCD1602和LED差不多,LED是用段選碼來(lái)顯示相應(yīng)的字符而LCD就是要寫(xiě)入指令模式來(lái)進(jìn)行,它們都是由很多個(gè)點(diǎn)陣組成,LCD無(wú)非是點(diǎn)陣多了一些,可以顯示更多種類(lèi)的字符,在實(shí)物制作過(guò)程
25、中以P2口連接LCD1602的數(shù)據(jù)位,其他引腳接口均以電路圖為準(zhǔn)。4 軟件設(shè)計(jì)4.1程序設(shè)計(jì)思路我們本次的設(shè)計(jì)是使用51單片機(jī)與C語(yǔ)言軟件件結(jié)合的設(shè)計(jì),對(duì)我們的大學(xué)生涯最為標(biāo)志性的一次檢測(cè),不只是用到了數(shù)模電的知識(shí),還要用到C語(yǔ)言程序設(shè)計(jì)的知識(shí)。在我們學(xué)習(xí)C語(yǔ)言程序設(shè)計(jì)的時(shí)候,我們經(jīng)常是把一個(gè)main程序?qū)懙浇Y(jié)束,不打注釋?zhuān)环帜K,如果在后續(xù)的實(shí)驗(yàn)過(guò)程中要改進(jìn)某些功能,那么我們就得苦苦尋找當(dāng)初寫(xiě)的在冗長(zhǎng)的代碼里某一個(gè)C語(yǔ)言程序,非常不利于以后的技術(shù)更新和功能修改。所以,我們把本次程序設(shè)計(jì)寫(xiě)成3個(gè)模塊,如圖4-1所示。main主程序LCD1602程序ADC0832程序圖4-1 軟件流程設(shè)計(jì)框圖
26、4.1.1 main主程序我們?cè)趍ain程序設(shè)計(jì)里可用以下步驟來(lái)說(shuō)明:(1)包含ADC0832程序和LCD1602程序;(2) I/O口初始化;(3)按鍵程序;(4)報(bào)警程序;由于我們本次設(shè)計(jì)是要檢測(cè)煤氣,但是在日常生活中不容易采集到煤氣,所以我把本次程序設(shè)計(jì)里,把沒(méi)有采集到煤氣的數(shù)據(jù)值設(shè)置為0,把本次采集的數(shù)據(jù)設(shè)置在按鍵程序中,通過(guò)按鍵的脈沖信號(hào),讓報(bào)警值增大或減小,當(dāng)報(bào)警值減小到0時(shí),通過(guò)比較程序,作出相應(yīng)判斷并執(zhí)行報(bào)警程序(圖4-2所示)。 圖4-2 按鍵程序4.1.2 ADC0832程序設(shè)計(jì)對(duì)于數(shù)字信號(hào)的采集,可以選擇有兩種方式:比較器,ADC。在一般的傳感器電路設(shè)計(jì)中,使用比較器能夠
27、避免使用ADC和寫(xiě)ADC的程序的過(guò)程,經(jīng)過(guò)電路設(shè)計(jì)可以直接輸出數(shù)字信號(hào),但是本次設(shè)計(jì)沒(méi)有使用比較器是因?yàn)閭€(gè)人電路設(shè)計(jì)經(jīng)驗(yàn)不足,所以在本設(shè)計(jì)中,使用ADC來(lái)實(shí)現(xiàn)本次設(shè)計(jì)。在使用傳感器,并采集對(duì)應(yīng)的正確的數(shù)字信號(hào),使用ADC是必不可少的,把“0”或“1”送到單片機(jī),正確的驅(qū)動(dòng)ADC才能正確的實(shí)現(xiàn)功能。4.1.3 LCD1602程序LCD1602已經(jīng)不陌生,很多實(shí)驗(yàn)都用過(guò),它的程序設(shè)計(jì)流程圖如圖4-3所示初始化寫(xiě)命令寫(xiě)數(shù)據(jù)顯示延時(shí)圖4-3 LCD1602程序設(shè)計(jì)流程圖4.2 程序設(shè)計(jì)流程圖圖4-4為程序設(shè)計(jì)流程圖圖4-4 軟件流程設(shè)計(jì)圖以上就是我們本次設(shè)計(jì)整個(gè)模塊的程序設(shè)計(jì)流程圖,我們大致可以發(fā)現(xiàn),
28、用到了很多判斷語(yǔ)句,在我們C語(yǔ)言程序設(shè)計(jì)中條件語(yǔ)句常用的無(wú)非就是if和swich語(yǔ)句了,由此可見(jiàn),要學(xué)好我們這個(gè)專(zhuān)業(yè),熟練掌握C語(yǔ)言是必備技能之一。5 結(jié)論與建議5.1結(jié)論本設(shè)計(jì)對(duì)于避免煤氣泄漏和煤氣中毒的實(shí)時(shí)氣體檢測(cè)并報(bào)警器有著巨大的作用,特別是用于保障每家每戶(hù)的生活安全,同時(shí)也能看出我們所處的時(shí)代正在發(fā)生巨大的進(jìn)步。 本設(shè)計(jì)在陳老師的幫助下,對(duì)這個(gè)煤氣報(bào)警器的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行了嚴(yán)格的系統(tǒng)設(shè)計(jì)分析。 本論文設(shè)計(jì)的煤氣是否泄漏并采集處理成數(shù)字信號(hào)部分,蜂鳴器報(bào)警部分,LCD602顯示部分與單片機(jī)STC89C51控制電路等部分構(gòu)成。MQ-5傳感器是一款性
29、價(jià)比比較高小巧方便易攜帶的高集成模塊,它的使用簡(jiǎn)單,電路圖易懂,MQ-5穩(wěn)定性和靈敏度的性能都很不錯(cuò)。對(duì)于單片機(jī)電路采用了STC89C51單片機(jī)構(gòu)成成本較低和高速處理能力,還有指導(dǎo)老師幫助下完成的片內(nèi)外設(shè)具有十分成熟的電路設(shè)計(jì)。同時(shí)蜂鳴器報(bào)警部分有可以預(yù)置報(bào)警值,在判斷ADC采集值與報(bào)警值作比較時(shí),這個(gè)比較函數(shù)也是難點(diǎn)所在。圖5-1 實(shí)物演示圖多虧陳老師的指導(dǎo),我還是把本設(shè)計(jì)成功做出來(lái)了,以上是實(shí)物演示見(jiàn)圖5-1,采集值為0,報(bào)警默認(rèn)值為100,LCD的顯示正常,把報(bào)警值改為0,蜂鳴器也能正常報(bào)警,數(shù)據(jù)采集正常,整體電路基本功能都完成。5.2建議本次設(shè)計(jì)還是有很多不足之處。(1)由于方便修改,
30、我在這次設(shè)計(jì)中設(shè)計(jì)了焊接燒寫(xiě)程序的接口,但是這也造成了一些問(wèn)題,比如說(shuō)我要改程序添加功能,當(dāng)我插上燒寫(xiě)器后,液晶顯示器會(huì)顯示異常。(2)由于繼電器費(fèi)用較高,單個(gè)購(gòu)買(mǎi)不劃算,所以在本設(shè)計(jì)中,繼電器沒(méi)有焊接,部分功能沒(méi)有實(shí)現(xiàn)。(3)在ADC0832程序處理的過(guò)程中,是個(gè)人能力的原因,在ADC0832模塊中處理不是很完善,導(dǎo)致實(shí)物做好后通電,數(shù)據(jù)采集有時(shí)候會(huì)出現(xiàn)問(wèn)題,明明沒(méi)有煤氣的時(shí)候,依然要報(bào)警,然后過(guò)一段時(shí)間就正常了。(4)在焊接的過(guò)程中,很多問(wèn)題,電烙鐵拿不穩(wěn),飛線很亂,不美觀,在看芯片手冊(cè)對(duì)應(yīng)實(shí)物焊接的過(guò)程中容易把引腳搞混,導(dǎo)致焊接錯(cuò)誤。在此次研究設(shè)計(jì)期間,遇到了不少問(wèn)題:電路設(shè)計(jì)問(wèn)題:大二
31、學(xué)習(xí)的PROTEL 99 SE時(shí)間太長(zhǎng)并且學(xué)過(guò)之后很少使用,就忘記了很多快捷鍵和一些基本的使用方法,后來(lái)在網(wǎng)上看視頻教程終于能夠獨(dú)立完成電路設(shè)計(jì)。ADC0832采集數(shù)據(jù)之間的函數(shù)關(guān)系:采集值的處理過(guò)程中如何用C語(yǔ)言來(lái)準(zhǔn)確描述出把模擬信號(hào)與對(duì)應(yīng)的數(shù)字信號(hào)完成相應(yīng)的轉(zhuǎn)換,后來(lái)在圖書(shū)館查閱書(shū)籍中終于解決了這個(gè)問(wèn)題。LCD1602顯示問(wèn)題:采用動(dòng)態(tài)顯示,利用數(shù)組存儲(chǔ)數(shù)字,本次設(shè)計(jì)的顯示模塊中需要顯示的內(nèi)容基本都是數(shù)字,所以我就用數(shù)組來(lái)存放這些數(shù)。致 謝首先,衷心感謝指導(dǎo)老師陳擘威老師,在大四最后一個(gè)學(xué)期在對(duì)我做畢業(yè)設(shè)計(jì)遇到困難時(shí)對(duì)我的幫助。他對(duì)我的知識(shí)上的補(bǔ)充與做人上人的教育,不管是做設(shè)計(jì)還是寫(xiě)論文做
32、事要踏實(shí),學(xué)習(xí)要認(rèn)真,相信在以后的工作中,我也會(huì)用十二分的努力來(lái)完成工作任務(wù)。作為一個(gè)專(zhuān)升本的學(xué)生,陳老師沒(méi)有嫌棄過(guò)我基礎(chǔ)差,哪怕很簡(jiǎn)單的問(wèn)題,他都能仔細(xì)的耐心的回答,我是發(fā)自?xún)?nèi)心的感謝陳老師。這篇論文能夠順利完成,還得感謝親愛(ài)的趙老師,趙老師總能在百忙中抽出空來(lái)為我講解論文哪里沒(méi)有寫(xiě)好,哪里有錯(cuò),哪里需要補(bǔ)充。在設(shè)計(jì)期間,在使用PROTEL 99 SE的時(shí)候,我把很多快捷鍵和基本功能都忘了,連基本的電路圖都畫(huà)不了,發(fā)現(xiàn)這些問(wèn)題后,趕緊上網(wǎng)看視頻教程,查缺補(bǔ)漏,最后終于能獨(dú)立完成電路設(shè)計(jì)和程序設(shè)計(jì)。期間也遇到了不少問(wèn)題,比如說(shuō)在使用ADC0832的時(shí)候,我在對(duì)數(shù)據(jù)采集處理這里沒(méi)有找到對(duì)應(yīng)的關(guān)系
33、,這也成為模數(shù)信號(hào)轉(zhuǎn)換的一個(gè)難題。后來(lái)在圖書(shū)館找了不少書(shū)籍,照搬別人的程序,再改成自己的程序,經(jīng)過(guò)很多次的嘗試,終于能夠把模擬信號(hào)轉(zhuǎn)化成數(shù)字信號(hào)這個(gè)關(guān)系處理公式搞定,當(dāng)時(shí)我心里是充滿(mǎn)了自豪感,不只是數(shù)模轉(zhuǎn)換上面,在焊接好設(shè)計(jì)成品后,第一次通電的時(shí)候就像春晚里魔術(shù)表演的時(shí)候,看著LCD上面顯示的數(shù)據(jù),很滿(mǎn)意。參考文獻(xiàn)1 孫中輝.室內(nèi)煤氣、天然氣泄漏報(bào)警器的設(shè)計(jì)D:呼和浩特:內(nèi)蒙古大學(xué),2009. 2 李全利.單片機(jī)原理及應(yīng)用(M)(第2版),北京:高等教育出版社,2010, 30-40.3 楊欣.51單片機(jī)應(yīng)用與實(shí)踐叢書(shū)51單片機(jī)應(yīng)用從零開(kāi)始M,北京:清華大學(xué)出版社 ,2008, 20
34、-60.4 百度文庫(kù) LCD1602最好最詳細(xì)的中文資料 2012.5 胡漢才.單片機(jī)原理及其接口技術(shù)M(第3版),北京,清華大學(xué)出版社 ,2010, 20-50.6范尚春.傳感器技術(shù)及應(yīng)用M(第2版),北京:北京航空航天大學(xué)出版社,2010,10-150.7百度文庫(kù) ADC0832中文資料 2010.8 郭天祥.51單片機(jī)C語(yǔ)言教程M.電子工業(yè)出版社, 2009年1月.P1-P5249韓久強(qiáng).周興鵬,傳感器與檢測(cè)技術(shù)M,北京:清華大學(xué)出版社 ,2010,10-110.10百度文庫(kù) ADC0832中文資料. 2010.11 張毅剛.新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì)M(第3版),哈爾濱:哈爾濱工業(yè)
35、大學(xué)出版社 ,2008,80-90.12ADI公司.ADI模數(shù)轉(zhuǎn)換器應(yīng)用筆記M,北京北京航空航天大學(xué)出版社 ,2011, 30-210.13DuguiWu.ZhihengXu.Development and prospect of microprocessor-based protectionrelays in ChinaC, Transmission and Distribution Conference and Exhibition 2002, AsiaPacific, IEEE/PES, 2002,50-60.附錄一 源程序ADC0832驅(qū)動(dòng)程序:主要用于采集傳感器接收的信號(hào)把它轉(zhuǎn)化成相
36、應(yīng)的數(shù)字信號(hào)讓單片機(jī)處理,觸發(fā)什么條件調(diào)用什么子程序.#include<reg52.h>#include<lcd.h>#include<ADC0832.h>#include "intrins.h"unsigned char CH1=0x00;unsigned char CH2=0x01;/*adc0832*/通道的選擇:0x02就是單通道0;0x03就是單通道1;/0x00就是雙通道ch0=“+”; ch0=“-”/0x01就是雙通道ch0=“-”; ch0=“+”/*/unsigned char ADconv(unsigned char
37、 CH)unsigned char i=0 , x =0 , y = 0 ;unsigned char temp;AD0832_CLK = 0 ; /時(shí)鐘置低平AD0832_DI = 1 ; /開(kāi)始信號(hào)為高電平AD0832_CS = 0 ; /片選信號(hào)置低,啟動(dòng)AD轉(zhuǎn)換芯片/輸入開(kāi)始信號(hào)(構(gòu)成一個(gè)正脈沖) _nop_();AD0832_CLK = 1 ; /時(shí)鐘上升沿,輸入開(kāi)始信號(hào)_nop_();AD0832_CLK = 0 ; /時(shí)鐘下降沿/模擬信號(hào)輸入模式選擇(1:?jiǎn)文P盘?hào),0:雙模差分信號(hào))AD0832_DI = 1 ; _nop_();AD0832_CLK = 1 ; /時(shí)鐘上升沿,輸
38、入開(kāi)始信號(hào)_nop_();AD0832_CLK = 0 ; /時(shí)鐘下降沿/模擬信號(hào)輸入通道選擇(1:通道CH1,0:通道CH0)AD0832_DI = CH ; /選擇通道0 _nop_();AD0832_CLK = 1 ; /時(shí)鐘上升沿,輸入開(kāi)始信號(hào)_nop_();AD0832_CLK = 0 ; /時(shí)鐘下降沿/=AD0832_DI = 1 ; /數(shù)據(jù)線置高,準(zhǔn)備接收數(shù)據(jù)for(i = 0 ; i<8 ; i+) /從高位移入數(shù)據(jù) AD0832_CLK = 1 ; _nop_(); AD0832_CLK = 0 ; /時(shí)鐘下降沿,AD0832輸出數(shù)據(jù),高位(MSB)先 x = x<
39、;<1;/數(shù)據(jù)左移位,補(bǔ)0 if(AD0832_DO =1) x = x | 0x01; /如果數(shù)據(jù)為"1",移入1, /如果數(shù)據(jù)為"0",移入0,for(i = 0 ; i<8 ; i+) /從低位移入數(shù)據(jù) y = y>>1;/數(shù)據(jù)左移位,補(bǔ)0 if(AD0832_DO =1) y = y | 0x80; /如果數(shù)據(jù)為"1",移入1, /如果數(shù)據(jù)為"0",移入0 AD0832_CLK = 1 ; _nop_(); AD0832_CLK = 0 ; /時(shí)鐘下降沿,AD0832輸出數(shù)據(jù),高位(
40、MSB)先 /數(shù)據(jù)線置高,釋放總線,完成一次轉(zhuǎn)換 AD0832_CLK = 1 ; AD0832_DI = 1 ; AD0832_CS = 1 ; if(x=y) /輸出 temp = x; return temp;LCD1602驅(qū)動(dòng)程序:主要顯示報(bào)警值和預(yù)置值,液晶初始化,寫(xiě)命令#include<reg52.h>#include<lcd.h>#include<ADC0832.h>#include "intrins.h"uchar code Temp1="adc: ";uchar code Temp2="wa
41、rn: ";uchar data temp_data3=0;uchar data dis_data3=0;uchar code seg7="0123456789 ";void Delay_1ms(uint ms) /延時(shí)1ms * msuint x,y;for(x=ms;x>0;x-)for(y=124;y>0;y-);unsigned char ReverseChar(unsigned char old_char) /IO口數(shù)據(jù)倒置,由于焊接方便,數(shù)據(jù)口倒置unsigned char new_char=0;unsigned char i;for(i=
42、0;i<8;i+)new_char=new_char<<1;if(old_char%2=1)new_char=new_char+1;else ;old_char=old_char>>1; return new_char;void write_com(uchar com) /寫(xiě)命令lcdrs=0;P2=ReverseChar(com);Delay_1ms(2);lcden=1;Delay_1ms(2);lcden=0;void write_data(uchar dat) /寫(xiě)數(shù)據(jù)lcdrs=1;P2=ReverseChar(dat);Delay_1ms(2);lcden=1;Delay_1ms(2);lcden=0;void Lcd_Init(void) /1602液晶初始化 uchar i=0;lcden=0;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(i=0;i<16;i+)write_com(0x80+i);write_data(Temp1i);write_com(0x
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 做屋合同范例
- 保安與個(gè)人合同標(biāo)準(zhǔn)文本
- 制定公司合同標(biāo)準(zhǔn)文本
- 三方經(jīng)營(yíng)地板協(xié)議合同標(biāo)準(zhǔn)文本
- 五人散伙協(xié)議合同標(biāo)準(zhǔn)文本
- 中堂酒店蔬菜配送合同標(biāo)準(zhǔn)文本
- 2025年中儲(chǔ)糧儲(chǔ)運(yùn)有限公司招聘(57人)筆試參考題庫(kù)附帶答案詳解
- 2025國(guó)網(wǎng)重慶市電力公司校園招聘約85人(第一批)筆試參考題庫(kù)附帶答案詳解
- 2025國(guó)網(wǎng)安徽省電力有限公司高校畢業(yè)生招聘約136人(第二批)筆試參考題庫(kù)附帶答案詳解
- 2025中鐵集裝箱運(yùn)輸有限責(zé)任公司招聘46人(京外地區(qū)崗位)筆試參考題庫(kù)附帶答案詳解
- 空調(diào)設(shè)備巡檢報(bào)告
- 餐飲服務(wù)食品安全操作規(guī)范試題測(cè)試題庫(kù)含答案
- 剪輯拍攝培訓(xùn)課件
- 小學(xué)科技小制作知識(shí)講座
- 電子商務(wù)倉(cāng)庫(kù)管理培訓(xùn)課程培訓(xùn)課件
- 阿瑞匹坦注射液-臨床用藥解讀
- 民事案例實(shí)例分析課件
- 傳染病預(yù)檢分診流程
- 學(xué)術(shù)規(guī)范和論文寫(xiě)作 課件 第9章 學(xué)術(shù)規(guī)范與學(xué)術(shù)失范
- 小學(xué)籃球社團(tuán)簡(jiǎn)介
- 股權(quán)投資的基本概念與原理
評(píng)論
0/150
提交評(píng)論