基于51單片機(jī)的溫濕度分析遙控開關(guān)門窗系統(tǒng)
硬件設(shè)計(jì)
該系統(tǒng)主要分為兩大部分,即信號(hào)采集發(fā)送、信號(hào)接收控制。本系統(tǒng)在信息采集和數(shù)據(jù)串行輸入的時(shí)候,采用了AT89C51單片機(jī)作為核心控制器件,其上集成了4KB的閃速存儲(chǔ)器,128B內(nèi)部RAM,能方便的存儲(chǔ)和處理程序,并且具有一定的驅(qū)動(dòng)負(fù)載能力。
該系統(tǒng)在發(fā)射端主要用AT89C51單片機(jī)進(jìn)行數(shù)據(jù)篩選,首先將串行數(shù)據(jù)中的時(shí)間數(shù)據(jù)通過P3.1發(fā)送到MICRF102的ASK端口,等待延遲5μs,然后傳送濕度數(shù)據(jù),并且通過內(nèi)部時(shí)鐘分析是否達(dá)到一定的時(shí)間,如果到了預(yù)期時(shí)間則停止傳送數(shù)據(jù)。系統(tǒng)的接收端主要有MICRF002和AT89C51單片機(jī)組成,這一部分功能已經(jīng)介紹過。在繼電器和電機(jī)的接連進(jìn)行電動(dòng)機(jī)的反正轉(zhuǎn)設(shè)置中,必須反復(fù)檢測(cè)電動(dòng)機(jī)需要轉(zhuǎn)動(dòng)的時(shí)長(zhǎng),否則電動(dòng)機(jī)會(huì)空轉(zhuǎn)或?qū)е码娮柽^高燒壞電動(dòng)機(jī)。硬件電路如圖5所示。
圖5 硬件系統(tǒng)原理圖
系統(tǒng)軟件設(shè)計(jì)
軟件采用了KeilC51匯編和C混合編程語言,主程序包括:系統(tǒng)初始化、定時(shí)器T0的時(shí)間設(shè)定,接收傳感器SHT11傳出的數(shù)據(jù)信息程序、運(yùn)算處理溫濕度數(shù)據(jù)信息程序、發(fā)送程序、接收程序、中斷調(diào)用程序。為了使系統(tǒng)正常運(yùn)行加強(qiáng)系統(tǒng)的可靠性,在系統(tǒng)的設(shè)計(jì)上可以采取指令冗余、軟件陷阱、容錯(cuò)設(shè)計(jì)、系統(tǒng)中斷設(shè)計(jì)和外部強(qiáng)行中斷設(shè)計(jì),以防在實(shí)際的運(yùn)行中外界的干擾產(chǎn)生誤差和人為重新調(diào)整帶來的誤差,從而保證測(cè)量的準(zhǔn)確性可靠性。系統(tǒng)軟件流程如圖6所示。
圖6 軟件實(shí)現(xiàn)流程圖
評(píng)論