![汽車駕駛員酒精濃度監(jiān)控系統(tǒng)設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/d5e6b031-8ee9-487c-8b91-a8389c5fbd29/d5e6b031-8ee9-487c-8b91-a8389c5fbd291.gif)
![汽車駕駛員酒精濃度監(jiān)控系統(tǒng)設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/d5e6b031-8ee9-487c-8b91-a8389c5fbd29/d5e6b031-8ee9-487c-8b91-a8389c5fbd292.gif)
![汽車駕駛員酒精濃度監(jiān)控系統(tǒng)設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/d5e6b031-8ee9-487c-8b91-a8389c5fbd29/d5e6b031-8ee9-487c-8b91-a8389c5fbd293.gif)
![汽車駕駛員酒精濃度監(jiān)控系統(tǒng)設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/d5e6b031-8ee9-487c-8b91-a8389c5fbd29/d5e6b031-8ee9-487c-8b91-a8389c5fbd294.gif)
![汽車駕駛員酒精濃度監(jiān)控系統(tǒng)設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/10/d5e6b031-8ee9-487c-8b91-a8389c5fbd29/d5e6b031-8ee9-487c-8b91-a8389c5fbd295.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、前言前 言隨著電子技術(shù)的迅速發(fā)展,特別是隨大規(guī)模集成電路產(chǎn)生而出現(xiàn)的微型計算機,給人類生活帶來了根本性的改變。如果說微型計算機的出現(xiàn)使現(xiàn)代科學研究得到了質(zhì)的飛躍,那么可以毫不夸張他說,單片機技術(shù)的出現(xiàn)則是給現(xiàn)代工業(yè)測控領(lǐng)域帶來了一次新的技術(shù)革命。目前,單片機以其高可靠性、高性能價格比,在工業(yè)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、智能化儀器儀表、辦公自動化等諸多領(lǐng)域得到極為廣泛的應(yīng)用,并已走人家庭,從洗衣機、微波爐到音響、汽車,到處都可見到單片機的蹤影。因此,單片機技術(shù)開發(fā)和應(yīng)用水平已逐步成為一個國家工業(yè)發(fā)展水平的標志之一。我國傳感器市場的增長率超過15%,2003年銷售額為186億元人民幣,2006年銷售額
2、為283億元人民幣,預(yù)計2007年為325億元人民幣,2008年為374億元人民幣。我國傳感器4大類中,工業(yè)和汽車電子產(chǎn)品占市場份額的33.5%。近年來,傳感器正處于傳統(tǒng)型向新型傳感器轉(zhuǎn)型的發(fā)展階段,新型傳感器的特點是微型化、數(shù)字化、智能化、多功能化、系統(tǒng)化、網(wǎng)絡(luò)化,它將不僅促進系統(tǒng)產(chǎn)業(yè)的改造,而且可導(dǎo)致建立新型工業(yè)和軍事變革,是21世紀新的經(jīng)濟增長點。隨著汽車工業(yè)的發(fā)展,汽車肇事越來越受到各國的重視,在世界各國交通事故的法醫(yī)調(diào)查研究中,酒后駕駛是導(dǎo)致交通事故的重要原因。雖然各國對酒后駕車執(zhí)行了嚴格的規(guī)定,但酒后駕車仍然具有一定的普遍性。針對這種現(xiàn)象,本文設(shè)計一種基于MCS51單片機的控制系統(tǒng)
3、,通過高靈敏度的呼氣式酒精傳感器檢測司機的酒精攝入量。當司機體內(nèi)酒精含量超標時,控制系統(tǒng)會自動切斷汽車啟動系統(tǒng),使汽車無法正常啟動。從而更好的保障交通秩序和人們的出行安全。構(gòu)建和諧的交通環(huán)境。1 緒論1.1 課題來源來源于生產(chǎn)/社會實際1.2 研究的目的、意義、應(yīng)解決的主要問題大學四年學了許多關(guān)于硬件的課程,像電路學、電子技術(shù),但是多半是理論性的居多,實際上做電路的只有電工電子實驗課上才有,而且?guī)缀醵忌婕安坏饺粘躺钪械膽?yīng)用。本次畢業(yè)論文課題恰好提供了一次機會可以讓我學以致用,加上我們學習了8051單片機的基礎(chǔ)知識,因此我便朝著這個方向前進。但由于我們是主攻硬件方面的知識,在計算機軟件方面還得
4、學習很多跟課題相關(guān)的知識。隨著汽車工業(yè)的發(fā)展,汽車肇事越來越受到各國的重視,在世界各國交通事故的法醫(yī)調(diào)查研究中,酒后駕駛是導(dǎo)致交通事故的重要原因。雖然各國對酒后駕車執(zhí)行了嚴格的規(guī)定,但酒后駕車仍然具有一定的普遍性。針對這種現(xiàn)象,本設(shè)計基于80C51單片機設(shè)計的酒精氣體濃度探測儀,可用來檢測酒精氣體濃度,最主要的用途是檢測司機的酒精含量。酒后駕車發(fā)生事故的機率高達27%。隨著攝入酒精量的增加,選擇反應(yīng)錯誤率顯著增加,當血液中酒精含量由0.5增至1,發(fā)生車禍的可能性便增加5倍,如果增至1.5,可能性再增加6倍。機動車駕駛?cè)藛T“酒后駕車” 及“醉酒駕車”極易發(fā)生道路交通事故, 嚴重危害了道路交通安全
5、和人民生命財產(chǎn)安全。人飲酒后, 酒精通過消化系統(tǒng)被人體吸收, 經(jīng)過血液循環(huán), 約有90%的酒精通過肺部呼氣排出, 因此測量呼氣中的酒精含量, 就可判斷其醉酒程度。開車司機只要將嘴對著傳感頭使勁吹氣,儀器就能發(fā)上顯示出酒精濃度的高低,從而判斷該司機是否酒后駕車,避免事故的發(fā)生。當然,最好的辦法是在車內(nèi)安裝這種測試儀,司機一進入車內(nèi)檢測儀就檢測司機的酒精含量,如果超出允許值,系統(tǒng)控制引擎無法啟動,這樣就可從根本上解決酒后駕車問題。 酒精氣體濃度探測儀在生產(chǎn)生活中也有重要的應(yīng)用,比如,在一些環(huán)境要求嚴格的生產(chǎn)車間,用這種酒精濃度探測儀,可隨時檢測車間內(nèi)的酒精氣體濃度,當酒精氣體濃度高于允許限定值時,
6、發(fā)出警報,提醒人們及時通風換氣,做到安全生產(chǎn)。1.3 國內(nèi)外發(fā)展現(xiàn)狀、發(fā)展趨勢及面臨挑戰(zhàn)第43頁 共 44 頁緒論日產(chǎn)汽車公司日前對外宣布,一款新的概念車應(yīng)用了可以預(yù)防酒后駕駛的技術(shù),這項技術(shù)可以數(shù)倍減少酒后駕駛引發(fā)的交通事故。該技術(shù)可以有效測試司機的清醒程度,采用多種預(yù)防措施防止酒后駕駛,并在危險時刻對汽車采取緊急制動。概念車在司機和乘客的座位上也安裝了酒精氣味傳感器,用來監(jiān)測汽車座艙內(nèi)空氣中的酒精含量。當酒精氣味被傳感器探測到時,導(dǎo)航系統(tǒng)也會發(fā)出“酒后駕駛”的警報音,導(dǎo)航系統(tǒng)顯示屏同時自動顯示“不要酒后駕駛!”的文字提示。為了取得“安全駕駛環(huán)境”,日產(chǎn)汽車對大量交通事故信息進行了采集分析。
7、日產(chǎn)汽車公司在防止酒后駕駛的技術(shù)上做出了一系列努力。今年6月,日產(chǎn)提出自動導(dǎo)航系統(tǒng)開啟提醒司機“不要酒后駕駛”的信息警報。7月,日產(chǎn)汽車公司再次與地方政府合作測試一種新型呼氣測醉器,該裝置用檢查呼吸的手段發(fā)現(xiàn)駕駛員血液酒精含量是否超標,并通過緊急制動裝置阻止酒后駕車人啟動汽車。目前日產(chǎn)汽車已經(jīng)開始著手啟動智能傳輸系統(tǒng)項目,目的是為了更有效地減少交通事故。日產(chǎn)汽車計劃到2015年在日本用于車輛交通事故的保險賠付比1995年減少一半。國內(nèi)目前也有很多汽車廠商著手研究該產(chǎn)品,使用該產(chǎn)品的機動車,一旦駕駛員酒后操作,系統(tǒng)將自動發(fā)出警示,首先是報警鈴響提示,然后在液晶顯示屏上自動顯示“嚴禁駕駛”字樣,并
8、有“為了你和他人的幸福,請不要開車”等語音提示;如駕駛員一意孤行仍要開車,該產(chǎn)品的終端控制系統(tǒng)將發(fā)揮作用,使機動車斷電,無法啟動;直到酒精含量減少到測試標準之下,該系統(tǒng)則解除強制監(jiān)控,自動恢復(fù)機動車行駛功能。前景:像安全帶一樣普及。1.4 設(shè)計方案本文以80C51單片機為核心,設(shè)計了用于測量酒精濃度的探測儀,主要研究工作包括以下3個方面。(1)硬件電路方面,對氣體傳感器MQ-3按檢測電路,接上一定阻值的負載電阻,檢測它的技術(shù)參數(shù),確定MQ-3所接負載電阻的大小,完成信號采樣電路的設(shè)計;采樣到的模擬電壓電信號通過A/D轉(zhuǎn)換,得到可供單片機處理的數(shù)字信號,再由單片機作相應(yīng)的數(shù)據(jù)處理, 控制汽車點火
9、器打開或者關(guān)閉;發(fā)光二極管報警顯示和3個單位8段共陰數(shù)碼管濃度值顯示。(2)軟件方面,標準的確定是該部分要做的主要工作。因為原始的采樣值是一個間接的負載分壓值,需要將它轉(zhuǎn)化為被測酒精濃度值。通過多個樣品的測量確定多個濃度區(qū)間的轉(zhuǎn)換標準,并將每個區(qū)間的轉(zhuǎn)換關(guān)系近似線性化處理,然后通過軟件編程的方法來實現(xiàn)。(3)為了盡量減少設(shè)計的氣體傳感器的測量誤差,在測量酒精溶液樣品時要考慮并解決3個主要問題。一是外界環(huán)境流動空氣對傳感器的影響和對氣體樣品的稀釋,二是樣品的穩(wěn)定性對測量帶來的誤差,三是水蒸氣對測量的影響。針對這3個主要問題提出以下解決方案和驗證方法。測量樣品時,將探頭盡量放入塑料瓶內(nèi),可以在一定
10、程度上消除流動空氣的影響,同時應(yīng)選擇空氣流動較小的室內(nèi)環(huán)境來測量。水蒸氣對MQ-3的影響很小,這一點可以通過對只裝有純凈水的塑料瓶的多次測量來驗證。用相同容量的塑料瓶配制好不同濃度的酒精溶液后,將它密封并放置一段時間,待其穩(wěn)定后再測量。再通過反復(fù)多次測量多組數(shù)據(jù),求其平均值的方法來縮小測量誤差。系統(tǒng)硬件設(shè)計2 系統(tǒng)硬件設(shè)計2.1 單片機開發(fā)流程(1)可行性調(diào)研。可行性調(diào)研的目的,是分析完成這個項目的可能性。進行這方面的工作,可參考國內(nèi)外有關(guān)資料,看是否有人進行過類似的工作。如果有,則可分析他人是如何進行這方面工作的,有什么優(yōu)點和缺點,有什么值得借鑒的;如果沒有,則需要作進一步的調(diào)研,此時的重點
11、應(yīng)放在能否實現(xiàn)這個環(huán)節(jié),首先從理論上進行分析,探討實現(xiàn)的可能性,所需求的客觀條件是否具備,然后結(jié)合實際情況,再決定能否立項的問題。(2)系統(tǒng)總體方案的設(shè)計。在進行可行性調(diào)研后,如果可以立項,下一步工作就是系統(tǒng)總體方案的設(shè)計。工作的重點應(yīng)放在該項目的技術(shù)難度上,此時可參考這一方面更詳細、更具體的資料,根據(jù)系統(tǒng)的不同部分和要實現(xiàn)的功能,參考國內(nèi)外同類產(chǎn)品的性能,提出合理而可行的技術(shù)指標,編寫出設(shè)計任務(wù)書,從而完成系統(tǒng)總體方案設(shè)計。(3)設(shè)計方案細化,確定軟硬件功能。一旦總體方案確定下來,下一步的工作就是將該項目細化,即需明確哪些部分用硬件來完成,哪些部分用軟件來完成。由于硬件結(jié)構(gòu)與軟件方案會相互影
12、響,因此,從簡化電路結(jié)構(gòu)、降低成本、減少故障率、提高系統(tǒng)的靈活性與通用性方面考慮,提倡軟件能實現(xiàn)的功能盡可能由軟件來完成;但也應(yīng)考慮軟件代硬件的實質(zhì)是以降低系統(tǒng)的實時性、增加處理進行為代價的,而且軟件設(shè)計費用、研制周期也將增加,因此系統(tǒng)的軟硬件功能分配應(yīng)根據(jù)系統(tǒng)的要求及實際情況而合理安排,統(tǒng)一考慮。在確定軟硬件功能的基礎(chǔ)上,設(shè)計者的工作就開始涉及到具體的問題,如儀器的體積及與具體技術(shù)指標相對應(yīng)的硬件實現(xiàn)方案,軟件的總體規(guī)劃等。在確定人員分工、安排工作進度、規(guī)定接口參數(shù)后,就比須考慮硬件軟件的具體問題了。(4)一個單片機應(yīng)用系統(tǒng)經(jīng)過調(diào)研、總體設(shè)計、硬件軟件設(shè)計、制版、元件安裝后,在系統(tǒng)的程序存儲
13、器中放入編制好的應(yīng)用程序,系統(tǒng)即可運行。但一次性成功的幾乎是不可能的。由于單片機在執(zhí)行程序時人工是無法控制的,為了能夠調(diào)試程序,檢查硬件、軟件運行情況,這就需要借助某種開發(fā)工具模擬用戶實際的單片機,并且能隨時觀察運行的中間過程而不改變運行中有的數(shù)據(jù)性能和結(jié)果,從而進行模擬現(xiàn)場的真實調(diào)試。2.2 硬件系統(tǒng)框圖基于80C51單片機用MQ-3型氣體傳感器實現(xiàn)酒精氣體濃度的檢測,需要信號采集模塊用于對酒精濃度信號的采集,該信號是通過MQ-3氣體傳感器和負載電壓得到分壓電信號。信號轉(zhuǎn)換模塊用來把采集到得模擬電壓信號轉(zhuǎn)換位可以用單片機處理的數(shù)字信號。數(shù)碼管顯示模塊是對單片機處理后的數(shù)字信號的顯示,用來顯示
14、酒精的濃度。報警模塊是對設(shè)定值提供報警功能,該功能用發(fā)光二極管顯示。根據(jù)各功能模塊的設(shè)計,可得到它的系統(tǒng)總框圖,如圖1所示。酒精氣敏傳感器LM3914發(fā)光二極管ADC0809單片機數(shù)碼管 繼電器圖1 系統(tǒng)總框圖2.3 信號采集電路2.3.1 氣體傳感器的選擇根據(jù)被檢測氣體的不同,氣敏傳感器可分為以下三類:(1)可燃性氣體氣敏傳感器。目前該類氣敏傳感器需求量最大,包含各種無機和有機類氣體檢測,主要用于抽油煙機、泄露報警器和空氣清新劑等方面,并已經(jīng)形成生產(chǎn)規(guī)模,在油田、礦區(qū)、化工、企業(yè)及家庭等生產(chǎn)和生活領(lǐng)域廣泛用作氣體泄露報普,特別是用于家庭氣體泄露報警,需求量不斷增加,使該類傳感器有著廣泛的發(fā)展
15、空間。(2)CO和H2氣敏傳感器。CO氣敏元件可用于工業(yè)生產(chǎn)、環(huán)保、汽車、家庭等CO泄露和不完全燃燒檢測報警;H2氣敏元件除應(yīng)用于工業(yè)等領(lǐng)域外,主要用于家庭管道煤氣泄露報警。由于我國管道煤氣中H2含量很高,而氫敏元件較氧化碳元件價格低,靈敏度高,因此,用氫敏元件做城市管道煤氣泄露報警更為適宜。(3)毒性氣體傳感器。毒性氣體傳感器又稱為環(huán)境有毒有害氣體傳感器,主要用于檢測煙氣、尾氣、廢氣等環(huán)境污染氣體,雖然SnO2氣敏傳感器對CO,H2S等有毒有害氣體敏感,但應(yīng)用最多的仍是電解式化學傳感器。 傳感器的分類方式有很多種,以上是根據(jù)被檢測氣體的性質(zhì)進行的分類,也有根據(jù)元件的物理特性進行分類的。一個新
16、型的氣體檢測系統(tǒng)應(yīng)該包括:(1)基于一種或幾種傳感技術(shù)的氣體傳感器。(2)組合了氣體傳感器和采樣調(diào)理電路的探頭。(3)配有人機接口軟件的中心監(jiān)測和控制系統(tǒng)。(4)在一些應(yīng)用中,與其它安全系統(tǒng)和儀器的接口。本設(shè)計中的酒精氣體傳感器采用河南漢威電子有限公司的MQ-3型,它屬于MQ系列氣敏元件的一種。如圖2所示:圖2 MQ-3特點:檢測范圍為10ppm2000ppm ;靈敏度高,輸出信號為伏特級;響應(yīng)速度快,小于10秒;功耗小于0.75W,尺寸:D17*H10。 MQ-3型氣敏傳感器的敏感部分是由金屬氧化物(二氧化錫)的N型半導(dǎo)體微晶燒結(jié)層構(gòu)成。當其表面吸附有被測氣體酒精分子時,表面導(dǎo)電電子比例就會
17、發(fā)生變化,從而其表面電阻會隨著被測氣體濃度的變化而變化。由于這種變化是可逆的,所以能重復(fù)使用。MQ-3的靈敏度特性曲線如 圖3所示。圖3 MQ-3靈敏度特性曲線檢測電路如圖4所示,當電源開關(guān)S斷開時,傳感器加熱電流為零,實測A,B之間電阻大于20M。S接通,則f,f之間電流由開始時155mA降至153mA而穩(wěn)定。加熱開始幾秒鐘后A,B之間電阻迅速下降至10K以下,然后又逐漸上升至120K以上后并保持著。此時如果將酒精溶液樣品靠近MQ-3傳感器,我們立即可以看到數(shù)字萬用表顯示值馬上由原來大于120K降至10K以下。移開小瓶過1分鐘左右后,A,B之間電阻恢復(fù)至大于120K。這種反應(yīng)可以重復(fù)試驗,但
18、要注意使空氣恢復(fù)到潔凈狀態(tài)。經(jīng)實驗的反復(fù)檢測,MQ-3傳感器可以正常工作使用,對不同濃度的酒精溶液有不同的變化,響應(yīng)時間和恢復(fù)時間都正常,可以開始作信號采樣模塊電路的設(shè)計。圖4 MQ-3檢測電路2.3.2 信號采樣電路信號的采樣模塊電路如圖5所示。MQ-3的加熱電阻兩端即H引腳接至+5V直流穩(wěn)壓電源,用于電阻絲對敏感體電阻的加熱。MQ-3的兩個A引腳相連,作為敏感體電阻的一個電極。MQ-3的兩個B引腳也連接在一起,作為敏感體電阻的另一個電極。將電極端A接到電源正極,電極端B接兩個270并聯(lián)的電阻。MQ-3型氣敏傳感器與電位器串聯(lián)構(gòu)成分壓電路,采樣點為電位器的分壓。MQ-3型氣敏傳感器的敏感部分
19、是由金屬氧化物SnO2的N型半導(dǎo)體微晶燒結(jié)層構(gòu)成。當其表面吸附有被測氣體酒精分子時,表面導(dǎo)電電子比例就會發(fā)生變化,從而其表面電阻會隨著被測氣體濃度的變化而變化。由于這種變化是可逆的,所以能重復(fù)使用。當氣敏傳感器的敏感體電阻阻值發(fā)生改變時,對應(yīng)的電位器的分壓值也會發(fā)生相應(yīng)的變化,即一個電壓值對應(yīng)著一個被測酒精氣體濃度。對酒精氣體濃度的采樣就可以轉(zhuǎn)化為對電位器分壓的采樣。 在采樣硬件電路中實際要考慮到MQ-3的實際技術(shù)參數(shù),即加熱電阻和敏感體電阻的大小,該部分應(yīng)與電源正極相連。負載電阻要根據(jù)MQ-3實際的技術(shù)參數(shù)而選擇阻值合適的電阻。應(yīng)為實驗所用的MQ-3在預(yù)熱5到10分鐘后,它的敏感體電阻只有1
20、20K,所以負載電阻選用兩個270并聯(lián),構(gòu)成采樣部分的分壓電阻。圖5 采樣模塊2.4 信號轉(zhuǎn)換電路單片微機是單片微型計算機的譯名簡稱,在國內(nèi)也常稱為“單片微機”或“單片機”。它包括中央處理器CPU,隨機存儲器RAM,只讀存儲器ROM,中斷系統(tǒng),定時器/計數(shù)器,串行口和I/O口等等?,F(xiàn)在,單片微機已不僅指單片計算機,還包括微計算機,微處理器,微控制器和嵌入式控制器,單片微機已是它們的俗稱8。80C51是美國ATMEL公司生產(chǎn)的低功耗,高性能CMOS8位單片機,片內(nèi)含4K的可系統(tǒng)編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準8051指令系統(tǒng)及引腳。它
21、集Flash程序存儲器,既可在線編程也可以用傳統(tǒng)方法進行編程及通用8位微處理器于單片芯片中,可靈活應(yīng)用于各種控制領(lǐng)域。80C51提供以下標準功能:4KBFlash閃存存儲器,128B內(nèi)部RAM,32個I/O口線,看門狗,兩個數(shù)據(jù)指針,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。根據(jù)實際需要,本次設(shè)計選用的是以8051為核心單元Atmel公司的低耗80C51單片機。80C51芯片有40條引腳,采用雙列直插式封裝,如圖6所示。下面說明各引腳功能。 圖6 80C51芯片管腳VCC:運行和程序校驗時接電源正端。GND:接地。XTAL1:輸入到單片機內(nèi)部振
22、蕩器的反相放大器。XTAL2:反相放大器的輸出,輸入到內(nèi)部時鐘發(fā)生器。P0口:8位漏極開路的。使用片外存儲器時,作低八位地址和數(shù)據(jù)分時復(fù)用,能驅(qū)動8個LSTTL上拉電阻。P1口:8位、準雙向I/O口。P2口:8位、準雙向I/O口。當使用片外存儲器(ROM及RAM)時,輸出高8位地址??梢则?qū)動4個LSTTL負載。P3口:8位、準雙向I/O口,具有內(nèi)部上拉電路,提供各種替代功能。P3.0RXD串行口輸入口,P3.1TXD串行口輸出口,P3.2外部中斷0輸入,P3.3外部中斷1輸入,P3.4T0定時器/計數(shù)器0的外部輸入,P3.5T1定時器/計數(shù)器1的外部輸入,P3.6低電平有效,輸出,片外存儲器寫
23、選通,P3.7低電平有效,輸出,片外存儲器讀選通。RST:復(fù)位輸入信號,高電平有效。在振蕩器工作時,在RST上作用兩個機器周期以上的高電平,將器件復(fù)位。/VCC:片外程序存儲器訪問允許信號,低電平有效。高電平時選擇片內(nèi)程序存儲器,低電平時程序存儲器全部在片外而不管片內(nèi)是否有程序存儲器。ALE/PROG:地址鎖存允許信號,輸出。ALE以1/6的振蕩頻率固定速率輸出,可作為對外輸出的時鐘或用作外部定時脈沖。單片機最小系統(tǒng)的設(shè)計包括電源,晶振和復(fù)位電路三個部分。這是使單片機正常工作的必要外圍電路部分。針對不同型號的單片機在最小系統(tǒng)設(shè)計上會有一些差別。對于選用的80C51單片機,根據(jù)美國ATMEL公司
24、提供的技術(shù)資料,可以對它的最小系統(tǒng)作恰當?shù)脑O(shè)計,如圖8所示。對于電源部分,技術(shù)資料中性能參數(shù)里給出的標準工作電壓是4.05.5V。因此,單片機的引腳40對應(yīng)的VCC接到+5V電源的正極,引腳10對應(yīng)的GND接到+5V電源的接地端,為80C51單片機提供正常的工作電壓。對于晶振部分,80C51單片機中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳19對應(yīng)的XTAL1和18對應(yīng)的XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。如圖8所示,石英晶體及電容C1和C2接在放大器的反饋回路中構(gòu)成并聯(lián)諧振電路。石英晶體的兩端分別接到引腳XTA
25、L1 和引腳XTAL2,同時石英晶體的兩端分別接一個電容C1和C2,電容的另一端接地。對于外接電容C1和C2的大小雖然沒有十分嚴格的要求,但電容容量的大小還是會對振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度和溫度穩(wěn)定性帶來一定的影響。根據(jù)技術(shù)資料的推薦,使用石英晶體推薦電容容量為30pF10pF,使用陶瓷諧振器推薦電容容量為40pF10pF。因為電路中接的是石英晶體,所以設(shè)計中接的兩個電容C1和C2的容量都為33pF。對于復(fù)位電路部分,80C51技術(shù)資料給出,當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上的高電平將使單片機復(fù)位。復(fù)位是單片機的初始化操作,當由于程序運行出錯或操作錯誤使系統(tǒng)
26、處于死鎖狀態(tài)時,為了擺脫困境,可以按復(fù)位鍵以重新啟動,所以復(fù)位電路的設(shè)計很有必要。復(fù)位操作有上電自動復(fù)位、按鍵電平復(fù)位和外部脈沖復(fù)位三種方式,本設(shè)計選用按鍵電平復(fù)位方式。如圖7所示,10F的電容C3與270的電阻并聯(lián)后再與一個10K的電阻串聯(lián),電容的正極端接到電源的正極,電容的另一端接至引腳RST。設(shè)計中選用的石英晶體大小為11.0952MHz,但復(fù)位鍵按下后,電容和電阻選用的參數(shù)值能夠保證給復(fù)位端RST提供大于2個機器周期的高電平復(fù)位信號。圖7 80C51單片機最小系統(tǒng)設(shè)計電路ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如圖8所示,它由8路模擬開關(guān)、地址鎖存與譯碼器、比較器
27、、8位開關(guān)樹型A/D轉(zhuǎn)換器、逐次逼近寄存器、三態(tài)輸出鎖存器等其它一些電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態(tài)輸出能力,既可與各種微處理器相連,也可單獨工作。輸入輸出與TTL兼容。 圖8 ADC0809內(nèi)部結(jié)構(gòu)ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖9所示。下面說明各引腳功能。 圖9 ADC0809芯片IN0IN7:8路模擬量輸入端。 2-12-8:8位數(shù)字量輸出端。ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路。如表1所示。ALE:地址鎖存允許信號,輸入,高電平有效。 START:A/D轉(zhuǎn)換啟動信號,輸入,高電平有效。 EOC:A
28、/D轉(zhuǎn)換結(jié)束信號,輸出,當A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。 OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。 REF(+)、REF(-):基準電壓。 Vcc:電源,單一+5V。 GND:地。 ADC0809的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動 A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進行。直到A/D轉(zhuǎn)換完成,EO
29、C變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當OE輸入高電平 時,輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。當檢測到酒精氣味時,氣體傳感器的A-B間電阻變小,則ADC0809的模擬輸入端IN0的電壓變大。采用查詢方式對輸入模擬信號進行A/D轉(zhuǎn)換,然后將數(shù)據(jù)通過三位八段數(shù)碼管顯示。表1 ADC0809通道地址ADDC ADDB ADDA 選通通道0 0 0IN00 0 1IN10 1 0IN20 1 1IN31 0 0IN41 0 1IN51 1 0IN61 1 1IN7ADC0809芯片內(nèi)部沒有時鐘脈沖源,可以用單片機提供的地址鎖存控制輸入信號ALE
30、經(jīng)D觸發(fā)器二分頻后,作為 ADC0809的時鐘輸入。ALE端信號的頻率是單片機時鐘頻率的1/6。單片機的時鐘頻率是11.0952MHz,則ALE端輸出信號的頻率為1.8492MHz,再二分頻后為0.9246MHz,符合ADC0809對時鐘頻率的要求。由于ADC0809具有三態(tài)輸出數(shù)據(jù)鎖存器,其8位數(shù)據(jù)輸出端可以直接與數(shù)據(jù)總線相連。地址選通端ADDA,ADDB,ADDC分別與單片機地址總線的低三位A0,A1,A2相連,用于選通IN0-IN7中的某一通道。由于ALE和START連在一起,ADC0809在鎖存通道地址的同時啟動A/D轉(zhuǎn)換。在讀取A/D轉(zhuǎn)換結(jié)束時,OE產(chǎn)生的正脈沖信號用于打開三態(tài)輸出鎖
31、存器。ADC0809的EOC信號與單片機的P3.3相連,作為A/D轉(zhuǎn)換是否結(jié)束的狀態(tài)信號供單片機查詢。ADC0809與80C51單片機的接口電路如圖10所示。單片機引腳P3.6與P2.7進入或非門后與模數(shù)轉(zhuǎn)換芯片的ALE端和START端子用導(dǎo)線相連接,用于對模數(shù)轉(zhuǎn)換芯片寫入數(shù)據(jù)的寫信號。單片機的RD端P3.7與P2.7進入或非門后與模數(shù)轉(zhuǎn)換芯片的OE端子用導(dǎo)線相連接,作為單片機讀取模數(shù)轉(zhuǎn)換數(shù)據(jù)的讀信號。單片機引腳P3.3與模數(shù)轉(zhuǎn)換芯片的EOC端經(jīng)過或非門后的輸出端用導(dǎo)線相連接,用于單片機對模數(shù)轉(zhuǎn)換是否結(jié)束的查詢,模數(shù)轉(zhuǎn)換結(jié)束后可以查詢到P3.3為高電平,為單片機讀取數(shù)據(jù)作準備。單片機的ALE端
32、口接到D觸發(fā)器的時鐘信號輸入端CK,D觸發(fā)器的反相輸出端與觸發(fā)信號輸入端用導(dǎo)線相連,D觸發(fā)器的清零和復(fù)位端為低電平有效,分別接高電平,D觸發(fā)器的正向輸出端與模數(shù)轉(zhuǎn)換芯片的CLK端子用導(dǎo)線相連接,為模數(shù)轉(zhuǎn)換芯片提供正常的時鐘信號。把模數(shù)轉(zhuǎn)換芯片的A2A1A0端分別用導(dǎo)線連接到地址鎖存器的低三位,用于選擇模數(shù)轉(zhuǎn)換的通道。模數(shù)轉(zhuǎn)換芯片的IN0端子用導(dǎo)線與信號采樣部分的負載電阻端相連,作為要模數(shù)轉(zhuǎn)換的輸入端。單片機引腳P0.0P0.7連接到模數(shù)轉(zhuǎn)換芯片的數(shù)據(jù)輸出端D0D1D2D3D4D5D6D7端,用于讀取模數(shù)轉(zhuǎn)換后的數(shù)據(jù)。地址地址鎖存芯片74LS373的輸入端低三位分別與單片機引腳P0.0P0.2連
33、接,用于鎖存選擇模數(shù)轉(zhuǎn)換通道的地址。圖10 ADC0809與單片機80C51接口電路2.5 發(fā)光二極管顯示報警電路發(fā)光二極管集成驅(qū)動芯片LM3914的管腳圖如圖11所示。其內(nèi)部的緩沖放大器最大限度的提高了該集成電路的輸入電阻(5腳),電壓輸入信號經(jīng)過緩沖器(增益為零)同時送到10個電壓比較器的異相(-)輸入端。10個電壓比較器的同相輸入(+)端分別接到10個等值電阻(1K)串聯(lián)回路的10個分壓端。因為與串聯(lián)回路相接的內(nèi)部參考電壓為1.2V,所以相鄰分壓端之間的電壓差為1.2V/10=0.12V。為了驅(qū)動LED1發(fā)光,集成電路LM3914的1腳輸出應(yīng)該為低電平,因此要求電壓比較器異相(-)端的輸
34、入電壓應(yīng)大于0.12V。同理,要使LED2發(fā)光,異相端輸入電壓應(yīng)大于0.12*2=0.24V;要使LED10發(fā)光,異相端輸入電壓應(yīng)大于0.12*10=1.2V。LM3914的9腳為點,條方式選擇端,當9腳與11腳相接為點狀顯示;當9腳與3腳相接,則為條狀顯示。本系統(tǒng)采用條狀顯示方式,即將引腳9和引腳3都接到電源的正極。圖11 LM3914管腳圖如圖12所示,LM3914的3和9引腳接電源正極,使發(fā)光二極管成柱狀顯示,7和8引腳接一個2K的電阻,控制發(fā)光二極管的亮度,5引腳為采樣信號的輸入端,10到18引腳和1引腳分別接發(fā)光二極管的負極端,4和2引腳與發(fā)光二極管的正極間接一個10F的電容,作為發(fā)
35、光二極管的虛電源,驅(qū)動要反光的二極管點亮。當檢測到酒精氣味時,氣敏傳感器的A-B間電阻變小,LM3914的5端電位升高,通過比較放大,驅(qū)動發(fā)光二極管依次發(fā)光,從而區(qū)分出酒精含量的高低,直觀的看出所測的酒精濃度達到了哪個水平值,起到報警的作用。輸入靈敏度可以通過負載電阻的調(diào)節(jié)來實現(xiàn),即對地電阻調(diào)小時靈敏度下降;反之,靈敏度增加。改變7腳與8腳之間電阻的阻值可以調(diào)節(jié)發(fā)光二極管的顯示亮度,當阻值增加亮度減弱,反之加強。圖12 發(fā)光二極管顯示2.6 數(shù)碼管顯示電路發(fā)光二極管一般是砷化鎵半導(dǎo)體二極管,在發(fā)放光二極管兩端加上正向電壓,則發(fā)光二極管發(fā)光。數(shù)碼管是由若干發(fā)光二極管組合而成的,有共陰極和共陽極兩
36、種結(jié)構(gòu)形。8段共陰數(shù)碼管由abcdefg、dg這8個發(fā)光二極管組成。把8個發(fā)光二極管的陰極連接在一起構(gòu)成共陰極端,接進電路時,共陰極端接地,給要發(fā)光顯示的二極管的陽極端接高電平可使該發(fā)光二極管導(dǎo)通點亮。如圖13所示。圖13 8段共陰數(shù)碼管結(jié)構(gòu)圖用單片機驅(qū)動數(shù)碼管有靜態(tài)顯示和動態(tài)顯示,靜態(tài)顯示就是顯示驅(qū)動電路具有輸出鎖存功能,單片機將所要顯示的數(shù)據(jù)送出后就可以驅(qū)動數(shù)碼管顯示數(shù)據(jù),直到下一次顯示數(shù)據(jù)需要更新時再傳送一次新的數(shù)據(jù)就可以了。靜態(tài)顯示數(shù)據(jù)穩(wěn)定,占用CPU時間少。動態(tài)顯示需要時刻對顯示器件進行數(shù)據(jù)刷新,顯示數(shù)據(jù)有閃爍感,占用的CPU時間多。這兩種顯示方式各有利弊;靜態(tài)顯示雖然數(shù)據(jù)穩(wěn)定,占用
37、很少的CPU 時間,但每個顯示單元都需要單獨的顯示驅(qū)動電路,使用的硬件較多;動態(tài)顯示雖然有閃爍感,占用的CPU時間多,但使用的硬件少,能節(jié)省線路板空間。設(shè)計選用3個單位8段共陰數(shù)碼管來顯示輸出的數(shù)據(jù),因為電路硬件相對較簡單,所以選擇靜態(tài)顯示方法。選用3個移位寄存器74LS164驅(qū)動數(shù)碼管發(fā)光點亮。電路連接如圖14所示。移位寄存器在電路中一是驅(qū)動數(shù)碼管點亮,二是對輸入的串行數(shù)據(jù)并行輸出,起到串并轉(zhuǎn)換的作用。移位寄存器74LS164串行數(shù)據(jù)輸入端與前一位的并行輸出最高位相連,第一位移位寄存器的數(shù)據(jù)輸入端與單片機的數(shù)據(jù)輸出端P1.7連接。單片機引腳P1.6用于給移位寄存器提供移位的時鐘脈沖,該引腳與
38、三個移位寄存器的時鐘輸入端CLK相連。因為每位數(shù)據(jù)串行輸出先輸出的是低位,所以數(shù)碼管引腳a、b、c、d、e、f、g、dg應(yīng)順序與對應(yīng)位的移位寄存器并行輸出端的Q7、Q6、Q5、Q4、Q3、Q2、Q1、Q0連接。圖14 數(shù)碼管顯示電路2.7 系統(tǒng)整體電路圖信號采樣模塊電路的輸出接到發(fā)光二極管顯示LM3914的輸入端,同時也將采樣信號輸出端接至A/D轉(zhuǎn)換芯片的輸入端,再加上單片機最小系統(tǒng)電路、單片機與模數(shù)轉(zhuǎn)換芯片的連接和單片機與數(shù)碼管顯示的連接,即可作出它的整體電路圖,如圖15所示。圖15 整體電路圖系統(tǒng)軟件設(shè)計3 系統(tǒng)軟件設(shè)計3.1 開發(fā)環(huán)境選用的開發(fā)平臺為WAVE6000單片機集成開發(fā)環(huán)境,只
39、需在PC機上安裝WAVE6000軟件,然后在WAVE6000軟件代碼編輯器編輯程序代碼,經(jīng)匯編,修改,產(chǎn)生代碼,形成輸入輸出口實驗十六進制.HEX文件, 初始化器件后,將經(jīng)過編譯生成的.HEX十六進制文件下載到單片機。對于8051系列單片機,現(xiàn)有四種語言支持,即匯編、PL/M、C和BASIC。本設(shè)計軟件編程部分選用匯編語言來寫程序代碼。3. 2 程序流程當檢測到酒精氣味時,氣體傳感器MQ-3兩個電極端A-B間電阻將變小,對應(yīng)與氣體傳感器負載電阻的分壓將變大。因為ADC0809的模擬輸入端IN0與負載電阻的一端用導(dǎo)線連在了一起。所以單片機在啟動測試模數(shù)轉(zhuǎn)換芯片之前要選擇通道0,寫入模數(shù)轉(zhuǎn)換芯片,
40、并將用作查詢的單片機引腳P3.3置位,然后啟動對通道IN0端輸入的采集電壓信號作模數(shù)轉(zhuǎn)換,等待轉(zhuǎn)換的結(jié)束。利用單片機豐富的I/O口可以采用查詢方式來檢測模數(shù)轉(zhuǎn)換是否結(jié)束,當單片機引腳P3.3為1時轉(zhuǎn)換未結(jié)束等待,當查詢到P3.3為0時表示模數(shù)轉(zhuǎn)換已經(jīng)結(jié)束,可以開始讀取數(shù)據(jù)了。單片機通過I/O口與模數(shù)轉(zhuǎn)換芯片的數(shù)據(jù)輸出口相連讀取轉(zhuǎn)換后的數(shù)據(jù)。讀取后的數(shù)據(jù)送到數(shù)據(jù)存儲器單元中,經(jīng)過單片機作相應(yīng)的處理,即要將該電壓值轉(zhuǎn)換為酒精濃度值,然后處理后的數(shù)據(jù)轉(zhuǎn)換成三位十進制BCD碼用數(shù)碼管顯示。程序流程圖如圖16所示。單片機選擇A/D通道地址單片機P3.3置位并啟動A/D測試A/D轉(zhuǎn)換結(jié)束?P3.3=1?數(shù)
41、碼管顯示NY單片機初始化開始單片機讀取數(shù)據(jù)并作處理圖16 程序流程圖3.3 程序代碼編寫系統(tǒng)電源線接通或者系統(tǒng)復(fù)位后,程序從主程序入口進入運行。因為在程序中每次對模數(shù)轉(zhuǎn)換后讀取的數(shù)據(jù),需要相應(yīng)的存儲空間,同時對讀取的數(shù)據(jù)作適當處理后也要送到特定的存儲空間存儲起來,以供后面的數(shù)碼管顯示用。當然,在程序運行的過程當中,還要用到工作寄存器,因為工作寄存器都是臨時存儲數(shù)據(jù),不需要保存作為以后處理要用到的數(shù)據(jù),所以工作寄存器的初始化這部分可以省去。于是,對于程序的初始化程序代碼可以相應(yīng)寫出13。START:MOV R7,#60HMOV R0,#20HCLR ALOOP:MOV R0,AINC R0DJN
42、Z R7,LOOP初始化程序從數(shù)據(jù)存儲器地址為20H單元開始,到80H單元全部清零。即每次的初始化將上次存儲的數(shù)據(jù)全部清除,用于存放當前要存儲的數(shù)據(jù)。對模擬電壓信號的數(shù)字轉(zhuǎn)換由模數(shù)轉(zhuǎn)換芯片ADC0809加單片機80C51控制來完成。模擬電壓的輸入端接在模數(shù)轉(zhuǎn)換芯片的IN0通道,再根據(jù)單片機與模數(shù)轉(zhuǎn)換芯片的連接,單片機在選擇讀寫地址時應(yīng)該為#7FF8H。因為單片機高8位地址位的P2.7位與單片機的位經(jīng)或非后與模數(shù)轉(zhuǎn)換芯片的START和ALE用導(dǎo)線連接。所以單片機在將地址#7FF8H寫入模數(shù)轉(zhuǎn)換芯片后,一方面模數(shù)轉(zhuǎn)換芯片鎖存地址選擇線的狀態(tài),從而選通相應(yīng)的模擬通道,同時啟動模數(shù)轉(zhuǎn)換。模數(shù)轉(zhuǎn)換需要一
43、定的時間,這時可以開始對轉(zhuǎn)換是否結(jié)束進行不斷的查詢。ADC0809中模數(shù)轉(zhuǎn)換結(jié)束輸出標志位是EOC,轉(zhuǎn)換結(jié)束時為高電平有效。該位通過一個反相器與單片機引腳P3.3相連,因為啟動模數(shù)轉(zhuǎn)換之前P3.3位被置位,所以當查詢到P3.3位為0時即表示模數(shù)轉(zhuǎn)換結(jié)束。最后將轉(zhuǎn)換后的數(shù)據(jù)讀取到單片機累加器A中。根據(jù)這思路可以寫出模數(shù)轉(zhuǎn)換的子程序代碼。TEST:MOV DPTR,#7FF8H SETB P3.3 MOVX DPTR,A JB P3.3,$ MOVX A,DPTR RET把轉(zhuǎn)換后得到的數(shù)字電壓值讀取到單片機后,因為,實際的電壓值范圍在0+5V之間,而ADC0809模數(shù)轉(zhuǎn)換芯片對應(yīng)的是8位精度的處理
44、,即從00000000B到11111111B,所以單片機還要對它作個除#51的處理工作。而在處理過程中對于有些數(shù)據(jù)的處理,可能要碰到雙字節(jié)相除的情況。為此,在第一位單字節(jié)除#51后,接下來的小數(shù)部分位的除#51則要作雙字節(jié)的除法,這樣才能保證使所有位能顯示出來。如果所有位都當單字節(jié)除法來運算的話,對于有些要作雙字節(jié)除法的位上的數(shù)字則無法顯示,而能是顯示0。相除后對應(yīng)的每一位分別送到地址為#7DH,#7EH,#7FH的存儲單元保存,以供顯示或后續(xù)處理用。思路明確后,實際電壓值轉(zhuǎn)換部分程序可以寫出來。MOV B,#51DIV ABMOV 7DH,AMOV A,BMOV B,#10MUL ABMOV
45、 R6,AMOV R7,BACALL DIV16 MOV 7EH,R6MOV A,R2MOV B,#10MUL ABMOV R6,AMOV R7,BACALL DIV16MOV 7FH,R6經(jīng)過處理后實際采樣到的電壓值對應(yīng)的各個位就分別存儲在#7DH,#7EH,#7FH三個存儲單元里面了。模數(shù)轉(zhuǎn)換后得到的數(shù)字電壓量被單片機讀取后還要作一定的數(shù)據(jù)處理,其中包括把電壓值轉(zhuǎn)換為與之相對應(yīng)的酒精濃度值,根據(jù)總體設(shè)計思路,對電壓值都近似作對應(yīng)區(qū)間的線性轉(zhuǎn)換。即首先,單片機要對采集到的數(shù)據(jù)在哪個區(qū)間作個判斷跳轉(zhuǎn),然后再根據(jù)該區(qū)間的線性關(guān)系作轉(zhuǎn)換,得到對應(yīng)的酒精濃度值。根據(jù)酒精濃度與電壓的線性映射關(guān)系,如表
46、3所示,可以寫出該部分的程序代碼MOV B,#100MUL ABMOV R6,AMOV R7,BMOV R5,#0MOV R4,#51ACALL DIV16MOV 70H,R6MOV 71H,R7MOV A,71HJNZ L5L1:MOV 72H,#75CLR CMOV A,70HSUBB A,72HJNC L2ACALL PP0AJMP PPL2:MOV 72H,#145CLR CMOV A,70HSUBB A,72HJNC L3ACALL PP1AJMP PPL3:MOV 72H,#173CLR CMOV A,70HSUBB A,72HJNC L4ACALL PP2AJMP PPL4:MO
47、V 72H,#233CLR CMOV A,70HSUBB A,72HJNC L5ACALL PP3AJMP PPL5:MOV 72H,#18CLR CMOV A,70HSUBB A,72HJNC L6ACALL PP4AJMP PPL6:MOV 72H,#64CLR CMOV A,70HSUBB A,72HJNC L7ACALL PP5AJMP PPL7:MOV 72H,#105CLR CMOV A,70HSUBB A,72HJNC L8ACALL PP6AJMP PPL8:ACALL PP7AJMP PP從讀取到的電壓值得到酒精濃度值后,還要把該值轉(zhuǎn)換為3位10進制BCD碼,存儲到特定的存儲
48、單元以供數(shù)碼管顯示數(shù)值。數(shù)碼管顯示選用的是靜態(tài)顯示的方法,要在每次顯示數(shù)據(jù)時把要顯示的3個位按順序串行送到數(shù)碼管集成驅(qū)動電路74LS164并行輸出,以同時驅(qū)動3個數(shù)碼管同時點亮。根據(jù)7段數(shù)碼管的字型碼如表2所示和移位寄存器74LS164的邏輯功能,將對應(yīng)的共陰極字型碼放在一個表格中,然后通過查表的方式找到要顯示的數(shù)字送移位寄存器驅(qū)動數(shù)碼管顯示。單片機對每次移出的位通過P1.7輸入到移位寄存器的數(shù)據(jù)輸入端,移位寄存器的時鐘脈沖通過單片機P1.6模擬的時鐘信號提供。于是可以寫出顯示部分的程序代碼。DISP:MOV DPTR,#TABMOV A,7FHMOVC A,A+DPTRACALL SOMOV
49、 A,7EHMOVC A,A+DPTRACALL SOMOV A,7DHMOVC A,A+DPTRACALL SORETSO:MOV R7,#8SO1:CLR P1.6 RRC A MOV P1.7,C SETB P1.6 DJNZ R7,SO1 RET表2 七段LED字型碼顯示字符共陰極字型碼共陽極字型碼03FHC0H106HF9H25BHA4H34FHB0H466H99H56DH92H67DH82H707HF8H87FH80H96FH90H 程序當中為了顯示的精確,在有些位相除時用到了雙字節(jié)相除的算法。對于多字節(jié)無符號數(shù)的除法,可以依照移位相減的基本方法來進行。除法運算是按位進行的,每一位
50、是一個循環(huán),每個循環(huán)中要作三件事,一是被除數(shù)左移一位,二是余數(shù)減除數(shù),最后根據(jù)是否減來置商位為1或0。對于被除數(shù)的移動,最簡單的辦法是把被除數(shù)向余數(shù)單元左移,把被除數(shù)左移后空出的低位存放商數(shù),當除法完成后,被除數(shù)已全部移動到余數(shù)單元并逐次被減而得到余數(shù),而被除數(shù)單元中內(nèi)容已成為商數(shù)。據(jù)此,可以寫出雙字節(jié)除法的程序代碼。DIV16:MOV R5,#0 MOV R4,#51 MOV R3,#0 MOV R2,#0 MOV R1,#16LP1:CLR C MOV A,R6 RLC A MOV R6,A MOV A,R7 RLC A MOV R7,A MOV A,R2 RLC A MOV R2,A M
51、OV A,R3 RLC A MOV R3,A MOV A,R2 CLR C SUBB A,R4 JC NEXT MOV R0,A MOV A,R3 SUBB A,R5 JC NEXT INC R6 MOV R3,A MOV A,R0 MOV R2,ANEXT:DJNZ R1,LP1RET根據(jù)程序流程圖和各個子程序的編寫可以得到整個設(shè)計的總程序代碼,見附錄。打開實驗開發(fā)平臺WAVE6000單片機集成開發(fā)環(huán)境,在WAVE6000軟件代碼編輯器編輯程序代碼,經(jīng)匯編,修改,產(chǎn)生代碼電路調(diào)試與測試結(jié)果4 電路調(diào)試與測試結(jié)果4.1 電路調(diào)試根據(jù)各個模塊功能的設(shè)計和繪制的整體電路圖,找到各功能模塊的連接點。
52、按照設(shè)計的步驟,并對照總電路圖,在面包板上連接電路。電路的連接順序是,先連接好各個模塊,在調(diào)試檢查正確的前提下再把各個模塊連接起來。打開80C51軟件,將寫好的調(diào)試程序代碼在計算機上輸入、匯編、修改、產(chǎn)生代碼,形成輸入輸出口實驗.HEX文件。打開WAVE6000軟件,在菜單options選項中選擇select device,在彈出的窗口中選擇器件80C51,并選Byte Mode點擊OK。初始化器件后,將經(jīng)過編譯生成的,HEX十六進制文件下載到單片機。電路連接好,并將調(diào)試程序代碼(注釋電壓到酒精濃度轉(zhuǎn)換關(guān)系代碼)燒寫到80C51單片機上后,接上+5V電源開始調(diào)試。先把氣體傳感器探頭用一個阻值為
53、20k的電阻替代,復(fù)位單片機,觀察數(shù)碼管上的顯示數(shù)據(jù)和發(fā)光二極管的點亮情況。用萬用表測量采樣點的電壓值,看用萬用表測得的電壓值與數(shù)碼管上顯示數(shù)據(jù)是否一致。因為各導(dǎo)線和元器件對電壓電流的影響,數(shù)碼管顯示的數(shù)據(jù)與萬用表測得的數(shù)據(jù)存在一定的偏差,但在可接受的范圍內(nèi)。調(diào)節(jié)電位器,觀察數(shù)碼管數(shù)據(jù)顯示的變化,同樣用萬用表測量電壓值作比較。測量數(shù)據(jù)與數(shù)碼管顯示數(shù)據(jù)基本一致,說明電路數(shù)碼管顯示部分連接正確。然后,再把電位器阻值從0開始逐漸調(diào)大,在每過一個0.12V電壓后觀察相應(yīng)發(fā)光二極管點亮,說明發(fā)光二極管顯示部分電路連接正確。調(diào)試電路其他功能模塊正確后,將預(yù)熱足夠長時間能正常工作的氣體傳感器MQ-3換上原來
54、20k的電阻。準備好若干個不同濃度的酒精氣體樣品,檢測氣體傳感器是否能正常工作。當把不同濃度的酒精溶液樣品靠接氣敏傳感器時,各自對應(yīng)一個不同的數(shù)據(jù)顯示,說明整體電路已經(jīng)完全正確。 4.2 濃度與顯示之間的關(guān)系4.2.1 傳感器的定標在系統(tǒng)電路調(diào)試正確以后,要作改進工作,使數(shù)碼管上正確顯示所測的酒精氣體濃度值。之前顯示的是酒精濃度值與電壓的對應(yīng)關(guān)系,所以要顯示酒精濃度值,需要找到電壓與濃度之間的關(guān)系,然后才能建立酒精濃度值與顯示的映射關(guān)系。測量用的酒精溶液是用無水乙醇和純凈水按體積比來配制的,單位mL/mL表示的是1mL酒精溶液中含酒精的體積。準備多個不同濃度的酒精氣體樣品,從小到大,依次用氣敏傳感器檢測,記錄對應(yīng)的電壓值,記錄樣品的濃度和電壓值之間的關(guān)系,如圖17所示。根據(jù)曲線圖的走向可以看出傳感器的酒精濃度檢測大致范圍,然后根據(jù)這個范圍選擇7個合適的濃度值,多次測量電壓值,再取平均值作為最后電壓值,把6個標準區(qū)間范圍定下來,如表3所示。圖17 濃度與電壓關(guān)系曲線圖表3 樣品對應(yīng)電壓值樣品濃度C(mL/mL)C1C2C3C40.3753.683.543.603.613.610.3333.193.203.173.223.200.1672.762.742.73
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6 我們神圣的國土 第三課時 (說課稿)-部編版道德與法治五年級上冊
- 7-1《短歌行》說課稿 2024-2025學年統(tǒng)編版高中語文必修上冊
- 2025年企業(yè)招標承包經(jīng)營合同
- 《7 剪紙藝術(shù)》(說課稿)-2023-2024學年四年級下冊綜合實踐活動粵教版
- Module 8 Unit 1 Were going to visit Hainan.(說課稿)-2024-2025學年外研版(三起)英語四年級上冊
- Unit 2 My week Period 4 Get ready for the new school year(說課稿)-2024-2025學年人教PEP版英語五年級上冊
- 19海濱小城 (說課稿)-2024-2025學年三年級上冊語文統(tǒng)編版
- 2025農(nóng)副產(chǎn)品買賣合同書模板(合同版本)
- 2023八年級語文上冊 第五單元 口語交際 復(fù)述與轉(zhuǎn)述配套說課稿 新人教版
- 2024年春八年級歷史下冊 第10課 社會主義民主與法制的加強說課稿1(pdf) 川教版
- 部編版語文四年級下冊 教材解讀
- 自然保護區(qū)規(guī)劃研究課件
- 《學會積極歸因》教學設(shè)計
- 《一次函數(shù)與方程、不等式》說課稿
- 動火作業(yè)安全管理要求及控制措施
- 詩豪劉禹錫一生部編教材PPT
- 資源循環(huán)科學和工程專業(yè)建設(shè)探討
- 中國營養(yǎng)師培訓(xùn)教材1
- 《民航服務(wù)溝通技巧》教案第13課內(nèi)部溝通基礎(chǔ)知識
- 2023年湖南高速鐵路職業(yè)技術(shù)學院高職單招(語文)試題庫含答案解析
- FZ/T 54024-2019錦綸6預(yù)取向絲
評論
0/150
提交評論