一氧化碳報警器課程設(shè)計_第1頁
一氧化碳報警器課程設(shè)計_第2頁
一氧化碳報警器課程設(shè)計_第3頁
一氧化碳報警器課程設(shè)計_第4頁
一氧化碳報警器課程設(shè)計_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上一氧化碳報警器電路圖:Pcb圖:程序清單:/*頭文件*/#include<reg52.h>#include <intrins.h>/*AD寄存器定義*/sfr ADC_CONTR=0xBC;sfr ADC_DATA=0xBD;sfr ADC_LOW2=0xBE;sfr P1_ADC_EN=0x9D;sfr P4=0xC0;/*宏定義*/#define uint unsigned int#define uchar unsigned char#define ADC_POWER 0x80#define ADC_FLAG 0x10#define ADC

2、_START 0x08#define ADC_SPEEDHH 0x00#define ADC_SPEEDH 0x20#define ADC_SPEEDL 0x40#define ADC_SPEEDLL 0x60#define uint unsigned int#define uchar unsigned char uint ad_value,NH4_value;float AN_value;/*位操作端口定義*/sbit set_key=P14; /“設(shè)置”鍵 K1sbit add_key=P15; /“加”鍵 K2sbit cut_key=P17; / “減”鍵 K3sbit speak=P

3、37; / 蜂鳴器sbit led2=P35; / 繼電器sbit led1=P36; / 繼電器sbit qian_wei=P10;sbit bai_wei=P11;sbit shi_wei=P12;sbit ge_wei=P13;uchar y_data4; /儲存煙霧的數(shù)據(jù)int set_data=200; /報警初始值的設(shè)定 uchar temp4=0,0,0,0;uchar bianma=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar flog4;void delay_1ms(uchar i) uint x,y;for(

4、x=i;x>0;x-)for(y=124;y>0;y-);void display()qian_wei=0;bai_wei=1;shi_wei=1;ge_wei=1;P2=bianmay_data0;delay_1ms(5);qian_wei=1;bai_wei=0;shi_wei=1;ge_wei=1;P2=bianmay_data1;delay_1ms(5);P2=0xff;qian_wei=1;bai_wei=1;shi_wei=0;ge_wei=1;P2=bianmay_data2;delay_1ms(5);P2=0xff;qian_wei=1;bai_wei=1;shi_

5、wei=1;ge_wei=0;P2=bianmay_data3;delay_1ms(5);P2=0xff;void display2()temp0=set_data/1000; temp1=(set_data%1000)/100;temp2=(set_data%100)/10;temp3=set_data%10;qian_wei=0;bai_wei=1;shi_wei=1;ge_wei=1;P2=bianmatemp0;delay_1ms(5);P2=0xff;qian_wei=1;bai_wei=0;shi_wei=1;ge_wei=1;P2=bianmatemp1;delay_1ms(5)

