版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于單片機(jī)的空氣質(zhì)量的粉塵檢測(cè)儀設(shè)計(jì)與實(shí)現(xiàn)摘要中國(guó)經(jīng)濟(jì)的快速發(fā)展和現(xiàn)代化進(jìn)程的推進(jìn),同時(shí)也伴隨著大氣粉塵污染[1-3],工業(yè)生產(chǎn)和交通運(yùn)輸產(chǎn)生了大量的廢氣,使得空氣中的PM2.5粉塵濃度大大增加??諝庵写罅康姆蹓m顆粒不僅會(huì)對(duì)環(huán)境產(chǎn)生災(zāi)難性的影響,同時(shí)也會(huì)危害人體健康,PM2.5是霧霾的主要組成成分,近些年霧霾[4-5]嚴(yán)重危害我們生存環(huán)境和身體健康,它不僅嚴(yán)重危害人類的呼吸系統(tǒng),還對(duì)人類的血液循環(huán)系統(tǒng)造成不可逆轉(zhuǎn)的危害。在嚴(yán)重的時(shí)候,還會(huì)造成整個(gè)城市甚至整個(gè)國(guó)家巨大損失。尤其在北方城市,這種影響更為明顯。在整個(gè)社會(huì)發(fā)展進(jìn)步的同時(shí),人們?cè)絹?lái)越關(guān)心生存環(huán)境,各個(gè)城市也將PM2.5濃度作為天氣預(yù)報(bào)的播報(bào)要素之一。本設(shè)計(jì)是基于51單片機(jī)的空氣粉塵質(zhì)量檢測(cè)儀,對(duì)空氣中粉塵質(zhì)量進(jìn)行實(shí)時(shí)檢測(cè)。本設(shè)計(jì)以AT89C51為控制核心用來(lái)運(yùn)算處理,傳感器使用夏普GP2Y1010AU0F來(lái)實(shí)時(shí)采集PM2.5濃度來(lái)時(shí)刻了解環(huán)境中的PM2.5的狀況,并通過(guò)ADC0832將采集的模擬電壓信號(hào)轉(zhuǎn)換為可以被單片機(jī)識(shí)別的數(shù)字信號(hào)。在LCD1602上實(shí)時(shí)顯示檢測(cè)的PM2.5的濃度和設(shè)定的警戒值時(shí)刻反映當(dāng)前PM2.5濃度,按鍵可以設(shè)置并調(diào)整警戒值,當(dāng)檢測(cè)的PM2.5濃度大于警戒值時(shí),聲光報(bào)警模塊響應(yīng)。該設(shè)計(jì)電路簡(jiǎn)單穩(wěn)定,抗干擾能力強(qiáng),實(shí)時(shí)檢測(cè)顯示。關(guān)鍵字:PM2.5檢測(cè),傳感器,模數(shù)轉(zhuǎn)換目錄TOC\o"1-2"\h\u11939摘要 124643第一章緒論 4214041.1課題的背景 4188541.2研究課題的目的和意義 4222671.3研究的內(nèi)容 5400第二章系統(tǒng)總體設(shè)計(jì) 6264342.1總體設(shè)計(jì) 6118542.2方案設(shè)計(jì)與選型 6141962.3系統(tǒng)方案論證 827924第三章硬件電路設(shè)計(jì) 9218073.1單片機(jī)最小模塊 9198023.2ADC0832模數(shù)轉(zhuǎn)換模塊 12125653.3LCD1602顯示模塊 13184633.4夏普PM2.5傳感器 1719253.5聲光報(bào)警模塊 1967083.6按鍵模塊 2051703.7總體電路圖 2025093第四章軟件部分 2139274.1系統(tǒng)流程設(shè)計(jì) 2193324.2ADC0832模數(shù)轉(zhuǎn)換設(shè)計(jì) 2310643第五章設(shè)計(jì)仿真與調(diào)試 27147885.1仿真軟件介紹 2791475.2設(shè)計(jì)仿真結(jié)果 2827302結(jié)論 2918978致謝 301766參考文獻(xiàn) 315920附錄一原理圖 3219021附錄二程序 33第一章緒論課題的背景中國(guó)經(jīng)濟(jì)的快速發(fā)展和現(xiàn)代化進(jìn)程的推進(jìn),同時(shí)也伴隨著大氣粉塵污染,工業(yè)生產(chǎn)和交通運(yùn)輸產(chǎn)生了大量的廢氣,使得空氣中的PM2.5粉塵濃度大大增加??諝庵羞^(guò)量的粉塵不僅會(huì)對(duì)環(huán)境產(chǎn)生災(zāi)難性的影響,同時(shí)也會(huì)危害人體健康。近些年來(lái)霧霾嚴(yán)重危害我們生存環(huán)境和身體健康,它不僅嚴(yán)重危害人類的呼吸系統(tǒng),還對(duì)人類的血液循環(huán)系統(tǒng)造成不可逆轉(zhuǎn)的危害。在嚴(yán)重的時(shí)候,還會(huì)造成整個(gè)城市甚至整個(gè)國(guó)家巨大損失。尤其在北方城市,這種影響更為明顯。各個(gè)城市也將PM2.5濃度作為天氣預(yù)報(bào)的播報(bào)要素之一。霧霾的主要組成成分有氣體污染物以及固體污染物兩種。氣體污染物主要是硫化物以及各種氮氧元素組成的化合物。固體污染物主要是顆粒物,這些顆粒物十分特別,他們特別的小,可以被人體吸入并長(zhǎng)時(shí)間留在身體中,無(wú)法被代謝。世界衛(wèi)生組織將這些可被吸入的顆粒物統(tǒng)稱為可吸入顆粒物。他們可以在空氣中存在較長(zhǎng)時(shí)間,并且可以攜帶大量的病菌。病菌附著在可吸入顆粒物上。人吸入顆粒物,從而導(dǎo)致有毒物質(zhì)以及病菌進(jìn)去人體從而導(dǎo)致人生病。由于PM2.5粒徑比較小,它可以通過(guò)口鼻進(jìn)去人的呼吸道中,并可以進(jìn)去人體的血液循環(huán)系統(tǒng)中。對(duì)人體造成不可忽視的破壞。當(dāng)PM2.5進(jìn)入肺泡細(xì)胞中時(shí),肺泡是用來(lái)交換氣體的地方,那些顆粒進(jìn)去肺泡后會(huì)被巨噬細(xì)胞吞噬,會(huì)永遠(yuǎn)停留在肺泡中,對(duì)自己的呼吸系統(tǒng)造成不可逆的損害。世界衛(wèi)生組織的研究報(bào)告顯示,整個(gè)地球的大部分人類都在遭受顆粒物的危害。特別是發(fā)展國(guó)家,在發(fā)展過(guò)程中你可避免的排放PM2.5,對(duì)環(huán)境造成了很大的損害因此對(duì)PM2.5的檢測(cè)尤為重要。1.2研究課題的目的和意義隨著全面實(shí)現(xiàn)小康生活的推進(jìn),經(jīng)濟(jì)的不斷發(fā)展,社會(huì)的不斷進(jìn)步,使得越來(lái)越多的人在追求物質(zhì)財(cái)富的同時(shí)更加注重自己的生存環(huán)境.在21世紀(jì)人們的對(duì)健康生活的越來(lái)越看重,平日的身體鍛煉的時(shí)間越來(lái)越多,使得人們?cè)趹敉獾臅r(shí)間也越來(lái)多,人們逐漸開始習(xí)慣出門運(yùn)動(dòng)。但PM2.5濃度的上升不斷的破壞生存環(huán)境使得人們更加關(guān)注大氣質(zhì)量特別是PM2.5濃度來(lái)制定自己的出行計(jì)劃。PM2.5的來(lái)源有很多比如土壤和巖石的風(fēng)化,工廠排放的污染氣體,以及隨著汽車的不斷普及,汽車尾氣也是造成PM2.5上升的主要因素。近些來(lái)PM2.5造成的疾病越來(lái)越多,人們對(duì)自身的身體健康也越來(lái)越看重。由大氣粉塵污染給健康帶來(lái)的危害越來(lái)越引起人們的重視。人們也越來(lái)越渴望有個(gè)干凈舒適的居住環(huán)境,能呼吸到合格的空氣,前幾年盛行的賣空氣的事情就是因?yàn)樽约荷畹某鞘械奈廴緡?yán)重,才會(huì)使他們購(gòu)買昂貴的空氣,這是他們對(duì)清新空氣的向往。對(duì)PM2.5進(jìn)行深入的研究,關(guān)系到人民的日常生活與的身體健康,也關(guān)系到人類生存。PM2.5的持續(xù)升高不僅會(huì)對(duì)環(huán)境造成巨大破壞而且引來(lái)的各種問(wèn)題來(lái)在考驗(yàn)著整個(gè)社會(huì)。比如霧霾天氣導(dǎo)致幼童和老年人呼吸疾病以及心臟病的增多,醫(yī)院的資源跟不上,嚴(yán)重的還會(huì)引發(fā)醫(yī)生與病人發(fā)生沖突。人們?cè)陟F霾的天氣下工作,還會(huì)導(dǎo)致很多心理問(wèn)題,嚴(yán)重的還會(huì)引發(fā)憂郁癥的出現(xiàn)。天氣預(yù)報(bào)在報(bào)道的時(shí)候僅僅能夠預(yù)報(bào)出一個(gè)地區(qū)的一段時(shí)間的大體情況,不能夠?qū)崟r(shí)地檢測(cè)具體到某一個(gè)地點(diǎn)的PM2.5的狀況,人們對(duì)美好生活的追求使得PM2.5的檢測(cè)變得更為重要,只有時(shí)刻了解自己生存空間的狀況,才能更好的治理它,因此設(shè)計(jì)出來(lái)一款小巧的PM2.5測(cè)量系統(tǒng)具有重要的意義和市場(chǎng)價(jià)值。1.3研究的內(nèi)容本設(shè)計(jì)的控制芯片采用的是AT89C51單片機(jī),空氣中PM2.5值的測(cè)量則是通過(guò)GP2Y1010AU0F灰塵傳感器,這個(gè)傳感器還可以將測(cè)得的模擬數(shù)據(jù)發(fā)送給A/D轉(zhuǎn)換模塊,A/D模數(shù)轉(zhuǎn)換模塊將數(shù)據(jù)從模擬量轉(zhuǎn)換為數(shù)字量,并用LCD1602液晶顯示屏顯示當(dāng)前PM2.5值。同時(shí),可以設(shè)定報(bào)警閾值,當(dāng)測(cè)得的溫度超過(guò)報(bào)警閾值時(shí),開始聲光報(bào)警。該系統(tǒng)電路簡(jiǎn)單、工作穩(wěn)定、集成度高,調(diào)試方便。同時(shí),針對(duì)傳統(tǒng)環(huán)境監(jiān)測(cè)方法中的人工取樣范圍局限性,實(shí)時(shí)性差等問(wèn)題,本設(shè)計(jì)通過(guò)實(shí)時(shí)監(jiān)測(cè)環(huán)境中的PM2.5數(shù)據(jù)[5-7],并及時(shí)顯示、記錄、存儲(chǔ)、處理,較好的克服了以上問(wèn)題。主要的設(shè)計(jì)內(nèi)容如下:自動(dòng)檢測(cè)空氣中的粉塵濃度。設(shè)置PM2.5濃度警報(bào)閾值。在LED屏上顯示實(shí)時(shí)的PM2.5濃度值。當(dāng)濃度值超過(guò)設(shè)定的閾值時(shí)進(jìn)行警報(bào)提醒。
第二章系統(tǒng)總體設(shè)計(jì)2.1總體設(shè)計(jì)本課題的設(shè)計(jì)是基于單片機(jī)的空氣質(zhì)量的粉塵檢測(cè)儀[8]。首先通過(guò)PM2.5粉塵傳感器實(shí)現(xiàn)對(duì)空氣粉塵的采集,通過(guò)A/D轉(zhuǎn)換器將采集的模擬量轉(zhuǎn)換為數(shù)字量,并將其傳給單片機(jī),然后單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理分析。將采集的數(shù)據(jù)經(jīng)處理后顯示在屏幕上,使檢測(cè)結(jié)果清晰可見(jiàn),方便人們隨時(shí)了解此時(shí)的環(huán)境質(zhì)量。單片機(jī)將采集后處理的數(shù)據(jù)與設(shè)定值進(jìn)行比較,判斷是否超過(guò)設(shè)定值若超過(guò),則蜂鳴器以及燈響應(yīng)來(lái)進(jìn)行必要的提醒。系統(tǒng)框圖如圖2.1所示圖2-1系統(tǒng)框圖2.2方案設(shè)計(jì)與選型2.2.1單片機(jī)選型單片機(jī)的選型對(duì)整個(gè)儀器的設(shè)計(jì)的成功與否起到?jīng)Q定性的作用,是整個(gè)設(shè)計(jì)的基石。單片機(jī)是整個(gè)設(shè)備的核心,相當(dāng)于人類的大腦,控制運(yùn)算都在單片機(jī)中完成。如果選擇單片機(jī)合適,整個(gè)儀器就會(huì)穩(wěn)定的運(yùn)行,實(shí)現(xiàn)所要實(shí)現(xiàn)的功能,如果選擇單片機(jī)不適合這個(gè)設(shè)計(jì),那么儀器可能會(huì)達(dá)不到設(shè)計(jì)要求而且會(huì)浪費(fèi)很多資源。(1)STM32F1單片機(jī)STM32單片機(jī)是ARM公司設(shè)計(jì)生產(chǎn)的高性能單片機(jī),擁有完備的外部設(shè)備,擁有兩個(gè)12位ADC能夠輕易實(shí)現(xiàn)數(shù)模轉(zhuǎn)換以及模數(shù)轉(zhuǎn)換,它能夠低功率的狀態(tài)在被使用喚醒,內(nèi)部擁有復(fù)位電路不需要在外部安裝復(fù)位電路,擁有RC振蕩器,也不需要在添加振蕩電路,大大減少了后期設(shè)計(jì)的難度,并且減少儀器的體積。不同的型號(hào),其I/O端口的數(shù)量是不同的最多高達(dá)112個(gè)的快速I/O端口,更多的是有26個(gè),他們的端口都可以映射到16個(gè)外部中斷向量。它可以接受5V以下的電壓,除了模擬輸入以外。該單片機(jī)功能強(qiáng)大,擁有很強(qiáng)大的處理能力,但價(jià)格相對(duì)較高,不用于本次設(shè)計(jì)。(2)AT89C51單片機(jī)AT89C51作為最為常用的單片機(jī),雖然沒(méi)有STM32系列單片機(jī)功能強(qiáng)大,但它可以滿足本次設(shè)計(jì)的所要實(shí)現(xiàn)的功能,經(jīng)濟(jì)實(shí)惠,可以充分;利用這個(gè)單片機(jī)的性能,來(lái)實(shí)現(xiàn)所有的功能,所以本次設(shè)計(jì)采用此單片機(jī)。2.2.2顯示部分方案選擇(1)LED點(diǎn)陣顯示LED點(diǎn)陣顯示屏它的本質(zhì)是由數(shù)個(gè)發(fā)光二極管組成,他通過(guò)控制亮滅來(lái)顯示字符,數(shù)字等信息,一般情況下橫軸與縱軸交叉點(diǎn)上我們會(huì)放置二極管,當(dāng)置“0”時(shí)二極管發(fā)光,以此來(lái)顯示信息。在亮度,功耗以及可視角度上,都要比LCD的更具有優(yōu)勢(shì),但對(duì)單片機(jī)的掃描速度的要求更高,而且在經(jīng)濟(jì)實(shí)惠方面遠(yuǎn)不如LCD顯示屏,所以不采用在本次設(shè)計(jì)中。LCD1602顯示LCD1602是一種由液晶組成的工業(yè)LCD顯示屏,利用液晶的物理特性即當(dāng)電流刺激液晶分子時(shí),配合顯示屏來(lái)顯示各種畫面。通過(guò)電壓控制各個(gè)區(qū)域,根據(jù)不同型號(hào)顯示不同字符數(shù)目,本次設(shè)計(jì)采用可以同時(shí)顯示32字符的LCD1602顯示屏,專門用來(lái)顯示字母,數(shù)字等字符。充分利用LCD顯示屏的特性,滿足設(shè)計(jì)的需要。這款顯示屏可以顯示各種字符信息,價(jià)格也十分便宜,而且使用的壽命長(zhǎng),充分滿足本次設(shè)計(jì)的要求。2.2.3模數(shù)轉(zhuǎn)換方案選擇(1)采用ADC0809模數(shù)轉(zhuǎn)換器ADC0809是大洋彼岸某發(fā)達(dá)國(guó)家半導(dǎo)體公司設(shè)計(jì)生產(chǎn)的使用CMOS工藝的模數(shù)轉(zhuǎn)換器。,它是采用逐次逼近的原理,采樣頻率為8位的一個(gè)芯片。在其內(nèi)部擁有多個(gè)通道多路開關(guān),根據(jù)控制芯片傳輸給它的信號(hào)再通過(guò)地址譯碼器的轉(zhuǎn)換后來(lái)選擇其中一路通道轉(zhuǎn)換,功能強(qiáng)大。ADC0809的引腳比較多,它的輸入端口就有8個(gè),輸出端口也有八個(gè),在焊接的時(shí)候比較麻煩,不太方便,而且價(jià)格也很貴。(2)采用ADC0832模數(shù)轉(zhuǎn)換器ADC0832是大洋彼岸某發(fā)達(dá)國(guó)家半導(dǎo)體公司設(shè)計(jì)生產(chǎn)的8位雙通道的A/D轉(zhuǎn)換器,能夠?qū)陕纺M信號(hào)實(shí)現(xiàn)A/D轉(zhuǎn)換。它被用于兩種工作方式,分別是在單端輸入方式和在差分方式下工作。工作原理不同于ADC0809的并行輸入的方式而是采用串行輸入的方式,通過(guò)控制信號(hào)對(duì)輸入通道的選擇來(lái)選擇使用哪個(gè)輸入端口,實(shí)現(xiàn)數(shù)據(jù)的采集,傳輸。它的分辨率最高為256級(jí),可以滿足大多數(shù)A/D轉(zhuǎn)換的需求。它的轉(zhuǎn)換時(shí)間特別的短,只有32微秒,擁有的雙端接口的輸出可以減少傳輸轉(zhuǎn)換數(shù)據(jù)的誤差。芯片引腳較少可以讓單片機(jī)外接更多的外設(shè),來(lái)實(shí)現(xiàn)更多的功能。在價(jià)格方面比起ADC0809更加便宜,更適合本次設(shè)計(jì)方案。2.2.4粉塵傳感器的選擇(1)GP2Y1014AU粉塵傳感器GP2Y1014AU粉塵傳感器[9-10]是夏普開發(fā)的一款光學(xué)灰塵監(jiān)測(cè)傳感器模塊,在其中間有一個(gè)大洞,空氣可以自由流過(guò),它里面鄰角位置放著紅外發(fā)光二極管和光電晶體管,紅外發(fā)光二極管定向發(fā)送紅外,當(dāng)空氣中有微粒阻礙紅外時(shí),紅外線發(fā)送物理上的現(xiàn)象—漫反射,當(dāng)光電晶體管在接收紅外信號(hào)后,導(dǎo)致信號(hào)輸出引腳電壓發(fā)送變化。其結(jié)構(gòu)簡(jiǎn)單并且價(jià)格便宜優(yōu)惠。(2)ZPH01粉塵傳感器該傳感器具有結(jié)構(gòu)緊湊,易于安裝等優(yōu)點(diǎn),原其中PM2.5采集模塊采用粒子計(jì)數(shù)原理來(lái)測(cè)量濃度,但價(jià)格比較貴,不適合本次設(shè)計(jì)。2.3系統(tǒng)方案論證綜上所示,本次設(shè)計(jì)采用AT89C51作為控制核心,以夏GP2Y1014AU粉塵傳感器作為采集PM2.5濃度的核心,以ADC0832模數(shù)轉(zhuǎn)換器作為將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)的重要手段,最后采用LCD1602顯示屏來(lái)顯示當(dāng)前PM2.5濃度以及設(shè)置濃度。
第三章硬件電路設(shè)計(jì)3.1單片機(jī)最小模塊由控制芯片提供運(yùn)算控制功能、復(fù)位電路提供復(fù)位功能、供電電路提供電源、晶振電路提供時(shí)鐘信號(hào)、輸入\輸出電路等構(gòu)成的單片機(jī)最小系統(tǒng)是單片機(jī)設(shè)計(jì)中最重要的部分,用于驅(qū)動(dòng)和控制其他模塊的擴(kuò)展與運(yùn)行。單片機(jī)最小模塊如圖3-1所示圖3-1單片機(jī)最小模塊3.1.1AT89C51AT89C51是被使用最多的單片機(jī)之一,如圖3-2所示為AT89C51的引腳圖,,其結(jié)構(gòu)簡(jiǎn)單,容易理解運(yùn)用。主要具備以下主要性能具有8位CPU具有片內(nèi)振蕩器,振蕩頻率的范圍為1.2—1.2MHz具有128B片內(nèi)RAM和21個(gè)字節(jié)特殊功能寄存器SFR具有4KB片內(nèi)ROM具有P0,P1,P2,P3共四個(gè)8位并行I/O接口具有一個(gè)全雙工串行I/O接口具有2個(gè)16位定時(shí)/計(jì)數(shù)器中斷系統(tǒng)有5個(gè)中斷源,可編程兩個(gè)優(yōu)先級(jí)具有111條指令有較強(qiáng)的位尋址,位處理能力片內(nèi)采用單總線結(jié)構(gòu)采用-+5V電源供電可尋址64KB內(nèi)部和外部的程序存儲(chǔ)空間可尋址64KB外部的數(shù)據(jù)存儲(chǔ)空間圖3-2AT89C51引腳圖AT89C51單片機(jī)存儲(chǔ)結(jié)構(gòu)采用的是哈佛結(jié)構(gòu),它將存儲(chǔ)程序的存儲(chǔ)器與存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器分開,使得他們將各自存儲(chǔ)的信息分開并且各自獨(dú)立尋址。51系列的I/O接口由4個(gè)并行的八位接口組成,一共有32根地址數(shù)據(jù)線,這些線不僅可以用于傳輸數(shù)據(jù)還可以當(dāng)做地址線使用,它們可以用于八位并行輸入輸出也可以單度使用按位輸出。在用于輸出時(shí),他們的端口可用于將傳輸?shù)男盘?hào)鎖存起來(lái),也可以將傳入的信號(hào)鎖存起來(lái),當(dāng)必要的時(shí)候可以找回傳輸?shù)臄?shù)據(jù)。P0,P1,P2接口在使用的過(guò)程中也有許多不同,其中P0,P2接口可以用作傳輸數(shù)據(jù)的數(shù)據(jù)線和地址總線,在使用的過(guò)程中他們還有很多區(qū)別。P0接口在作為I/O接口時(shí)需要接入上拉電阻,單片機(jī)內(nèi)部端口已經(jīng)接上拉電阻所以當(dāng)使用C51系列單片機(jī)是無(wú)需接入上拉電阻。當(dāng)作為地址總線使用時(shí)由P0端口提供地址的低八位而P2端口提供地址的高八位從而組成16位地址。單片機(jī)的片外總線結(jié)構(gòu)是由地址總線(AB),數(shù)據(jù)總線(DB),以及控制總線(CB)組成。AT89C51單片機(jī)通過(guò)內(nèi)部振蕩和外部時(shí)鐘振蕩兩種方式產(chǎn)生時(shí)鐘。內(nèi)部振蕩方式是單片機(jī)振蕩輸入端(XTAL1)與振蕩輸出端(XTAL2)接上定時(shí)元件再利用單片機(jī)內(nèi)部的反向放大器構(gòu)成振蕩電路。晶振的振蕩頻率范圍在1.2MHz到12MHz。外部時(shí)鐘是將外部已有的時(shí)鐘信號(hào)引入單片機(jī)內(nèi)部,可以方便各個(gè)單片機(jī)的協(xié)同,用于兩個(gè)或兩個(gè)以上單片機(jī)共同工作。復(fù)位電路:復(fù)位是將微處理器以及其他部分都恢復(fù)到一個(gè)原有的所設(shè)定的一個(gè)狀態(tài)。在復(fù)位后,單片機(jī)會(huì)從這個(gè)預(yù)定的狀態(tài)重新開始工作,在程序運(yùn)行中出現(xiàn)錯(cuò)誤或者程序卡住等不屬于所設(shè)定預(yù)想的狀態(tài)時(shí)都需要復(fù)位,復(fù)位時(shí)信號(hào)由RESET引腳輸入,當(dāng)電平為低電平時(shí),復(fù)位鍵不起作用。當(dāng)為高電平時(shí),復(fù)位開始在經(jīng)過(guò)一段時(shí)間后,單片機(jī)復(fù)位成功。我們可以通過(guò)上電自動(dòng)復(fù)位以及手動(dòng)復(fù)位兩種方式將其復(fù)位。手動(dòng)復(fù)位是通過(guò)手動(dòng)按鍵是通過(guò)RST端經(jīng)電阻與電源接通來(lái)實(shí)現(xiàn)。這個(gè)設(shè)計(jì)使用按鍵電平復(fù)位電路,當(dāng)按鍵時(shí)電容器被短路放電,+5V直接加到RST上面達(dá)到高電平,進(jìn)行復(fù)位。按鍵松開后電源開始對(duì)電容器充電,此時(shí)充電電流在電阻上,形成高電平送到RST,仍然是"復(fù)位狀態(tài)";稍后充電結(jié)束,電流降為0,電阻上的電壓也將為0,RST降為低電平,開始正常工作,復(fù)位后程序存儲(chǔ)器ROM的存儲(chǔ)內(nèi)容不變,RAM的內(nèi)容在上電后為隨機(jī)數(shù)。單片機(jī)的復(fù)位電路和時(shí)鐘電路電路圖分別如3-3和3-4所示。圖3-3手動(dòng)復(fù)位電路圖3-4時(shí)鐘電路3.2ADC0832模數(shù)轉(zhuǎn)換模塊ADC0832是一個(gè)最高分辨率能夠達(dá)到256級(jí)的模數(shù)轉(zhuǎn)換器。八位分辨率,使用的供電電源是+5v電源,擁有雙通道的A/D轉(zhuǎn)換功能,能夠?qū)崟r(shí)對(duì)比轉(zhuǎn)換數(shù)據(jù)的準(zhǔn)確性與真實(shí)性。它對(duì)于使用環(huán)境的要求不高,能夠在零下40攝氏度還能正常工作,最高運(yùn)行溫度達(dá)到85攝氏度,具有很強(qiáng)的適應(yīng)環(huán)境的能力。它的I/O接口只有四個(gè),可以降低它的損耗,可以極大程度上提高單片機(jī)的利用效率,添加外設(shè)的數(shù)量,增強(qiáng)整個(gè)系統(tǒng)的能力。它的轉(zhuǎn)換效率十分的快,一次轉(zhuǎn)換的時(shí)間只有32微秒。圖3.5為ADC0832電路圖。ADC0832在一般情況下與單片機(jī)只有只有四條線相連,分別為CS、CLK、DO、DI。但是在使用的過(guò)程中你,D0,D1接口一般情況下不會(huì)同時(shí)使用,而且由于接口雙向通信的緣故,所以在使用的過(guò)程中一般將D0與D1直接相連,然后在接入單片機(jī)的接口上,實(shí)現(xiàn)雙向通信。當(dāng)ADC0832的CS端口的電平為高時(shí),這個(gè)芯片就會(huì)被禁止使用,整個(gè)芯片的轉(zhuǎn)化工作停止。當(dāng)使用該芯片進(jìn)行模數(shù)轉(zhuǎn)換的時(shí)候,要先將CS端口的電平置為低電平,此時(shí)芯片開始工作,而且在芯片工作期間,CS端口的電平要一直保持低電平。當(dāng)芯片不工作的時(shí),其他接口的電平隨意,當(dāng)芯片工作的時(shí)候,同時(shí)由處理器向芯片輸入時(shí)鐘脈沖信號(hào),D0/DI根據(jù)處理器發(fā)出的控制信號(hào)來(lái)選擇通道。在開始工作的時(shí)候,第一個(gè)時(shí)鐘脈沖信號(hào)在D1接口時(shí)其下沉之前必須是高電平,充當(dāng)起始信號(hào)。接下來(lái)的兩個(gè)脈沖用來(lái)選擇輸入通道。圖3-5ADC0832電路圖3.3LCD1602顯示模塊LCD1602是一種由液晶組成的工業(yè)LCD顯示屏,利用液晶的物理特性即當(dāng)電流刺激液晶分子時(shí),配合顯示屏來(lái)顯示各種畫面。通過(guò)電壓控制各個(gè)區(qū)域,根據(jù)不同型號(hào)顯示不同字符數(shù)目,本次設(shè)計(jì)采用可以同時(shí)顯示32字符的LCD1602顯示屏,專門用來(lái)顯示字母,數(shù)字等字符。充分利用LCD顯示屏的特性,滿足設(shè)計(jì)的需要。LCD1602自帶數(shù)據(jù)庫(kù),不需要發(fā)送數(shù)組,與傳統(tǒng)的顯示屏相比更加方便。其電路設(shè)計(jì)如圖3-6所示。圖3.6LCD1602電路圖LCD1602的主要性能:顯示容量:16×2個(gè)字符芯片工作電壓:4.5V—5.5V工作電流:2.0mA(5.0V)模塊的最佳啊工作點(diǎn)阿姨:5.0V字符尺寸:2.95×4.35(W×H)mmLCD1602各個(gè)引腳圖接口說(shuō)明如表3-1所示:表3-1LCD1602引腳說(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讀/寫選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15ABL背光源正極16KBL背光源負(fù)極引腳接口說(shuō)明:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,當(dāng)端口接入電源時(shí)此時(shí)的對(duì)比度最低,當(dāng)接口接地時(shí)時(shí)此時(shí)的對(duì)比度最高,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,當(dāng)高電平時(shí)時(shí)選擇數(shù)據(jù)寄存器用來(lái)存放數(shù)據(jù)、低電平時(shí)選擇指令寄存器,此時(shí)用來(lái)選擇所要執(zhí)行的程序指令。第5腳:R/W為讀寫信號(hào)線,當(dāng)接口電平為“1”時(shí)此時(shí)LCD1602執(zhí)行讀操作讀取所要顯示的數(shù)據(jù),當(dāng)接口電平為“0”時(shí),此時(shí)執(zhí)行寫操作,將LCD1602所要顯示的字符顯示在屏幕上。當(dāng)RS端口以及R/W端口共同為“0”時(shí)此時(shí)可以寫入指令或者顯示地址等。第6腳:E端為使能端,當(dāng)E端口的電平從“1”變成“0”的時(shí)候,此時(shí)顯示模塊將要進(jìn)行讀寫或者其他別的操作,執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。(2)1602LCD的指令說(shuō)明及時(shí)序1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表3-2所示:表3-2字符控制命令說(shuō)明:序號(hào)指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L**6置功能00001DLNF**7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,將整個(gè)屏幕清空,光標(biāo)位置為00H。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:可以將光標(biāo)進(jìn)行移動(dòng)當(dāng)端口電平為高電平時(shí),此時(shí)的光標(biāo)將會(huì)向右移動(dòng),當(dāng)接口電平為低電平時(shí)此時(shí)光標(biāo)的位置將會(huì)向左移動(dòng)S:LCD1602顯示模塊的光標(biāo)是否移動(dòng)。為“1”時(shí)有效,為“0”時(shí)無(wú)效。指令4:顯示開關(guān)控制。D:可以控制顯示的運(yùn)行與否,當(dāng)接口電平為“1”時(shí)此時(shí)開關(guān)打開,開啟顯示,當(dāng)接口電平為“0”時(shí)此時(shí)的開關(guān)閉合,關(guān)閉顯示C:控制光標(biāo)是否出現(xiàn)的指令,當(dāng)為高電平時(shí)顯示光標(biāo)當(dāng)為低電平時(shí)控制光標(biāo)消失B:控制光標(biāo)是否閃爍的指令,當(dāng)為高電平時(shí)光標(biāo)閃爍當(dāng)為低電平時(shí)控制光標(biāo)不閃爍。指令5:光標(biāo)或顯示移位S/C:控制光標(biāo)是否移位的指令,當(dāng)為高電平時(shí)字符移位當(dāng)為低電平時(shí)光標(biāo)移位指令6:功能設(shè)置命令DL:控制總線數(shù)目的指令當(dāng)為高電平時(shí)總線數(shù)目為4總線,低電平時(shí)總線數(shù)目為8位總線N:控制顯示形式的指令當(dāng)為低電平時(shí)LCD1602的顯示方式為單行顯示,但當(dāng)高電平時(shí)LCD1602的顯示方式為雙行顯示F:控制LCD1602顯示屏幕的指令當(dāng)為低電平時(shí)此時(shí)顯示屏幕為5x7字符,當(dāng)為高電平時(shí)顯示5x10的字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號(hào)和光標(biāo)地址BF:顯示當(dāng)親LCD1602狀態(tài)是否是忙的指令高電平時(shí)表示此時(shí)LCD1602處于忙狀態(tài)無(wú)法處理送來(lái)的指令,如果為低電平表示不忙,可以繼續(xù)處理傳來(lái)的指令,顯示數(shù)據(jù)。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。芯片時(shí)序表如下3-3:表3.3基本操作時(shí)序表讀狀態(tài)輸入RS=L,R/W=H,E=H輸出D0—D7=狀態(tài)字寫指令輸入RS=L,R/W=L,D0—D7=指令碼,E=高脈沖輸出無(wú)讀數(shù)據(jù)輸入RS=H,R/W=H,E=H輸出D0—D7=數(shù)據(jù)寫數(shù)據(jù)輸入RS=H,R/W=L,D0—D7=數(shù)據(jù),E=高脈沖輸出無(wú)讀寫操作時(shí)序如圖3-4和3-5所示:圖3-4讀操作時(shí)序圖3-5寫操作時(shí)序3.4夏普PM2.5傳感器日本夏普公司開發(fā)的GP2Y1010AUOF是一款灰塵濃度檢測(cè)傳感器,內(nèi)部配置了紅外發(fā)光二極管和光電晶體管,一般用來(lái)微小顆粒物的檢測(cè)。利用光敏原理,顆粒濃度通過(guò)傳感器輸出的脈沖高度判斷。具體的,當(dāng)空氣進(jìn)入傳感器中留空的孔中時(shí),然后傳感器發(fā)射LED光來(lái)檢測(cè)所通過(guò)的空氣中灰塵折射過(guò)后的LED光線來(lái)判斷該環(huán)境中的灰塵含量。其內(nèi)部結(jié)構(gòu)如圖3.7所示。圖3.7粉塵傳感器內(nèi)部結(jié)構(gòu)圖中,數(shù)字所對(duì)應(yīng)的管腳如下:①V-LED;②LED-GND;③LED;④S-GND;⑤Vo;⑥Vcc主要參數(shù):靈敏度:0.5V/(0.1mg/m3);輸出電壓:0.9V(TYP);消耗電流:11mA;工作溫度:-10~65℃;本設(shè)計(jì)中夏普粉塵傳感器GP2Y1010AU0F主要用來(lái)測(cè)量環(huán)境中的PM2.5值,并將模擬量傳輸?shù)絾纹瑱C(jī)上。故粉塵傳感器的電路設(shè)計(jì)如圖3-8圖3-8粉塵傳感器電路設(shè)計(jì)在PROTEUS中沒(méi)有粉塵傳感器GP2Y1010AU的仿真模型所以故在仿真原理圖中,我們用滑動(dòng)變阻器來(lái)模擬粉塵傳感器發(fā)回的模擬信號(hào)(電壓值)。電路設(shè)計(jì)仿真圖如圖3-9所示。.圖3-9PM2.5傳感器電路設(shè)計(jì)3.5聲光報(bào)警模塊聲光報(bào)警模塊采用一個(gè)三極管和一個(gè)蜂鳴器以及LED燈構(gòu)成和單片機(jī)的P1.4相連接,當(dāng)P1.4口為高電平,蜂鳴器不報(bào)警,當(dāng)P13口為低電平,蜂鳴器報(bào)警。電路圖如下圖3.10所示。圖3.10聲光報(bào)警電路3.6按鍵模塊按鍵模塊由按鍵加上電阻組成,接入單片機(jī)的P3.5,P3.6,P3.7三個(gè)接口,仿真電路圖如圖3-11所示圖3-11按鍵電路3.7總體電路圖本設(shè)計(jì)包括PM2.5采集模塊,ADC0832模數(shù)轉(zhuǎn)換模塊,聲光報(bào)警模塊以及按鍵模塊。總體設(shè)計(jì)電路圖如圖3-12所示圖3-12總體電路圖第四章軟件部分4.1系統(tǒng)流程設(shè)計(jì)本設(shè)計(jì)的軟件部分主要是控制PM2.5粉塵傳感器采集PM2.5濃度數(shù)據(jù),控制ADC0832進(jìn)行模數(shù)轉(zhuǎn)換,將轉(zhuǎn)換的數(shù)據(jù)存放起來(lái),再與預(yù)設(shè)值進(jìn)行比較,如果大于設(shè)置的值,那么就會(huì)驅(qū)動(dòng)聲光報(bào)警模塊進(jìn)行響應(yīng)??梢酝ㄟ^(guò)按鍵電路對(duì)預(yù)設(shè)值進(jìn)行修改。在運(yùn)行時(shí)能夠?qū)崟r(shí)顯示PM2.5濃度。具體流程圖如圖4.1所示。圖4.1系統(tǒng)流程圖通過(guò)編寫C語(yǔ)言程序后,我們將程序放入KEIL軟件中進(jìn)行調(diào)試,并利用該軟件將C代碼燒錄到單片機(jī)最小控制系統(tǒng)中,用于控制粉塵傳感器采集PM2.5數(shù)據(jù),同時(shí)控制AT89C51單片機(jī)將從傳感器接收到的模擬數(shù)據(jù)轉(zhuǎn)換為數(shù)字量,并利用LCD液晶顯示屏顯示當(dāng)前環(huán)境中的PM2.5值,以下為本次程序設(shè)計(jì)的編程思路:(1)定義數(shù)值類型,調(diào)用延時(shí)程序,定義數(shù)據(jù)發(fā)送位;(2)PM2.5測(cè)量及A/D轉(zhuǎn)換程序:利用程序驅(qū)動(dòng)粉塵傳感器監(jiān)測(cè)PM2.5模擬數(shù)據(jù),并將其發(fā)送給ADC0832;同時(shí),AD模塊將模擬量轉(zhuǎn)換為數(shù)字量發(fā)送給單片機(jī)處理并用液晶顯示屏顯示;(3)污染閾值設(shè)置和報(bào)警設(shè)計(jì)。主程序如下:voidmain(){ time_init(); //定時(shí)器初始化 init_1602(); //lcd1602初始化 write_string(1,0,"PM2.5:000ug/m3"); write_string(2,0,"S-PM2.5:000ug/m3"); write_sfm_pm(2,8,s_pm); //顯示設(shè)置PM2.5 while(1) { flag_300ms++; if(flag_300ms>=300) { flag_300ms=0; if(menu_1==0) //開始界面顯示的內(nèi)容 { PM25_void(); write_sfm_pm(1,8,pm); write_sfm_pm(1,8,pm); //顯示PM } clock_h_l();//報(bào)警函數(shù) } key(); key_with(); //設(shè)置報(bào)警 delay_1ms(1); }}4.2ADC0832模數(shù)轉(zhuǎn)換設(shè)計(jì)ADC0832在一般情況下與單片機(jī)只有只有四條線相連,分別為CS、CLK、DO、DI。但是在使用的過(guò)程中你,D0,D1接口一般情況下不會(huì)同時(shí)使用,而且由于接口雙向通信的緣故,所以在使用的過(guò)程中一般將D0與D1直接相連,然后在接入單片機(jī)的接口上,實(shí)現(xiàn)雙向通信。當(dāng)ADC0832的CS端口的電平為高時(shí),這個(gè)芯片就會(huì)被禁止使用,整個(gè)芯片的轉(zhuǎn)化工作停止。當(dāng)使用該芯片進(jìn)行模數(shù)轉(zhuǎn)換的時(shí)候,要先將CS端口的電平置為低電平,此時(shí)芯片開始工作,而且在芯片工作期間,CS端口的電平要一直保持低電平。當(dāng)芯片不工作的時(shí),其他接口的電平隨意,當(dāng)芯片工作的時(shí)候,同時(shí)由處理器向芯片輸入時(shí)鐘脈沖信號(hào),D0/DI根據(jù)處理器發(fā)出的控制信號(hào)來(lái)選擇通道。在開始工作的時(shí)候,第一個(gè)時(shí)鐘脈沖信號(hào)在D1接口時(shí)其下沉之前必須是高電平,充當(dāng)起始信號(hào)。接下來(lái)的兩個(gè)脈沖用來(lái)選擇輸入通道。其功能項(xiàng)見(jiàn)表4-1,當(dāng)通道選擇的端口輸入為“1”和“0”時(shí),此時(shí)轉(zhuǎn)換通道為CH0。當(dāng)通道選擇的端口輸入為“1”和“1”時(shí),此時(shí)轉(zhuǎn)換通道為CH1。當(dāng)通道選擇的端口輸入為“0”和“0”時(shí),此時(shí)轉(zhuǎn)換通道是由CH0與CH1共同組成其前者作為正輸入端口,后者為負(fù)輸入端口。當(dāng)通道選擇的端口輸入為“0”和“1”時(shí),此時(shí)轉(zhuǎn)換通道是由CH0與CH1共同組成其前者作為負(fù)輸入端口,后者為正輸入端口。此時(shí)當(dāng)選擇通道結(jié)束時(shí)將會(huì)接受轉(zhuǎn)換指令進(jìn)行數(shù)據(jù)轉(zhuǎn)換。在選擇通道結(jié)束的三個(gè)脈沖時(shí)間后,ADC0832的DI端口將會(huì)失去作用,可以任意電平對(duì)其不產(chǎn)生任何影響。之后D0/DI端口開始進(jìn)行數(shù)據(jù)轉(zhuǎn)換,這個(gè)步驟是在下一個(gè)脈沖到來(lái)前完成。下一個(gè)脈沖開始此時(shí)輸出端口D0將轉(zhuǎn)換輸出數(shù)據(jù)的最高位,之后的每一個(gè)脈沖都會(huì)轉(zhuǎn)換移位數(shù)據(jù),直至八位數(shù)據(jù)全部轉(zhuǎn)換完成,此時(shí)一個(gè)字節(jié)的轉(zhuǎn)換結(jié)束。從上一個(gè)字節(jié)轉(zhuǎn)換結(jié)束開始,將會(huì)輸出相反的字節(jié),直至相反字節(jié)輸出完成,此時(shí)才算完成一次模數(shù)轉(zhuǎn)換。在轉(zhuǎn)換完成后,會(huì)將端口CS置高電平進(jìn)行禁用,然后將轉(zhuǎn)換的數(shù)據(jù)處理輸出。ADC0832模數(shù)轉(zhuǎn)換流程圖如圖4-2所示。表4-1ADC0832通道選擇通道地址通道工作方式說(shuō)明SGL/DIFODD/SIGN0100+-差分輸入01-+10+單端輸入方式11+,圖4-2ADC0832流程圖ADC0832模數(shù)轉(zhuǎn)換程序如下:unsignedcharad0832read(unsignedcharCH){ unsignedchardat=0x00;//AD值unsignedchari,test,adval;adval=0x00;test=0x00;Clk=0;//初始化DATI=1;_nop_();CS=0;_nop_();Clk=1;_nop_(); if(CH==0x00)//通道選擇 { Clk=0; DATI=1;//通道0的第一位 _nop_(); Clk=1;_nop_();Clk=0; DATI=0;//通道0的第二位 _nop_(); Clk=1;_nop_();} else{Clk=0; DATI=1;//通道1的第一位_nop_();Clk=1;_nop_(); Clk=0; DATI=1;//通道1的第二位 _nop_(); Clk=1; _nop_();}Clk=0;DATI=1;for(i=0;i<8;i++)//讀取前8位的值{ _nop_(); adval<<=1; Clk=1; _nop_(); Clk=0; if(DATO) adval|=0x01; else adval|=0x00;}for(i=0;i<8;i++)//讀取后8位的值{test>>=1;if(DATO) test|=0x80;elsetest|=0x00;_nop_();Clk=1; _nop_();Clk=0;}if(adval==test)//比較前8位與后8位的值,如果不相同舍去。若一直出現(xiàn)顯示為零,請(qǐng)將該行去掉dat=test;_nop_();CS=1;//釋放ADC0832DATO=1;Clk=1;returndat;}第五章設(shè)計(jì)仿真與調(diào)試5.1仿真軟件介紹5.1.1KeilKeil是KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),KeilC51是美國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開發(fā),體會(huì)更加深刻。它相比匯編語(yǔ)言來(lái)說(shuō)更加高效且易懂,對(duì)于剛接觸單片機(jī)編程的新手來(lái)說(shuō),Keil是一個(gè)十分得力的幫手,他可以完成編輯,編譯,連接,調(diào)試,仿真整個(gè)開發(fā)流程。它在開發(fā)過(guò)程中起到不可替代的作用,可以有效減少資源的浪費(fèi),還可以在編譯出錯(cuò)后進(jìn)行不斷的調(diào)整。自帶編程查錯(cuò)功能,能夠有效的查出編程過(guò)程中的邏輯以及語(yǔ)法的錯(cuò)誤并可以定位其位置。經(jīng)過(guò)編程,編譯,連接,調(diào)試等過(guò)程后生成可以被Proteus所接受的程序來(lái)進(jìn)行仿真。其界面如圖5.1所示。圖5-1Keil編程界面5.1.2Proteus簡(jiǎn)介Proteus是英國(guó)公司開發(fā)出來(lái)的從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MATLAB等多種編譯器。它可以將大量芯片元件仿真模擬出來(lái),比如各種單片機(jī)芯片以及電阻,三極管,顯示屏等元件還可以將燈光和聲音仿真模擬出來(lái),具有很強(qiáng)的實(shí)用性。在設(shè)計(jì)儀器和模擬仿真方面都有非常不錯(cuò)的表現(xiàn)。如圖5.2為Proteus開發(fā)界面。圖5-2Proteus界面5.2設(shè)計(jì)仿真結(jié)果通過(guò)不斷調(diào)試,其中遇到不少問(wèn)題,比如因?yàn)榍捌谠诜澍Q器選擇上有些問(wèn)題導(dǎo)致不響,最后通過(guò)選擇合適的蜂鳴器,達(dá)到想要的結(jié)果。在LE最后的仿真結(jié)果如圖5-1所示。圖5-3仿真結(jié)果圖第六章結(jié)論社會(huì)在快速發(fā)展,人們從開始追求物質(zhì)財(cái)富到追求精神層面得到寶藏,也越來(lái)越注重生存環(huán)境的質(zhì)量。人類生存在藍(lán)色星球上,生活在同一片藍(lán)天之下,隨著大氣粉塵污染的加劇,藍(lán)天白云不在,換來(lái)的是一張霧蒙蒙的大網(wǎng),但喚醒的是我們保護(hù)環(huán)境的意識(shí),所以對(duì)PM2.5的檢測(cè)是十分有意義的事情。這次畢業(yè)設(shè)計(jì)用了大量的時(shí)間去查找資料,了解整個(gè)課題設(shè)計(jì)的背景意義,也去重新學(xué)習(xí)了關(guān)于單片機(jī)的知識(shí),對(duì)模數(shù)轉(zhuǎn)換模塊又重新進(jìn)行學(xué)習(xí)理解。由于在學(xué)習(xí)階段對(duì)這些方面的認(rèn)識(shí)還不夠多,在學(xué)習(xí)的過(guò)程中也遇到了很多問(wèn)題,但在慢慢的學(xué)習(xí)以及老師和同學(xué)的指導(dǎo)下逐漸攻克這些難題。在這次畢業(yè)設(shè)計(jì)中,我系統(tǒng)的了解到設(shè)計(jì)一個(gè)東西的流程。在設(shè)計(jì)過(guò)程中要考慮到設(shè)計(jì)的方方面面,部件是否滿足設(shè)計(jì)需要,是否考慮到成品的體積等多種因素,還要考慮到做出的成品是否物美價(jià)廉等很多因素。在學(xué)習(xí)以及設(shè)計(jì)的過(guò)程中,也認(rèn)識(shí)到自己在之前學(xué)習(xí)過(guò)程中的忽略的部分,這也提醒我再未來(lái)的工作中要抱著認(rèn)真學(xué)習(xí)的態(tài)度。經(jīng)過(guò)多次試驗(yàn)驗(yàn)證,將本系統(tǒng)所測(cè)的數(shù)據(jù)與監(jiān)測(cè)站提供的專業(yè)測(cè)量數(shù)據(jù)相對(duì)比,本次畢設(shè)所設(shè)計(jì)的空氣粉塵質(zhì)量檢測(cè)儀基本能夠?qū)崿F(xiàn)空氣中PM2.5數(shù)據(jù)的測(cè)量,并維持在較少的誤差范圍內(nèi)。特別是污染等級(jí)提示模塊具有較好的實(shí)用價(jià)值,可以很好給監(jiān)測(cè)人員提供依據(jù)。綜上所述,本系統(tǒng)在應(yīng)對(duì)較簡(jiǎn)單的環(huán)境時(shí)能夠快速測(cè)出當(dāng)前區(qū)域的空氣指數(shù),以其實(shí)時(shí)性和便捷性而廣受人們的關(guān)注。當(dāng)然,就目前實(shí)驗(yàn)的結(jié)果來(lái)看,所采用的夏普粉塵傳感器GP2Y1010AU0F采集的PM2.5值與專業(yè)的環(huán)境監(jiān)測(cè)站所測(cè)的數(shù)據(jù)進(jìn)行對(duì)比,發(fā)現(xiàn)數(shù)據(jù)的精確度較低,不太適合進(jìn)行高精確度的監(jiān)測(cè),只能應(yīng)用在實(shí)驗(yàn)室研究中。因此,在接下來(lái)的研究中,可以向著精度和靈敏度更好的方面進(jìn)行。另外,霧霾中的顆粒物還有很多,環(huán)境指數(shù)的評(píng)判指標(biāo)也很多。下一步可以在本系統(tǒng)中加入更多的模塊,比如PM10監(jiān)測(cè)模塊、溫濕度監(jiān)測(cè)模塊、GPS定位模塊等,以實(shí)現(xiàn)實(shí)時(shí)、全面的監(jiān)測(cè),為環(huán)境污染治理工作提供一個(gè)更加準(zhǔn)確、科學(xué)、合理的數(shù)據(jù)。最后,所設(shè)計(jì)的電路也有待于進(jìn)一步完善,提供穩(wěn)定、固定的電源供電,合理的進(jìn)行線路布線,使得硬件整體設(shè)計(jì)更加合理美觀。參考文獻(xiàn)李金亮,李兵,王澤華.淺談PM2.5的危害及治理[J].邯鄲職業(yè)技術(shù)學(xué)院學(xué)報(bào),2020,33(2):43-44張理博,孫鵬,羅淑年.大氣細(xì)顆粒物PM2.5的危害及其治理政策的研究[J].環(huán)境科學(xué)與管理,2020(4):15-17.索丹鳳,曾三武.空氣細(xì)顆粒物PM2.5對(duì)人體各系統(tǒng)危害的研究[J].醫(yī)學(xué)信息,2019(9):112-115.邊際.PM2.5的危害[J].國(guó)土綠化,2017,(10)楊新興,馮麗華,尉鵬.大氣顆粒物PM2.5及其危害[J].前沿科學(xué),2012(01):24-33.SongyunJiang.TheDesignofTemperatureandSmokeDetectionandAlarmSystemBasedonSingle-ChipMicrocomputer[J].Electronicproduction,2017(11):21-22.QiZhang,QunguiDu.TheDesignTechniquesofSingle-ChipMicrocomputerApplicationSystem-BasedonCLanguageProgramming[M].Beijing:electronicindustrypress,2004.羅曼.基于便攜式檢測(cè)儀的空氣PM2.5濃度監(jiān)測(cè)與分析[J].科技與企業(yè),2014(14):408-410.楊書申,邵龍義,龔鐵強(qiáng)等.大氣顆粒物濃度檢測(cè)技術(shù)及其發(fā)展[J].北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào),2005,4(1):36-39.盛成龍,夏鳳毅大氣細(xì)顆粒物自動(dòng)檢測(cè)技術(shù)比較[J].環(huán)境與健康雜志,2013,30(4):294.
附錄一原理圖
附錄二程序#include<reg52.h> //調(diào)用單片機(jī)頭文件#defineucharunsignedchar//無(wú)符號(hào)字符型宏定義 變量范圍0~255#defineuintunsignedint //無(wú)符號(hào)整型宏定義 變量范圍0~65535 #include<intrins.h>sbitbeep=P1^4;//蜂鳴器IO口定義uintflag_300ms;sbitCS=P3^2; //CS定義為P2口的第4位腳,連接ADC0832CS腳sbitClk=P3^3; //SCL定義為P2口的第3位腳,連接ADC0832SCL腳sbitDATI=P3^4; //DO定義為P2口的第4位腳,連接ADC0832DO腳sbitDATO=P3^4;sbitk1=P3^5;sbitk2=P3^6;sbitk3=P3^7; //按鍵的IO變量的定義ucharkey_can; //按鍵值的變量ucharpm,s_pm=150;uintb,time_num1,set_count,PM_dat=0;ucharmenu_1=0;//菜單設(shè)計(jì)的變量sbitGP2Y_LED=P1^3; //傳感器驅(qū)動(dòng)端口/****************************************************************名稱:delay_1ms()*功能:延時(shí)1ms函數(shù)*輸入:q*輸出:無(wú)****************************************************************/voiddelay_1ms(uintq){ uinti,j; for(i=0;i<q;i++) for(j=0;j<120;j++);}ucharcodetable_num[]="0123456789abcdefg";sbitrs=P1^0; //寄存器選擇信號(hào)H:數(shù)據(jù)寄存器 L:指令寄存器sbitrw=P1^1; //寄存器選擇信號(hào)H:數(shù)據(jù)寄存器 L:指令寄存器sbite=P1^2; //片選信號(hào)下降沿觸發(fā)/*********************************************************************名稱:delay_uint()*功能:小延時(shí)。*輸入:無(wú)*輸出:無(wú)***********************************************************************/voiddelay_uint(uintq){ while(q--);}/*********************************************************************名稱:write_com(ucharcom)*功能:1602命令函數(shù)*輸入:輸入的命令值*輸出:無(wú)***********************************************************************/voidwrite_com(ucharcom){ e=0; rs=0; rw=0; P0=com; delay_uint(25); e=1; delay_uint(100); e=0;}/*********************************************************************名稱:write_data(uchardat)*功能:1602寫數(shù)據(jù)函數(shù)*輸入:需要寫入1602的數(shù)據(jù)*輸出:無(wú)***********************************************************************/voidwrite_data(uchardat){ e=0; rs=1; rw=0; P0=dat; delay_uint(25); e=1; delay_uint(100); e=0; }/***********************lcd1602上顯示兩位十進(jìn)制數(shù)************************/voidwrite_sfm_pm(ucharhang,ucharadd,uintdate){ if(hang==1) write_com(0x80+add); else write_com(0x80+0x40+add); write_data(0x30+date/100%10); write_data(0x30+date/10%10); write_data(0x30+date%10); }/***********************lcd1602上顯示這字符函數(shù)************************/voidwrite_string(ucharhang,ucharadd,uchar*p){ if(hang==1) write_com(0x80+add); else write_com(0x80+0x40+add); while(1) { if(*p=='\0')break; write_data(*p); p++; } }/***********************lcd1602初始化設(shè)置************************/voidinit_1602() //lcd1602初始化{ write_com(0x38); write_com(0x0c); write_com(0x06);}/***********讀數(shù)模轉(zhuǎn)換數(shù)據(jù)********************************************************/ unsignedcharad0832read(unsignedcharCH){ unsignedchardat=0x00;//AD值unsignedchari,test,adval;adval=0x00;test=0x00;Clk=0;//初始化DATI=1;_nop_();CS=0;_nop_();Clk=1;_nop_(); if(CH==0x00)//通道選擇 { Clk=0; DATI=1;//通道0的第一位 _nop_(); Clk=1;_nop_();Clk=0; DATI=0;//通道0的第二位 _nop_(); Clk=1;_nop_();} else{Clk=0; DATI=1;//通道1的第一位_nop_();Clk=1;_nop_(); Clk=0; DATI=1;//通道1的第二位 _nop_(); Clk=1; _nop_();}Clk=0;DATI=1;for(i=0;i<8;i++)//讀取前8位的值{ _nop_(); adval<<=1; Clk=1; _nop_(); Clk=0; if(DATO) adval|=0x01; else adval|=0x00;}for(i=0;i<8;i++)//讀取后8位的值{test>>=1;if(DATO) test|=0x80;elsetest|=0x00;_nop_();Clk=1; _nop_();Clk=0;}if(adval==test)//比較前8位與后8位的值,如果不相同舍去。若一直出現(xiàn)顯示為零,請(qǐng)將該行去掉dat=test;_nop_();CS=1;//釋放ADC0832DATO=1;Clk=1;returndat;}/*************定時(shí)器0初始化程序***************/voidtime_init() { EA=1; //開總中斷 TMOD=0X02; //定時(shí)器0、定時(shí)器1工作方式1 TH0=216; //每40us進(jìn)一次中斷 TL0=216; ET0=1; //開定時(shí)器0中斷 TR0=
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年殺蟲殺螨混劑合作協(xié)議書
- 2025年消霧塔合作協(xié)議書
- 2025年谷物生產(chǎn)合作協(xié)議書
- 2025年平板型太陽(yáng)熱水器合作協(xié)議書
- 2025年企業(yè)合同信用管理工作個(gè)人總結(jié)(三篇)
- 2025年個(gè)人項(xiàng)目投資合同(2篇)
- 2025年五年級(jí)下冊(cè)班主任工作總結(jié)(二篇)
- 2025年五年級(jí)語(yǔ)文上教學(xué)工作總結(jié)(二篇)
- 2025年五金建材購(gòu)銷合同參考樣本(五篇)
- 2025年二手房購(gòu)買協(xié)議標(biāo)準(zhǔn)版本(三篇)
- 麻風(fēng)病防治知識(shí)培訓(xùn)課件
- 化工企業(yè)重大事故隱患判定標(biāo)準(zhǔn)培訓(xùn)考試卷(后附答案)
- 工傷賠償授權(quán)委托書范例
- 食堂餐具炊具供貨服務(wù)方案
- 員工安全健康手冊(cè)
- 自然科學(xué)基礎(chǔ)(小學(xué)教育專業(yè))全套教學(xué)課件
- 華為客服制度
- 醫(yī)美面部抗衰老注射項(xiàng)目培訓(xùn)課件
- 小學(xué)語(yǔ)文閱讀教學(xué)落實(shí)學(xué)生核心素養(yǎng)方法的研究-中期報(bào)告
- 電梯使用轉(zhuǎn)讓協(xié)議書范文
- 工程變更履歷表
評(píng)論
0/150
提交評(píng)論