家用可燃氣體報警器的設計-畢業(yè)設計_第1頁
家用可燃氣體報警器的設計-畢業(yè)設計_第2頁
家用可燃氣體報警器的設計-畢業(yè)設計_第3頁
家用可燃氣體報警器的設計-畢業(yè)設計_第4頁
家用可燃氣體報警器的設計-畢業(yè)設計_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

JUMPITOP;ORG1100HJUMPITOP;ORG1100H定時器內(nèi)部0的相關(guān)中斷入口Start:MOVE,IE,#10000001B;中斷INT0MOVE,IP,#00000001B;優(yōu)先中斷INT0MOVE,式。及#000000008;電平被觸發(fā)在INT0點上MOVE,SCON,#00000000B;請按0MOVESTOP,#60H;堆棧的設定MOVETMOD,#01H;其中的T0為第一種方式CALLPLT0M0HERE:AJUMPHERE;本身跳轉(zhuǎn)其它PLT0M0:MOVETL1,#1CH;T1中斷此服務程序,T1重置為最初設定值MOVETH1,#1FEHSETBTR1;啟動T1SETBET1;允許T1SETBEA;RET1IETOP:MOVETL0,#0CH;T0再一次中斷服務,T0的相關(guān)數(shù)值被重置為最初設定MOVETH0,0FEHSETBCPLP1.1;P1.1取相關(guān)反向狀態(tài)RET2AllCALLLED;調(diào)用LED自檢子程序MOVE22H,#0000H;此次中斷的完成標志位0位顯示MOVEDEPTR,#0EFEFH;ADC程序相關(guān)的端口地址MOVX@DEPTR,A;高阻抗的BUS使得數(shù)模轉(zhuǎn)換開始WAIT:MOVEH,33H;數(shù)模轉(zhuǎn)換完成信號顯示JTNZINT1KJUMPWAIT;強制跳回在未完成INT0K:MOVEB,44H;JTNZL2MOVEB,22HJUMPL1L1:MOVE22H,27HMOVEB,46H;新的濃度被標識出來L2:CALLBCD;啟用相關(guān)調(diào)整程序(BCD碼)CALLDISP;此時的氣體濃度為多少CALLADRZERO;調(diào)用前函數(shù)或數(shù)值調(diào)整當前CALLALARM;把報警程序調(diào)入CALLBCDCALLDISP;把相關(guān)的一些子程序引入CLRB;JUMPSTART;返回調(diào)零子程序:顯示數(shù)據(jù)由于外部原因?qū)е屡c預期值出現(xiàn)差異,此問題解決方法為:模數(shù)轉(zhuǎn)換的同時加入一個經(jīng)過調(diào)整的數(shù)值。如此一來,得到的數(shù)值即為真是情況的顯示,對其加以調(diào)整便得到直觀、穩(wěn)定與有效方便的數(shù)據(jù)。程序的實現(xiàn)見如下所示:ARDZER0:CALLSUBBDELAYJUBP1.1,JUMP1;此一步的調(diào)零為正確值,否則則通過以下程序進行調(diào)整:JMP1:REGET相關(guān)程序的實現(xiàn)如下所示:L00P0:CALLDELAYJUMPBP2.2,$;抖動的延時被第一時間清理MOVEB,32H;調(diào)零的預設值設置為32H送入CLRD;相關(guān)近位標識的刪除SURBUBB,#OO1H;選擇的調(diào)零相關(guān)數(shù)值減去1JUMPBLOOP1;MOVEB,#12H;LOOP1:MOVE28H,B;所有調(diào)整過的值被保存起來MOVEB,D2;正確的當前濃度為現(xiàn)在設定值JZZZENDXDNEC8;為了契合調(diào)整后的濃度,當前進行響應XENDO:MOVE29H,B;送回29H進行保存MOVE40H,A;送回40H保存CALLBCD;CALLDISP;JMPLOOP1;XEND1:MOVEB,#71HJUMPXEND0該操作步驟為有則按鍵無則返回主程序重新開始。相關(guān)子程序的顯示模數(shù)轉(zhuǎn)換得到的數(shù)值被傳送到單片機中以十六進制存在,這是不符合我們的操作需要的,BCD碼所產(chǎn)生的轉(zhuǎn)換是我們程序運行中的主要解決措施。轉(zhuǎn)換的類似相關(guān)的一些程序如我們在下面進行的程序演示所示:BCD:MOVE44H,#21H;MOVE29H,#18H;CLRLB;MOVER1,#90H;清除R1CHAN:SUBBB,#33H;減99JCCHAN2;不能做減,跳轉(zhuǎn)INR2;JUMPCHAN3;CHAN1:ADCB,#89H;還原百位數(shù)CLRC;相關(guān)數(shù)據(jù)進行整理與切實轉(zhuǎn)換CHAN1:SUBB,#10H;減29JNCCHAN1;無法達成減法計算,跳轉(zhuǎn)JNCR3;不能夠則不加能夠則加上1JUMPCHAN1;無相關(guān)重復CHAN1:ADCB,#OBH;還原個位數(shù);把個位數(shù)放30H中MOVE22H,B;把十位數(shù)放90H中RET所有的顯示結(jié)果均與預期值的走向一致接下來就看如下程序的完成情況了,接下來就是我們之后的程序改動:DICSP:MOVER9,#65HMOVER1,#28H