6、;P2=0xff;qian_wei=1;bai_wei=1 ;shi_wei=0;ge_wei=1;P2=bianmatemp2;delay_1ms(5);P2=0xff;qian_wei=1;bai_wei=1;shi_wei=1;ge_wei=0;P2=bianmatemp3;delay_1ms(5);P2=0xff;/* 模數(shù)轉(zhuǎn)換初始換函數(shù)*/void init_ADC()P1_ADC_EN=0x40;ADC_DATA=0;ADC_LOW2=0;ADC_CONTR=ADC_SPEEDLL|ADC_POWER;delay_1ms(20);/* 模數(shù)轉(zhuǎn)換函數(shù)*/uint ADC(uchar

7、num) /參數(shù)num用于指定是哪個模擬量轉(zhuǎn)換 ADC_CONTR=ADC_POWER|ADC_SPEEDLL|num|ADC_START;_nop_();_nop_();_nop_();_nop_();while(!(ADC_CONTR&ADC_FLAG);ADC_CONTR&=ADC_FLAG;ad_value=ADC_DATA*4+ADC_LOW2; /轉(zhuǎn)換的結(jié)果是十位的 高八位放在ADC_DATA中 低兩位放在ADC_LOW2return ad_value; /將轉(zhuǎn)換后的數(shù)字量返回/* 模數(shù)轉(zhuǎn)換后數(shù)據(jù)處理函數(shù)*/void pos_AD()AN_value=ADC(6);

8、 / 裝換氨氣的濃度 把轉(zhuǎn)換后的數(shù)字量結(jié)果賦給AN_valuedelay_1ms(5);/*對轉(zhuǎn)換后的數(shù)字量進(jìn)行矯正*/if(AN_value>800)AN_value=800;NH4_value=(800-AN_value)*0.;y_data0=NH4_value/1000; /將氣體濃度值的個位 十位 百位 千位 分開 用于顯示y_data1=(NH4_value%1000)/100;y_data2=(NH4_value%100)/10;y_data3=NH4_value%10;/* 報警處理函數(shù)*/void baojing() if(set_data<NH4_value)

9、/判斷是否有報警 如果有就進(jìn)入函數(shù) speak=0;led1=0; led2=1; else /沒有報警情況的出現(xiàn) speak=1; led1=1; led2=0; /*主函數(shù)*/void main()init_ADC(); /模數(shù)轉(zhuǎn)換初始化speak=1; led1=1; led2=1;while(1)if(set_key=0) delay_1ms(5);if(set_key=0) flog4=!flog4;while(set_key=0);if(flog4=1) if(add_key=0) delay_1ms(5); if(add_key=0) set_data=set_data+1;wh

10、ile(add_key=0);if(set_data>5000)set_data=5000; if(cut_key=0) delay_1ms(5); if(cut_key=0) set_data=set_data-1;while(cut_key=0);if(set_data<=0)set_data=0; display2(); else pos_AD();display();baojing(); 元器件清單:元件清單U1STC12C5A60S2單片機(jī)K65V繼電器P1MQ傳感器座 +氣體傳感器C1、C230PF電容LS15V有源蜂鳴器Y111.0592M/12M晶振R22-R271

11、K電阻SMG-4w共陽極4位數(shù)碼管R1、R28-R35220歐姆電阻Q1-Q6S8550三極管R1710歐姆電阻K3按鍵“減”R19、R361K歐姆電阻K2按鍵“加”D1綠色發(fā)光二級管K1按鍵“設(shè)置”S1電源開關(guān)焊錫3米使用說明:工作原理:傳感器采集到外界氣體濃度信號后把該信號送到單片機(jī)STC12C5A60S中,單片機(jī)內(nèi)部的十位模數(shù)轉(zhuǎn)換器把氣體的濃度信號轉(zhuǎn)換成數(shù)字信號,然后通過運(yùn)算處理在數(shù)碼管上顯示出來。當(dāng)檢測到的氣體濃度值大于設(shè)置的報警閥值時,系統(tǒng)產(chǎn)生報警,蜂鳴器鳴叫,繼電器吸合。通過外部按鍵可以設(shè)置報警閥值(系統(tǒng)默認(rèn)報警閥值為50ppm)。報警閥值設(shè)置步驟:按下K1“設(shè)置鍵”,系統(tǒng)進(jìn)入報警

12、值設(shè)置菜單,數(shù)碼管顯示當(dāng)前的報警閥值,此時按K2“加”鍵,報警閥值加“1”;按K3“減”鍵,報警閥值減“1”。設(shè)置好報警閥值后按下K1“設(shè)置鍵”,系統(tǒng)退出設(shè)置菜單,進(jìn)入煙霧濃度測量顯示菜單。系統(tǒng)主要器件介紹:單片機(jī):STC12C5A60S2/AD/PWM系列單片機(jī)是宏晶科技生產(chǎn)的單時鐘/機(jī)器周期(1T)的單片機(jī),是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8-12倍。內(nèi)部集成MAX810專用復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換(250K/S),針對電機(jī)控制,強(qiáng)干擾場合。焊接調(diào)試注意事項:1.焊接單片機(jī)時先焊接單片機(jī)座,所用原件都焊接好后,檢查一下電路有沒有短路的地方,確定沒有短路后再把單片機(jī)插到座子上。安裝的方向是缺口對缺口。焊接MQ-7傳感器時同樣。2.焊接電路板時按照先低后高的順序焊接。3.在通電測試之前要仔細(xì)檢查電路中有沒有短路、斷路的地方。4.電路板上標(biāo)號為:“R35、b20、DHT11、R37”無須焊接。標(biāo)號“P10”為單片機(jī)程序下載端口四根排針,散件中單片機(jī)的程序都是下載好的,不修改程序的親們是不需要焊接。如果有的親想自己修改程序增加功能等可以焊接。5.MQ傳感器引腳的標(biāo)號“A,B”是相對的 設(shè)定一邊是“A”,那么另一端就是

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論