基于單片機(jī)的有毒氣體檢測(cè)系統(tǒng).docx_第1頁
基于單片機(jī)的有毒氣體檢測(cè)系統(tǒng).docx_第2頁
基于單片機(jī)的有毒氣體檢測(cè)系統(tǒng).docx_第3頁
基于單片機(jī)的有毒氣體檢測(cè)系統(tǒng).docx_第4頁
基于單片機(jī)的有毒氣體檢測(cè)系統(tǒng).docx_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余13頁可下載查看

下載本文檔

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

文檔簡(jiǎn)介

單片微機(jī)原理課程設(shè)計(jì)專周 學(xué)校: 成都工業(yè)學(xué)院 系別: 電氣與電子工程系題目: 有毒氣體檢測(cè)系統(tǒng) 指導(dǎo)老師:傅林 陳宇峰 姓名: 歐尤俊 班級(jí): 2011251 學(xué)號(hào): 34目錄一、系統(tǒng)功能框圖:二、原件簡(jiǎn)介:1、 AT89C511、1 AT89C51簡(jiǎn)介1、2 AT89C51基本操作2、 ADC0808模數(shù)轉(zhuǎn)換2、1.內(nèi)部結(jié)構(gòu)2、2. 引腳功能(外部特性)三、軟件部分:1、1主程序1、2.A/D轉(zhuǎn)換電路1、3.顯示系統(tǒng)四、硬件部分: 1、1.A/D轉(zhuǎn)換仿真圖 1、2.顯示部分仿真圖五、專周心得附錄一附錄二一、系統(tǒng)功能框圖:有毒氣體報(bào)警器同樣具有單片機(jī)應(yīng)用系統(tǒng)的三個(gè)層次。其中以AT89C51單片機(jī)為核心構(gòu)成單片機(jī)系統(tǒng)。在此系統(tǒng)中,檢測(cè)信號(hào)進(jìn)入單片機(jī)進(jìn)行運(yùn)算處理。為了更好的理清設(shè)計(jì)思路,將整個(gè)系統(tǒng)細(xì)分為三部分加以設(shè)計(jì)說明。整個(gè)報(bào)警器由三個(gè)部分組成,分為三大模塊:濃度檢測(cè)模塊、主控模塊和報(bào)警模塊。在本次設(shè)計(jì)中,使用的核心器件是單片機(jī)和一氧化碳傳感器。為了保重整個(gè)系統(tǒng)可靠的運(yùn)行,設(shè)計(jì)中必須明確三大部分的實(shí)際聯(lián)系:以單片機(jī)為中心,其他各大模塊一一展開。其中,濃度檢測(cè)及顯示模塊所實(shí)現(xiàn)的功能是將房間中的一氧化碳濃度值轉(zhuǎn)換成為單片機(jī)能夠處理的數(shù)字信號(hào),并且濃度值顯示出來:主控模塊以單片機(jī)為主,對(duì)其他模塊的運(yùn)行進(jìn)行控制;報(bào)警模塊是此系統(tǒng)的外部電路,它的功能是實(shí)現(xiàn)報(bào)警。系統(tǒng)框圖如圖2-2所示。圖2-2 系統(tǒng)框圖二、原件簡(jiǎn)介:1、 AT89C51:1、1.AT89C51簡(jiǎn)介:VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每個(gè)管腳可吸收8TTL門電流。當(dāng)P1口的管腳寫“1”時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部電位必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入“1”后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時(shí),P2口的管腳電位被外部拉低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉的優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時(shí),由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下所示:P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 (外部中斷0)P3.3 (外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 (外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 :外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取址期間,每個(gè)機(jī)器周期兩次有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的信號(hào)將不出現(xiàn)。 :當(dāng)保持低電平時(shí),訪問外部ROM;注意加密方式1時(shí),將內(nèi)部鎖定為RESET;當(dāng)端保持高電平時(shí),訪問內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。1、2.AT89C51基本操作: AT89C51復(fù)位引腳RST/VP通過片內(nèi)一個(gè)施密特觸發(fā)器(抑制噪聲作用)與片內(nèi)復(fù)位電路相連,施密特觸發(fā)器的輸出在每一個(gè)機(jī)器周期由復(fù)位電路采樣一次。當(dāng)振蕩電路工作,并且在RST引腳上加一個(gè)至少保持2個(gè)機(jī)器周期的高電平時(shí),就能使AT89C51完成一次復(fù)位。復(fù)位不影響RAM的內(nèi)容。復(fù)位后,PC指向0000H單元,使單片機(jī)從起始地址0000H單元開始重新執(zhí)行程序。所以,當(dāng)單片機(jī)運(yùn)行出錯(cuò)或進(jìn)入死循環(huán)時(shí),可按復(fù)位鍵重新啟動(dòng)。2、 AD0808模數(shù)轉(zhuǎn)換:ADC0808是采樣分辨率為8位的、以逐次逼近原理進(jìn)行模/數(shù)轉(zhuǎn)換的器件。其內(nèi)部有一個(gè)8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號(hào),只選通8路模擬輸入信號(hào)中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。2、1.內(nèi)部結(jié)構(gòu):ADC0808是CMOS單片型逐次逼近式AD轉(zhuǎn)換器,它有8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型A/D轉(zhuǎn)換器。 2、2.引腳功能(外部特性):ADC0808芯片有28條引腳,采用雙列直插式封裝,如右圖所示。各引腳功能如下: 15和2628(IN0IN7):8路模擬量輸入端。 8、14、15和1721:8位數(shù)字量輸出端。 22(ALE):地址鎖存允許信號(hào),輸入,高電平有效。 6(START): AD轉(zhuǎn)換啟動(dòng)脈沖輸入端,輸入一個(gè)正脈沖(至少100ns寬)使其啟動(dòng)(脈沖上升沿使0809復(fù)位,下降沿啟動(dòng)A/D轉(zhuǎn)換)。 7(EOC): AD轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。 9(OE):數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效。當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。 10(CLK):時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。 12(VREF(+)和16(VREF(-):參考電壓輸入端 11(Vcc):主電源輸入端。 13(GND):地。 2325(ADDA、ADDB、ADDC):3位地址輸入線,用于選通8路模擬輸入中的一路 三、軟件部分:1、1主程序: MAIN: MOV R0,#30H MOV R7,#20HLOOP: MOV R0,#00H INC R0 DJNZ R7,LOOP MOV TMOD,#12H MOV TH0,#245 MOV TL0,#00H SETB EA SETB ET0 SETB TR0MAIN_1: ACALL ADC ACALL CHULI MOV R6,35H MOV R7,36H ACALL H_BCD MOV 38H,R3 MOV 39H,R4 MOV 3AH,R5 ACALL FENLI ACALL DISPLAY ACALL DELAY AJMP MAIN_1INT_T0: CPL CLOCK RETIADC: CLR START SETB START CLR START JNB EOC,$ SETB OE MOV AD_DATA,P3 CLR OE RETDELAY: MOV 40H,#100DELAY_1:ACALL DISPLAY DJNZ 40H,DELAY_1 RET1、2.A/D轉(zhuǎn)換電路: ADC: CLR START SETB START CLR START JNB EOC,$ SETB OE MOV AD_DATA,P3 CLR OE RETCHULI: MOV A,AD_DATA MOV B,#20 MUL AB MOV 35H,B MOV 36H,A RETH_BCD: CLR A MOV R3,A MOV R4,A MOV R5,A MOV R2,#10HH_BCD_1:MOV A,R7 RLC A MOV R7,A MOV A,R6 RLC A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A MOV A,R3 ADDC A,R3 MOV R3,A DJNZ R2,H_BCD_1 RET1、3.顯示系統(tǒng): DISPLAY:MOV DPTR,#TAB1 MOV R0,#42H MOV R7,#3 MOV R2,#02HDSP_1: MOV P2,#01H MOV A,41H MOVC A,A+DPTR ANL A,#7FH MOV P0,A ACALL DS1MS MOV P2,R2 MOV A,R0 MOVC A,A+DPTRLOOK: CJNE A,#0F9H,MOVON SETB P1.0MOVON: JNC LOOK MOV P0,A ACALL DS1MS INC R0 MOV A,R2 RL A MOV R2,A DJNZ R7,DSP_1 RETDS1MS: MOV TH1,#0FCH MOV TL1,#18H SETB TR1DS1MS_1:JBC TF1,DS1MS_2 SJMP DS1MS_1DS1MS_2:CLR TR1 RETTAB1: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H 四、硬件部分: 1、1.A/D轉(zhuǎn)換仿真圖 1、2.顯示部分仿真圖 五、專周心得:通過這一周的查閱資料、自己修改、程序調(diào)試和修改,是我學(xué)會(huì)了很多。以前課堂上不懂得部分、理解不透徹的地方我都弄明白并且理解了。當(dāng)然在這一周中還是有很多不如意的地方。例如,當(dāng)程序?qū)懗鰜砹?,調(diào)試的時(shí)候有很多錯(cuò)誤自己又不知道怎么改,查閱資料無果后。心里真的有種想放棄的沖動(dòng)!不過最后我還是堅(jiān)持了下來。專周雖然讓人很疲憊,但是當(dāng)你做出來以后的那種成就感是永遠(yuǎn)沒法替代的。通過這個(gè)專周我不僅學(xué)習(xí)了知識(shí)、運(yùn)用了自己所學(xué),還使得我領(lǐng)悟了許多自身應(yīng)有的態(tài)度。做事的態(tài)度、處事的方法,還有就是不要放棄。附錄一CLOCK BIT P1.4START BIT P1.5EOC BIT P1.6OE BIT P1.7LED BIT p1.0AD_DATA EQU 30H ORG 0000H SJMP MAIN ORG 000BH AJMP INT_T0 ORG 0030HMAIN: MOV R0,#30H MOV R7,#20HLOOP: MOV R0,#00H INC R0 DJNZ R7,LOOP MOV TMOD,#12H MOV TH0,#245 MOV TL0,#00H SETB EA SETB ET0 SETB TR0MAIN_1: ACALL ADC ACALL CHULI MOV R6,35H MOV R7,36H ACALL H_BCD MOV 38H,R3 MOV 39H,R4 MOV 3AH,R5 ACALL FENLI ACALL DISPLAY ACALL DELAY AJMP MAIN_1INT_T0: CPL CLOCK RETIADC: CLR START SETB START CLR START JNB EOC,$ SETB OE MOV AD_DATA,P3 CLR OE RETDELAY: MOV 40H,#100DELAY_1:ACALL DISPLAY DJNZ 40H,DELAY_1 RETCHULI: MOV A,AD_DATA MOV B,#20 MUL AB MOV 35H,B MOV 36H,A RETH_BCD: CLR A MOV R3,A MOV R4,A MOV R5,A MOV R2,#10HH_BCD_1:MOV A,R7 RLC A MOV R7,A MOV A,R6 RLC A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A MOV A,R3 ADDC A,R3 MOV R3,A DJNZ R2,H_BCD_1 RETFENLI: MOV A,38H ANL A,#0F0H SWAP A MOV 40H,A MOV A,38H ANL A,#0FH MOV 41H,A MOV A,39H ANL A,#0F0H SWAP A MOV 42H,A MOV A,39H ANL A,3FH MOV 43H,A MOV A,3AH ANL A,#0F0H SWAP A MOV 44H,A MOV A,3AH ANL A,#0FH MOV 45H,A RETDISPLAY:MOV DPTR,#TAB1 MOV R0,#42H MOV R7,#3 MOV R2,#02HDSP_1: MOV P2,#01H MOV A,41H MOVC A,A+DPTR ANL A,#7FH MOV P0,A ACALL DS1MS MOV P2,R2 MOV

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論