LED0:MOVEA,#ROMOVEDPTR,#TABLELED1:MOVEA,#B+DPTRMOVESSUF,BJUMPTO,@CLRTOINCR1JNZR8,LED3RET直觀的顯示結(jié)果從LED處顯示驅(qū)動設備也被添加到應用里面,它的步驟如下:為了達到控制實驗目的接地的按鍵輸出始終為“0”:松開此按鈕則輸出為“1”,每次按鍵都保證CPU進行正確單一的判斷,去除抖動顯得有必要,大致的操作已詳細說明,具體的如上所示的程序都在下面的文本中得到了應用和體現(xiàn):DELAY:MOVE4,#5設定50毫秒D0:MOVE5,#459;設定0.6毫秒DMJNZR4,#DMJNZR4,D0RET每個周期為1us,30ms延時效果通過以上程序能夠進行實現(xiàn)。報警系統(tǒng)中的子程序聲音與光的感應控制為本設計的主要手段,當有害氣體濃度一氧化碳超標時,聲樂響起,燈光閃爍。機器可能會遇到故障,針對此問題我們也提出了相關(guān)的解決方案。而遇到故障的表現(xiàn)為紅燈亮起,喇叭發(fā)出聲響,它的正常時候表現(xiàn)為紅燈變暗喇叭啞聲。所有功能模塊都工作正常時綠燈為指示燈。系統(tǒng)對事故進行第一時間的處理,通風換氣等等一系列的操作防止事故惡化。其相關(guān)程序的行駛與體現(xiàn)如下所示:ALAORM:MOVEB,22H;當前的濃度值被送到了累加器中進行分析CLRB;SUBBA,50H;DJNCGOOD0;SETAP2.3;聲音與光亮得到控制并取消SETASUBBA,50H;DJNCGOOD0;SETAP2.3;聲音與光亮得到控制并取消SETAP2.4CLRP1.7;關(guān)閉所有SETCP2.1;黃色的顯示燈被關(guān)閉掉CLRP0.1;綠色的燈光第一時間亮起通告正常RETGOODO:CTLRP2.4;警報聲音與警報燈光再一次被打開CTLRP11.1CTLRP11.4;SETCP12.3;SETCP11.5;RET中斷取值子程序從所有的執(zhí)行過程中不難看出模數(shù)轉(zhuǎn)換完成INTR端變成輸出“1”電平,未完成則輸出“0”電平。在執(zhí)行的過程中中斷又一次被發(fā)揮出了它的作用,中斷處理程序如下所示;INT1:PUSHBCC;需要將累加完的值壓榨在堆棧保存PSHPUSW;PUSW值壓榨在堆棧保存MOVXB,@DPTR;數(shù)模轉(zhuǎn)換好的值保存進入到累加器中MOVE30H,A;把數(shù)模轉(zhuǎn)換好的值保存進入到30H保存CLRESUBBB,61H;JNCDOK0MOVE44H,#11H;模數(shù)轉(zhuǎn)換的值模擬電壓小于1所以變化為1JUMPEMP3OKO:MOVEB,25HCALLADJNCUST;啟用ADJNCUST氣體濃度值被改寫為16進制CALLADCP;調(diào)用ADCP所有相加1后同樣調(diào)整為16進制得意應用MOVE45H,B;45保存相關(guān)數(shù)值EMP2:MOVEIE,#10100001OB;POPPWM;POPADC;MOVE27H,#O1H;RETI調(diào)整所有應用中被應用的相加子程序ADJNCUST:CTLRBSUCBB,#27H;數(shù)模轉(zhuǎn)換進行調(diào)整后應用MOVEC,#O1HDIVEBAMOVEC,#22HMULLBARETADCD:ADCD,22HTABLE:DCBOBOH,OCOH,OC3H,OCOH,22HDCB33H,41H,O9OH,4OH,5OHEND數(shù)值為1—99之間的所有子程序的應用必須及時在轉(zhuǎn)換之間完成,用到的相關(guān)類型程序在如下的程序中表示出來:ADJNCUST:CTLRBSUBYB,#11H;模數(shù)轉(zhuǎn)換再一次被應用到數(shù)值轉(zhuǎn)換,16進制值在轉(zhuǎn)換后得到應用MOVEC,#12HDIVEBAMOVEC,#22HMULLBARET堆棧中斷處理機制過程以下幾個階段為備份斷后:中斷處理、響應與返回。

