freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的智能家居防火防盜報(bào)警系統(tǒng)畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-07-15 17:55 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 E003紅外人體傳感器、煙霧濃度、火災(zāi)溫度,加減濃度和溫度上限值。 按鍵1:代替DYPME003紅外人體傳感器進(jìn)行仿真;按鍵2:火災(zāi)溫度值和煙霧濃度值設(shè)置按鍵,可以設(shè)置火災(zāi)溫度和煙霧濃度的上限值,本設(shè)計(jì)的火災(zāi)溫度上限值為45,煙霧濃度上限值為2;按鍵3:增加煙霧濃度上限值和溫度上限值;按鍵4:減少煙霧濃度上限值和溫度上限值; 按鍵電路 LED燈LED燈一端和地相連,一端和AT89S52的P3口相應(yīng)端口相連。2個(gè)LED燈分別顯示火災(zāi)或入侵報(bào)警和周?chē)闆r正常。 LED顯示電路火災(zāi)溫度和煙霧濃度顯示采用四位七段LED共陽(yáng)數(shù)碼管顯示,: 顯示電路 開(kāi) 始5系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)初始化 非法入侵采集 煙霧采集溫度采集 A/D轉(zhuǎn)換數(shù)據(jù)處理超過(guò)報(bào)警上限?有無(wú)入侵?進(jìn)入子程序報(bào)警 Y N溫度、濃度顯示,報(bào)警電路工作 返 回 軟件流程圖本論文中,軟件解決的主要問(wèn)題是檢測(cè)溫度傳感器、煙霧傳感器和紅外人體傳感器的溫度信號(hào)、煙霧信號(hào)和非法入侵信號(hào),然后對(duì)信號(hào)進(jìn)行顯示和判斷,在超出預(yù)設(shè)報(bào)警值時(shí)候發(fā)出報(bào)警。主程序主要是完成系統(tǒng)初始化、設(shè)置中斷矢量、以及調(diào)用顯示等等。主程序部分如下所示:Main主程序: include include include include unsigned char value=1。 unsigned char count=0。 void main() { TMOD=0x11。 //定時(shí)器T1初始化 TH1=(655351000)/256。 TL1=(655351000)%256。 EA=1。 ET0=1。 ET1=1。 TR0=1。 TR1=1。 Init_DS18B20()。 //溫度芯片初始化 P0=0xff。 //初始化斷口 P1=0xff。 P3=0xff。 while(1) { Scan_Key()。 baojin() value = ReadAdc0832(0);//讀取溫度傳感器的溫度 } }本次設(shè)計(jì)由于采用集成數(shù)字溫度傳感器DS18B20,所以不需A/D轉(zhuǎn)換。本次設(shè)計(jì)中為了演示方便,將溫度傳感器的報(bào)警限設(shè)為45℃,而在實(shí)際當(dāng)中其溫度報(bào)警限為60℃。:開(kāi)始初始化DS18B20寫(xiě)控制字讀取溫度返回 溫度采集流程圖 18b20程序:includesbit DQ = P2^3。void Delay(int num)//延時(shí)函數(shù) 2uS/次 { while(num)。}void Init_DS18B20(void)//初始化ds18b20{ unsigned char x=0。 DQ = 1。 //DQ復(fù)位 Delay(8)。 //稍做延時(shí) DQ = 0。 //單片機(jī)將DQ拉低 Delay(80)。 //精確延時(shí) 大于 480us DQ = 1。 //拉高總線 Delay(14)。//稍作延時(shí)后,若x=0則初始化成功,x=1則初始化失敗 x=DQ。 Delay(20)。}unsigned char ReadOneChar(void)//讀一個(gè)字節(jié){ unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 // 給脈沖信號(hào) dat=1。 DQ = 1。 // 給脈沖信號(hào) if(DQ) dat|=0x80。 Delay(4)。 } return(dat)。}void WriteOneChar(unsigned char dat)//寫(xiě)一個(gè)字節(jié){ unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 DQ = datamp。0x01。 Delay(5)。 DQ = 1。 dat=1。 }}unsigned int ReadTemperature(void)//讀取溫度{ unsigned char a=0。 unsigned char b=0。 unsigned int t=0。 float tt=0。 Init_DS18B20()。 WriteOneChar(0xCC)。 // 跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0x44)。 // 啟動(dòng)溫度轉(zhuǎn)換 Init_DS18B20()。 WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0xBE)。 //讀取溫度寄存器 a=ReadOneChar()。 //讀低8位 b=ReadOneChar()。 //讀高8位 t=b。 t=8。 t=t|a。 tt=t*。 t= tt*10+。 //放大10倍輸出并四舍五入 return(t)。} 煙霧采集處理模塊 1.標(biāo)度變換概念智能儀器檢測(cè)的物理量,一般都是由傳感器轉(zhuǎn)換為電量,在經(jīng)過(guò)數(shù)據(jù)采集系統(tǒng)后得到與被測(cè)量相對(duì)應(yīng)的數(shù)字量。也就是說(shuō),在不同的智能化儀器中,同樣的數(shù)字量所代表的物理量及其值是不同的。通常采用一定的處理技術(shù)將這些數(shù)字量轉(zhuǎn)換為具有不同綱量的相應(yīng)物理量,這一技術(shù)稱(chēng)為標(biāo)度變換2.標(biāo)度變換的原理若被測(cè)量物理量的變換范圍在A0Am(即傳感器的測(cè)量上下限),物理量的實(shí)際測(cè)量值為Ax;而A0對(duì)應(yīng)的數(shù)字量為N0 ,Am 所對(duì)應(yīng)的數(shù)字量為Nm ,Ax 對(duì)應(yīng)的數(shù)字量為Nx。若同時(shí)包括傳感器再內(nèi)的整個(gè)數(shù)據(jù)采集系統(tǒng)是線性的,則標(biāo)度變換公式為:Ax=A0+(AmA0)*(NxN0)/(NmN0) (531)本設(shè)計(jì)中由于采集的是負(fù)載電阻的電壓值,進(jìn)而得出氣敏感測(cè)器的電阻值,從而求得對(duì)應(yīng)的濃度值。為了便于后面的處理,首先采集電壓值并進(jìn)行標(biāo)度變換,則有:Ax=A0+(AmA0)*(NxN0)/(NmN0)=0+(50)*( Nx0)/(2550)= Nx/51 (532) 驅(qū)動(dòng)ADC0809的IN0、IN1進(jìn)行A/D轉(zhuǎn)換,單片機(jī)接收轉(zhuǎn)換好的數(shù)據(jù),存入指定存儲(chǔ)器單元,由中斷服務(wù)程序完成。每次驅(qū)動(dòng)A/D轉(zhuǎn)換后等待外部中斷0,中斷到來(lái)說(shuō)明A/D轉(zhuǎn)換已經(jīng)完成,通過(guò)中斷服務(wù)程序讀取轉(zhuǎn)換得到的數(shù)據(jù)并進(jìn)行標(biāo)度變換。注意:當(dāng)cs由高變低時(shí),選中ADC0832。在時(shí)鐘的上升沿,DI端的數(shù)據(jù)移入ADC0832內(nèi)部的多路地址移位寄存器。在第一個(gè)時(shí)鐘期間,Dl為高,表示啟動(dòng)位,緊接著輸入兩位配置位。當(dāng)輸入啟動(dòng)位和配置位后,選通輸入模擬通道,轉(zhuǎn)換開(kāi)始。轉(zhuǎn)換開(kāi)始后,經(jīng)過(guò)一個(gè)時(shí)鐘周期延遲,以使選定的通道穩(wěn)定。ADC0832接著在第4個(gè)時(shí)鐘下降沿輸出轉(zhuǎn)換數(shù)據(jù)。數(shù)據(jù)輸出時(shí)先輸出最高位(D7DO);輸出完轉(zhuǎn)換結(jié)果后,又以最低位開(kāi)始重新輸出一遍數(shù)據(jù)(D7DO),兩次發(fā)送的最低位共享。當(dāng)片選cS為高時(shí),內(nèi)部所有寄存器清0,輸出變?yōu)楦咦钁B(tài)。如果要再進(jìn)行一次模傲轉(zhuǎn)換,片選cs必須再次從高向低跳變,后面再輸入啟動(dòng)位和配置位。 ADC0832程序: ifndef _ADC0832_H_ define _ADC0832_H_ include include define uchar unsigned char define uint unsigned int extern void _nop_ (void)。 uchar ReadAdc0832( uchar channel )。//ADC0832端口定義 sbit P3_2 = P2^1。 //sck sbit P3_3 = P2^2。 //IO sbit P3_4 = P2^0。 //片選 define ADC0832_SCK_H P3_2 = 1 define ADC0832_SCK_L P3_2 = 0 define ADC0832_DIDO_
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1