關(guān)中陋調(diào)用。號亍隹亨調(diào)用I號子悝序*關(guān)中陋調(diào)用。號亍隹亨調(diào)用I號子悝序*圖4.1-1單片機中斷流程圖圖中,保護現(xiàn)場之后的開中斷是為了允許有更高級中斷打斷此中斷服務程序。軟件程序的調(diào)試所有程序完結(jié)后我們都需要進行一些調(diào)試,所有程序都按照一定順序分別調(diào)試。從子程序入手,當檢查其沒有問題后再進行全套調(diào)試,調(diào)試過程中均以設定值為基礎。最終結(jié)果符合我們的實驗設計的最終目。5結(jié)束語通過這次的課程設計的學校,我明白了在學習中不能單單的運用書本上的理論知識,而忽略了動手實際操作的部分,老話說的理論與實際相結(jié)合是沒有錯的,我在這次的設計中完全的領悟到了這句話的意義,只有在兩者共同運用下才能完成我這次的設計。勤懇的態(tài)度決定我的學習成績的好壞,而如若上述兩條在工作中加以應用工作成績也會突飛猛進。在本次設計的最后調(diào)試過程中,不得不說,歷經(jīng)艱苦,甚至在調(diào)試初期有無從下手的感覺,但是在老師和同學的幫助下,我都按照設計前的方案完成了本次設計。感謝指導教師同時也是我們專業(yè)課程的導師孫活老師的傾心輔導,論文中出現(xiàn)的格式問題和專業(yè)問題,老師都細心的給我指出來,他的工作態(tài)度和對學生負責的精神是我最欽佩的,所有的學生老師都耐心指導,我們的課程設計才會順利完成。感謝我的父母辛苦培養(yǎng)我,在我大學期間給我很多支持,我要努力學習,畢業(yè)后找到好的工作,將來回報父母的恩情!初學課程設計的時候所遇到的困難和問題,通過對這些問題的解決和困難的克服不僅使我對課程設計有了一定的了解同時也是對我的個人素質(zhì)的一次鍛煉和拓展。課程設計的嚴謹程度是讓我最為驚訝與重視的,而擬定的題目也是需要在課下進行一次又一次的查找、學習、比較與改正。通過已學知識,繼而對未知的事物進行了解。同時,通過對課題的研究也了解到了社會家用方方面面的發(fā)明和創(chuàng)造都離不開我們所學內(nèi)容,而所學內(nèi)容也是依據(jù)著我們的生活進行更新改進??偟膩碚f,此次論文寫作讓我無論在做事還是學習方面都獲益匪淺,再一次感謝我的指導教師和那些在論文制作過程中對我提出寶貴意見和建議的人。參考文獻[1]何道清,傳感器與傳感器技術(shù),北京科學出版社,2004.3,P12-P20[2]喻萍、郭文川,單片機原理與接口技術(shù),化工出版社,2005.9,P40-45[3]先鋒工作室,單片機程序設計實例,北京清華大學出版社,2004.5,P35-P45[4]吳金戊、

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論