多功能智能窗設(shè)計(jì)報(bào)告_第1頁
多功能智能窗設(shè)計(jì)報(bào)告_第2頁
多功能智能窗設(shè)計(jì)報(bào)告_第3頁
多功能智能窗設(shè)計(jì)報(bào)告_第4頁
多功能智能窗設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

參賽隊(duì)號:2021030工程中文名稱:多功能智能窗工程英文名稱:SmartWindow學(xué)校:中國海洋大學(xué)院系:工程學(xué)院自動(dòng)化及測控系指導(dǎo)教師:黎明參賽隊(duì)員:李明揚(yáng)、樊銘遠(yuǎn)、劉賽、黃嘉俊目錄TOC\t"標(biāo)題2,1,樣式1,2"\h摘要 2Abstract 2一、系統(tǒng)功能分析 2二、硬件設(shè)計(jì)方案 21、控制器設(shè)計(jì)方案 22、程序下載與串口通訊電路設(shè)計(jì)方案 23、溫度傳感器電路設(shè)計(jì)方案 24、濕度傳感器電路設(shè)計(jì)方案 25、紅外報(bào)警傳感器設(shè)計(jì)方案 26、角度測量電路設(shè)計(jì)方案 27、雨滴模塊設(shè)計(jì)方案 28、GPRS通信模塊設(shè)計(jì)方案 29、LCD液晶顯示器硬件設(shè)計(jì)方案 210、鍵盤硬件設(shè)計(jì)方案 211、電機(jī)硬件設(shè)計(jì)方案 212、系統(tǒng)供電設(shè)計(jì)方案 2三、軟件設(shè)計(jì)方案 21、整體軟件流程 22、溫度數(shù)據(jù)融合方案 23、自動(dòng)調(diào)節(jié)窗戶角度設(shè)計(jì)方案 24、通訊模塊底層軟件設(shè)計(jì) 25、通訊模塊人機(jī)交互指令設(shè)計(jì) 26、系統(tǒng)輸入的軟件設(shè)計(jì)方案 27、LCD顯示界面設(shè)計(jì)方案 2四、系統(tǒng)測試方案 21、角度標(biāo)定測試 22、角度控制精度測試 23、多個(gè)溫度傳感器融合算法測試 2參考文獻(xiàn): 2附錄1:核心程序 2附錄2:程序清單 2附錄3:設(shè)計(jì)原理圖與PCB 2摘要本工程給出了以STM32單片機(jī)為控制器的多功能智能窗實(shí)現(xiàn)方案。本系統(tǒng)以STM32單片機(jī)為控制器,實(shí)現(xiàn)智能窗根據(jù)環(huán)境自動(dòng)開閉、手機(jī)遠(yuǎn)程遙控開閉、防盜報(bào)警功能。智能窗的開閉由電機(jī)帶動(dòng),關(guān)閉后有自鎖功能;通過手機(jī)與系統(tǒng)的GSM模塊通信,可實(shí)現(xiàn)對智能窗的遠(yuǎn)程控制;實(shí)時(shí)監(jiān)測室內(nèi)外的溫濕度,通過信息融合算法實(shí)現(xiàn)窗戶開度的自動(dòng)控制;窗戶上的主動(dòng)紅外報(bào)警器檢測到入侵信號后會(huì)拉響警鈴,并向用戶發(fā)送報(bào)警短信。關(guān)鍵詞: 智能窗 信息融合 遠(yuǎn)程通訊 AbstractThisprojectgivesapracticalschemeofasmartwindowwhichiscontrolledbyaembeddedcontroller,STM32.Thefunctionofthissystemcontainstheautocontroloftheangleofthewindowintermsoftheenvironment,theremotecontrolofthewindowbymobilephone,andburglaralarm.Theangleofthewindowiscontrolledbyamotor,andthewindowcanbelockedautomaticwhenitclosed;theremotecontrolisrealizedbythecommunicationoftheuserandtheGSMmoduleofthesystem;thetemperatureandhumiditysensorscangetreal-timedatathenthesystemcangetaappropriateanglebyinformationfusion;theinfraredalarmcandetecttheinvaderandthebeeperwillringatthesametime,inthesametime,theuserwillreceivethealarmmessagesendfromthesystem.Keywords: SmartWindow DataFusion RemoteCommunication一、系統(tǒng)功能分析 本系統(tǒng)的目標(biāo)是設(shè)計(jì)一款多功能智能窗,應(yīng)用于未來的智能家居。主要功能如下:1、多傳感器測量:利用多組溫濕度傳感器,將各傳感器的測量結(jié)果進(jìn)展融合,能夠給出較準(zhǔn)確的溫濕度信息;實(shí)時(shí)監(jiān)控室內(nèi)外溫度,并反響給用戶;配置雨滴檢測模塊,能夠監(jiān)測室外下雨情況,并及時(shí)提醒用戶。2、智能運(yùn)動(dòng)控制:使用直流電機(jī)驅(qū)動(dòng)的電動(dòng)推桿實(shí)現(xiàn)智能窗的開閉,并設(shè)置自動(dòng)調(diào)節(jié)功能,當(dāng)內(nèi)外溫濕度變化時(shí)自動(dòng)調(diào)節(jié)窗戶的開度。3、人機(jī)交互功能:配置了LCD顯示器和4*4鍵盤,能夠?qū)崟r(shí)顯示室內(nèi)外溫濕度信息,可用鍵盤對各功能進(jìn)展設(shè)置,并修改開機(jī)密碼、手機(jī)號等用戶信息;并可用GPRS模塊與用戶進(jìn)展遠(yuǎn)程通訊完成上述功能。4、遠(yuǎn)程通訊功能:配置了GPRS模塊與用戶通訊,使用戶可以用手機(jī)命令的形式控制智能窗任意角度的開閉;并可對系統(tǒng)功能和用戶信息進(jìn)展設(shè)置。5、防盜報(bào)警功能:配置對射式紅外傳感器作為防盜報(bào)警器,在報(bào)警開啟情況下,檢測到外界入侵會(huì)及時(shí)發(fā)送短信提醒用戶。6、數(shù)據(jù)存儲功能:使用MCU內(nèi)置的FLASH,實(shí)現(xiàn)用戶數(shù)據(jù)和系統(tǒng)配置信息的在線更新和掉電存儲,防止用戶信息喪失。二、硬件設(shè)計(jì)方案硬件整體框圖:圖2-SEQ圖表\*ARABIC\s11硬件整體框圖1、控制器設(shè)計(jì)方案本設(shè)計(jì)的控制器采用STM32單片機(jī)系列的單片機(jī)STM32F103RBT6。以下是它的局部特性:采用ARMCortex-M3內(nèi)核,擁有最高72MHz的工作頻率,對于設(shè)計(jì)所需的較多功能能夠及時(shí)的處理。內(nèi)核中的Systick定時(shí)器可作為準(zhǔn)確延時(shí)的工具,便于傳感器控制時(shí)序的處理。配置128KB的閃存程序存儲器,足夠容納復(fù)雜的程序設(shè)計(jì)代碼,并可以利用剩余的flash空間存放用戶數(shù)據(jù)和系統(tǒng)配置信息。內(nèi)置兩個(gè)12位AD,轉(zhuǎn)換時(shí)間1微秒,并有多達(dá)16個(gè)輸入通道,可用于實(shí)現(xiàn)窗戶角度信息的采集。配置三個(gè)通用定時(shí)器TIM2、TIM3、TIM4,一個(gè)高級控制定時(shí)器TIM1,每個(gè)定時(shí)器又有四個(gè)可分別控制的通道,方便靈活,功能強(qiáng)大??蓪?shí)現(xiàn)定時(shí)中斷,PWM脈寬調(diào)制,正交編碼輸入等功能。配置三個(gè)USART外設(shè),可方便的與計(jì)算機(jī)進(jìn)展通訊,便于系統(tǒng)的測試;同時(shí)方便與GPRS芯片MC37i進(jìn)展通訊,實(shí)現(xiàn)短信收發(fā)的控制。配置多個(gè)具有復(fù)用功能的I/O端口,速度可達(dá)50MHz,所有端口都可以映像到16個(gè)外部中斷,幾乎所有端口都可以容忍5V信號。復(fù)位電路設(shè)計(jì)圖2-SEQ圖表\*ARABIC\s12復(fù)位電路原理圖外部晶振電路圖2-2外部晶振電路圖電源濾波電路圖2-3電源濾波電路圖除了在VDDA和VSSA之間設(shè)置濾波電路之外,還在單片機(jī)所有的四個(gè)VSS和VDD之間都放置一個(gè)0.1uF的濾波電容。Boot0和Boot1電路Boot0和Boot1管腳在芯片復(fù)位時(shí)的電平狀態(tài)決定了芯片復(fù)位后的啟動(dòng)方式。BOOT1=XBOOT0=0從用戶閃存啟動(dòng),這是正常的工作模式BOOT1=0BOOT0=1從系統(tǒng)存儲器啟動(dòng),這種模式啟動(dòng)的程序功能由廠家設(shè)置。BOOT1=1BOOT0=1從內(nèi)置SRAM啟動(dòng),這種模式可以用于調(diào)試。本設(shè)計(jì)為了可以采用JTAG和ISP兩種方式下載程序,在BOOT0處設(shè)置了一個(gè)選擇開關(guān),進(jìn)展ISP下載時(shí)要將BOOT0管腳拉高,下載完后再拉低即可正常運(yùn)行。圖2-4芯片啟動(dòng)方式電路圖2、程序下載與串口通訊電路設(shè)計(jì)方案本設(shè)計(jì)采用可以采用兩種方式進(jìn)展程序下載:ISP方式和JTAG方式。2.1ISP下載與串口通訊電路設(shè)計(jì)本設(shè)計(jì)采用Prolific公司生產(chǎn)的PL2303芯片進(jìn)展USB和串口信號的轉(zhuǎn)換,它具有高度集成的特點(diǎn),提供了一個(gè)在USB接口跟RS232串口之間通信的的解決方案。在使用時(shí),作為RS232/USB雙向轉(zhuǎn)換器,一方面從RS232外設(shè)中接收數(shù)據(jù)并將其轉(zhuǎn)換為USB數(shù)據(jù)格式傳發(fā)送給外設(shè);另一方面從主機(jī)接收USB數(shù)據(jù)并將其轉(zhuǎn)換為RS232信息流送回主機(jī)。開發(fā)者無需考慮固件設(shè)計(jì),因而對嵌入式設(shè)計(jì)者是透明的,便于實(shí)現(xiàn)了單片機(jī)串口和計(jì)算機(jī)USB口的通訊和ISP下載。以下是PL2303外圍電路設(shè)計(jì):為了防止系統(tǒng)在使用外部電源供電時(shí)內(nèi)部5V電壓與USB接口的5V電壓輸入沖突,在USB電壓輸入端接500mA保險(xiǎn)絲,并串接肖特基二極管1N5819,起到保護(hù)作用。圖2-5PL2303外圍電路圖2.2JTAG下載電路設(shè)計(jì)本設(shè)計(jì)使用20針的JTAG接口作為與外界的連接端口。JTAG擁有一個(gè)雙向串行端口,可以通過JTAG將需要運(yùn)行或者調(diào)試的程序下載到單片機(jī)的FLASH內(nèi),控制STM32F103的運(yùn)行,讀取片內(nèi)存放器值,以及刷新存儲器的內(nèi)容,方便了程序的編寫和維護(hù)。標(biāo)準(zhǔn)JTAG接口是4線;TD0、TD1、TMS和TCLK,分別為數(shù)據(jù)輸出、數(shù)據(jù)輸入、模式選擇和時(shí)鐘。電路中在JTAG的電壓輸入端串接肖特基二極管1N5819,在電路板采用JTAG供電時(shí)到達(dá)保護(hù)電路的目的。圖2-6JTAG下載電路圖3、溫度傳感器電路設(shè)計(jì)方案本設(shè)計(jì)采用DS18B20作為溫度傳感器。DS18B20溫度傳感器是一線式數(shù)字溫度傳感器,溫度測量范圍是-55℃~+125℃℃,精度較高;電源供電范圍為3V~5.5V。18B20的最大特點(diǎn)是支持單總線掛接多個(gè)傳感器,極大地節(jié)約了硬件電路,便于多傳感器網(wǎng)絡(luò)的搭建。因?yàn)槊總€(gè)18B20有唯一的系列號,寫在傳感器的ROM內(nèi),可以通過讀取ROM命令和搜索ROM命令識別總線上的器件,分別讀取他們的信息。以下是18B20的電路接口圖,在電源與地直接連入0.1uF電容起濾波作用。圖2-7DS18B20電路圖4、濕度傳感器電路設(shè)計(jì)方案本設(shè)計(jì)中濕度傳感器選擇了DHT11。DHT11溫濕度傳感器是一款濕溫度一體化的數(shù)字傳感器,其濕度測量范圍:20-90%RH,濕度分辨率:1%RH,精度較高,能較準(zhǔn)確的測量室內(nèi)的濕度。同時(shí)HDT11硬件設(shè)計(jì)簡單,只需單片機(jī)的一個(gè)端口就可讀取其數(shù)據(jù),非常方便。以下是DHT11的硬件電路圖:圖2-8DHT11原理圖5、紅外報(bào)警傳感器設(shè)計(jì)方案 紅外報(bào)警電路采用對射式紅外線檢測裝置,通過檢測紅外線是否被遮擋判斷是否有異常。紅外發(fā)射頭選用OSE-1L7,其外形和發(fā)光二極管LED相似,發(fā)射波長940納米左右的紅外線,管壓降約1.4V,工作電流一般小于20mA,控制方便。紅外線接收管采用IRM8601S,它是一個(gè)一體式紅外線接收傳感器,接收頭內(nèi)部集成自動(dòng)增益控制電路、帶通濾波電路、解碼電路及輸出驅(qū)動(dòng)電路。它共有三個(gè)管腳,電源、地和信號輸出,其中心接收頻率為38KHz,當(dāng)接收到38KHz的紅外光信號時(shí),會(huì)輸出一個(gè)10毫秒的低電平脈沖信號,當(dāng)沒有接收到38KHz的紅外光信號時(shí),輸出端為高電平。以下是紅外報(bào)警電路的圖:圖2-9紅外發(fā)射原理圖圖2-SEQ圖表\*ARABIC\s130紅外接收原理圖圖中LED4為紅外發(fā)射管,R21為限流電阻,R17為可調(diào)的限流電阻,用來調(diào)整紅外發(fā)射管的發(fā)射強(qiáng)度,發(fā)射管的負(fù)極直接接到單片機(jī)的PWM輸出管腳,即可發(fā)射一定頻率的紅外光線。6、角度測量電路設(shè)計(jì)方案STM32F103RBT6芯片內(nèi)置了12位AD轉(zhuǎn)換器,因此為了節(jié)約本錢,同時(shí)考慮到精度問題,本設(shè)計(jì)的對窗戶開度的角度測量采用旋轉(zhuǎn)電位器作為傳感器,將電位器兩端電壓經(jīng)過運(yùn)算得到窗戶的角度。設(shè)計(jì)電路圖如下:圖2-SEQ圖表\*ARABIC\s141電位器電路圖10K電阻為分壓電阻,電位器阻值為47K,其中PC0管腳為復(fù)用管腳,此時(shí)用作單片機(jī)AD1的10號采樣通道。7、雨滴模塊設(shè)計(jì)方案雨滴模塊的原理是利用水的導(dǎo)電性,使用兩個(gè)柵狀的電極作為傳感器,當(dāng)有雨滴下時(shí)兩電極之間的電阻會(huì)變小。將10K可調(diào)限流電阻與電極串接到3.3V電源上,同時(shí)使用電壓比擬器TDC393獲取電極兩端電壓,并輸出電壓比擬信號。TDC393是由兩個(gè)獨(dú)立的、高精度電壓比擬器組成的集成電路,失調(diào)電壓低,最大為2.0mV。它專為獲得寬電壓、單電源供電而設(shè)計(jì),電源電壓2.0V到36V;而且無論電源電壓大小,電源消耗都很低;同時(shí)TDC393被設(shè)計(jì)成能直接連接TTL和CMOS,所以與單片機(jī)接口方便。電路圖如下:圖2-SEQ圖表\*ARABIC\s152雨滴模塊原理圖其中,R1為可調(diào)電阻,通過調(diào)整R1可調(diào)整雨滴模塊靈敏度;K1為雨滴模塊探頭的接口,以下是電極圖片。圖2-SEQ圖表\*ARABIC\s163雨滴模塊實(shí)物圖8、GPRS通信模塊設(shè)計(jì)方案8.1MC37i功能簡介本設(shè)計(jì)采用GPRS模塊MC37i進(jìn)展短信收發(fā)。MC37i模塊是一款支持中文短信息的工業(yè)級的新版GPRS模塊,工作在GSM900/1800Hmz雙頻段,電源范圍為直流3.3~4.8V,休眠狀態(tài)電流消耗為3.5mA,空閑狀態(tài)為25mA,發(fā)射狀態(tài)為300mA(平均),峰值為2.5A;可傳輸語音和數(shù)據(jù)信號,通過接口連接器和天線連接器分別連接SIM卡讀卡器和天線。SIM電壓為3V,MC37i通過AT命令可雙向傳輸指令和數(shù)據(jù),可選波特率為300b/s~230kb/s。它支持Text和PDU格式的SMS(ShortMessageService,短消息),可通過AT命令或關(guān)斷信號實(shí)現(xiàn)重啟和故障恢復(fù),在很多應(yīng)用領(lǐng)域中都有著廣泛的應(yīng)用。GPRS模塊通過串口使用AT指令與外界進(jìn)展通訊,模塊可以與電腦通過串口相連,也可以用單片機(jī)來進(jìn)展控制。8.2MC37i硬件設(shè)計(jì):〔1〕MC37i電路設(shè)計(jì)方案MC37i模塊有50個(gè)引腳,通過一個(gè)ZIF(ZeroInsertionForce,零阻力插座)連接器引出。這40個(gè)引腳可以劃分為5類,即電源、數(shù)據(jù)輸入/輸出、SIM卡、音頻接口和控制。TC35i的第21~25引腳是正電源輸入腳通常推薦值4.2V,第26~30引腳是電源地。10腳是啟動(dòng)腳IGT,系統(tǒng)加電后為使MC37i進(jìn)入工作狀態(tài),必須給IGT加一個(gè)大于100ms的低脈沖,電平下降持續(xù)時(shí)間不可超過1ms。12~19和34~37為數(shù)據(jù)輸入/輸出,分別為DCD0、CTS1、CTS0、RTS1、RTS0、DTR0、RTS0、DSR0、RING0和TXD0、RXD0、TXD1、RXD1。MC37i模塊的數(shù)據(jù)輸入/輸出接口是一個(gè)串行異步收發(fā)器。它有固定的參數(shù):8位數(shù)據(jù)位和1位停頓位,無校驗(yàn)位,波特率在300bps~230kbps之間可選,默認(rèn)57600,支持標(biāo)準(zhǔn)的AT命令集。其中34腳TXD0、35腳RXD0為TTL的串口通訊腳,可以方便和單片機(jī)進(jìn)展通訊。設(shè)計(jì)電路圖如下:圖2-SEQ圖表\*ARABIC\s174MC37i電路圖〔2〕SIM卡電路設(shè)計(jì)方案MC37i使用外接式SIM卡,45~50為SIM卡引腳,SIM卡上的CCRST、CCIO、CCCLK、CCVCC和CCGND通過SIM卡閱讀器與MC37i的同名端直接相連,如下列圖:圖2-SEQ圖表\*ARABIC\s185SIM卡電路圖9、LCD液晶顯示器硬件設(shè)計(jì)方案為了更好的實(shí)現(xiàn)人機(jī)交互,使用戶方便的對智能窗進(jìn)展操作,并且保證操作簡潔直觀,本錢低廉,本設(shè)計(jì)采用LCD液晶顯示器實(shí)現(xiàn)所有的顯示功能。該模塊的主要功能是顯示操作界面,對整個(gè)智能窗進(jìn)展控制。顯示實(shí)時(shí)的室內(nèi)、室外的溫度、濕度和窗戶的開關(guān)狀態(tài),本模塊結(jié)合按鍵模塊還可以進(jìn)展多項(xiàng)設(shè)置,通信用的手機(jī)號設(shè)置、密碼設(shè)置、報(bào)警設(shè)置、控制窗戶的開關(guān)。本設(shè)計(jì)中的LCD模塊采用12864A-1漢字圖形點(diǎn)陣液晶顯示模塊。該模塊可顯示漢字及圖形,內(nèi)置8192個(gè)中文漢字〔16X16點(diǎn)陣〕、128個(gè)字符〔8X16點(diǎn)陣〕及64X256點(diǎn)陣顯示RAM〔GDRAM〕。主要技術(shù)參數(shù)和顯示特性:顯示內(nèi)容:128列×64行顯示角度:6:00鐘直視顯示顏色:黃綠LCD類型:STN與MCU接口:8位或4位并行/3位串行配置LED背光電源:VDD3.3V~+5V(內(nèi)置升壓電路,無需負(fù)壓);該模塊與單片機(jī)芯片MCU接口簡單,可以是8位或4位并行或者3位串行。該模塊的程序編寫也十分方便。本設(shè)計(jì)中為節(jié)約單片機(jī)GPIO端口,采用3位串行連接方式,LCD液晶顯示模塊的電路原理圖如下:圖2-SEQ圖表\*ARABIC\s196LCD電路圖10、鍵盤硬件設(shè)計(jì)方案本設(shè)計(jì)為滿足多項(xiàng)設(shè)置、輸入的需要,采用4*4矩陣鍵盤電路。除了滿足必要的數(shù)字輸入按鍵,還結(jié)合LCD顯示器,根據(jù)不同的顯示界面,有“設(shè)定〞、“確定〞、“退出〞等按鍵。將4*4鍵盤通過10K的排阻之后,與單片機(jī)的GPIO接口相連。由單片機(jī)的GPIO接口進(jìn)展鍵值讀取。按鍵模塊的電路原理圖如下:圖2-SEQ圖表\*ARABIC\s1107按鍵原理圖11、電機(jī)硬件設(shè)計(jì)方案本設(shè)計(jì)選用的TG-300B型電動(dòng)推桿來帶動(dòng)窗戶的開閉。它采用永磁直流電機(jī)驅(qū)動(dòng),行程100mm,額定電壓12V,內(nèi)置限位開關(guān),到大極限位置后自動(dòng)停頓;低噪音設(shè)計(jì),噪音等級低于42dB,可以在室內(nèi)使用。由于電動(dòng)推桿的運(yùn)動(dòng)速度較慢,對控制的實(shí)時(shí)性要求不高,所以采用繼電器控制它的正反轉(zhuǎn)。換向電路的原理如下列圖:圖2-SEQ圖表\*ARABIC\s1118電機(jī)模塊電路圖電機(jī)正轉(zhuǎn)時(shí)Motor_ON閉合接入12V電壓,Motor_ON另一端接Motor_A,Motor_A接Motor_C〔即電機(jī)正極〕,Motor_D〔電機(jī)負(fù)極〕接GND;構(gòu)成一條完整通路。電機(jī)反轉(zhuǎn)時(shí)Motor_ON閉合接入12V電壓,Motor_ON另一端接Motor_B,Motor_B接Motor_D〔即電機(jī)負(fù)極〕,Motor_C〔電機(jī)正極〕接GND;構(gòu)成一條完整通路。12、系統(tǒng)供電設(shè)計(jì)方案本設(shè)計(jì)采用12V、3A的電源適配器作為供電電源,進(jìn)入系統(tǒng)后分為兩路,一路直接給電動(dòng)推桿供電,另一路為控制板供電。控制板上有三種電壓需求,3.3V、5V和3.7V。其中3.3V電源主要為單片機(jī)和PL2303芯片供電,5V主要為液晶顯示器、繼電器供電,3.7V為MC37i供電。本設(shè)計(jì)采用LM2576-adj給MC37i提供3.7V電壓。LM2576系列的穩(wěn)壓器是單片集成電路,能夠提供降壓開關(guān)穩(wěn)壓器的各種功能,能驅(qū)動(dòng)3A的負(fù)載,有優(yōu)異的線性和負(fù)載調(diào)整能力,輸入電壓可至40V,高壓型可至60V;而且具有TTL關(guān)斷能力,可工作在低功耗待機(jī)模式。其中LM2576-adj是可調(diào)節(jié)輸出電壓的穩(wěn)壓芯片,其輸出電壓與反響端配置的電阻比值相關(guān),電路原理圖如下:圖2-SEQ圖表\*ARABIC\s112本設(shè)計(jì)采用LM2576-5為控制板提供5V電壓,電路原理圖如下:圖2-2012V-5V電壓轉(zhuǎn)換電路圖本設(shè)計(jì)采用SOT-223封裝的AS1117-3.3為控制板提供3.3V電壓。AS1117可提供最大800mA的輸出電流,足夠?yàn)閱纹瑱C(jī)及其他外設(shè)提供電流,最小壓差1.2V,保證了供電的穩(wěn)定性,并具有良好的線性輸出能力。設(shè)計(jì)電路原理圖如下:圖2-2SEQ圖表\*ARABIC\s11312.3供電切換與保護(hù)設(shè)置〔1〕本設(shè)計(jì)在12V電壓進(jìn)入控制板處放置30V、3A的自恢復(fù)保險(xiǎn)絲,防止內(nèi)部短路時(shí)燒壞電路。圖2-22電源保護(hù)電路圖〔2〕本設(shè)計(jì)設(shè)置了一個(gè)5V電源的供電切換開關(guān),可以選擇板內(nèi)的5V電壓由LM2576-5提供或者由USB電線提供。這樣在不使用MC37i進(jìn)展調(diào)試時(shí)可以減少接線〔免去外接12V電源〕,同時(shí)在USB電纜和外部電源同時(shí)供電時(shí)不會(huì)造成沖突。下列圖中U-5V是LM2576-5的輸出,P-5V是USB電纜提供的5V電壓。圖2-235V電源切換開關(guān)電路圖〔3〕本設(shè)計(jì)在3.3V和3.7V電壓進(jìn)入電路之前均設(shè)置了開關(guān),方便對硬件電路進(jìn)展測試,同時(shí)可以起到一定保護(hù)作用。圖三、軟件設(shè)計(jì)方案1、整體軟件流程本設(shè)計(jì)軟件實(shí)現(xiàn)方案采取主函數(shù)循環(huán)掃描配合中斷的形式。1.1主函數(shù)內(nèi)的循環(huán)主函數(shù)內(nèi)的循環(huán)執(zhí)行短信處理和鍵盤信息處理的功能,當(dāng)讀短信息的標(biāo)識在短信接收的中斷處理函數(shù)中被置位后,主函數(shù)開場處理短消息命令;當(dāng)按鍵標(biāo)識在定時(shí)器的中斷處理函數(shù)中被置位后,執(zhí)行按鍵處理函數(shù)。中斷處理函數(shù)分為定時(shí)器中斷和串口中斷。定時(shí)器中斷中進(jìn)展按鍵掃描和紅外報(bào)警的掃描,并檢測室外的下雨情況。當(dāng)紅外報(bào)警標(biāo)識被用戶設(shè)置為1后,開場在中斷里進(jìn)展紅外報(bào)警掃描。串口中斷中主要進(jìn)展與MC37i模塊的通訊,接收用戶發(fā)送來的消息并進(jìn)展解析。2、溫度數(shù)據(jù)融合方案2.1多個(gè)溫度傳感器信息的獲取〔1〕18B20溫度傳感器的指令介紹DS18B20采用一線通信接口。因?yàn)橐痪€通信接口,必須先完成ROM設(shè)定,否則記憶和控制功能將無法使用。一旦總線檢測到附屬器件的存在,它便可以發(fā)出器件ROM操作指令,所有ROM操作指令均為8位長度,主要提供以下功能命令:

1

〕讀ROM〔指令碼0X33H〕:當(dāng)總線上只有一個(gè)節(jié)點(diǎn)〔器件〕時(shí),讀此節(jié)點(diǎn)的64位序列號。如果總線上存在多于一個(gè)的節(jié)點(diǎn),則此指令不能使用。

2

〕ROM匹配〔指令碼0X55H〕:此命令后跟64位的ROM序列號,總線上只有與此序列號一樣的DS18B20才會(huì)做出反響;該指令用于選中某個(gè)DS18B20,然后對該DS18B20進(jìn)展讀寫操作。

3

〕搜索ROM〔指令碼0XF0H〕:

用于確定接在總線上DS18B20的個(gè)數(shù)和識別所有的64位ROM序列號。當(dāng)系統(tǒng)開場工作,總線主機(jī)可能不知道總線上的器件個(gè)數(shù)或者不知道其64位ROM序列號,搜索命令用于識別所有連接于總線上的64位ROM序列號。

4

〕跳過ROM〔指令碼0XCCH〕:

此指令只適合于總線上只有一個(gè)節(jié)點(diǎn);該命令通過允許總線主機(jī)不提供64位ROM序列號而直接訪問RAM,以節(jié)省操作時(shí)間。

5

〕報(bào)警檢查〔指令碼0XECH〕:此指令與搜索ROM指令根本一樣,差異在于只有溫度超過設(shè)定的上限或者下限值的DS18B20才會(huì)作出響應(yīng)。只要DS18B20一上電,告警條件就保持在設(shè)置狀態(tài),直到另一次溫度測量顯示出非告警值,或者改變TH或TL的設(shè)置使得測量值再一次位于允許的范圍之內(nèi)。儲存在EEPROM內(nèi)的觸發(fā)器用于告警。DS18B20共有六條RAM命令:

1)溫度轉(zhuǎn)換〔指令碼0X44H〕:啟動(dòng)DS18B20進(jìn)展溫度轉(zhuǎn)換,結(jié)果存入內(nèi)部RAM。

2)讀暫存器〔指令碼0XBEH〕:讀暫存器9個(gè)字節(jié)內(nèi)容,此指令從RAM的第1個(gè)字節(jié)〔字節(jié)0〕開場讀取,直到九個(gè)字節(jié)〔字節(jié)8,CRC值〕被讀出為止。如果不需要讀出所有字節(jié)的內(nèi)容,則主機(jī)可以在任何時(shí)候發(fā)出復(fù)位信號以中止讀操作。

3)寫暫存器〔指令碼0X4EH〕:

將上下限溫度報(bào)警值和配置數(shù)據(jù)寫入到RAM的2、3、4字節(jié),此命令后跟需要些入到這三個(gè)字節(jié)的數(shù)據(jù)。

4)復(fù)制暫存器〔指令碼0X48H〕:把暫存器的2、3、4字節(jié)復(fù)制到EEPROM中,用以掉電保存。

5)重新調(diào)E2RAM〔指令碼0XB8H〕:把EEROM中的溫度上下限及配置字節(jié)恢復(fù)到RAM的2、3、4字節(jié),用以上電后恢復(fù)以前保存的報(bào)警值及配置字節(jié)。

6)讀電源供電方式〔指令碼0XB4H〕:啟動(dòng)DS18B20發(fā)送電源供電方式的信號給主CPU。對于在此命令送至DS18B20后所發(fā)出的第一次讀出數(shù)據(jù)的時(shí)間片,器件都會(huì)給出其電源方式的信號?!?〞表示寄生電源供電?!?〞表示外部電源供電?!玻病匙x取多個(gè)18B20溫度傳感器溫度程序設(shè)計(jì)本設(shè)計(jì)中讀取18B20的數(shù)據(jù)使用了讀ROM、ROM匹配指令以及溫度轉(zhuǎn)換和讀暫存器指令。前期測試階段使用讀ROM指令確定12個(gè)傳感器的ROM值,并與傳感器的安放位置一一對應(yīng)。以下是測試18B20溫度傳感器ROM的程序流程圖:圖3-SEQ圖表\*ARABIC\s114測試18B20溫度傳感器ROM流程圖測試完所有器件的序列號之后,最終的應(yīng)用版本中通過MatchROM指令得到每個(gè)器件采樣的溫度值。程序流程圖如下:圖3-218B20溫度值讀取流程圖2.2分布圖法簡介本設(shè)計(jì)采用基于分布圖法的溫度傳感器融合算法。溫度測量模塊18B20支持單總線掛接多個(gè)傳感器,極大地提高了單片機(jī)管腳利用率,本設(shè)計(jì)中需要對室內(nèi)外溫度進(jìn)展測量,考慮到環(huán)境溫度較復(fù)雜,為了提高測量精度,采用多個(gè)傳感器構(gòu)建傳感器網(wǎng)絡(luò),使用分布圖法綜合各個(gè)傳感器的測量結(jié)果,以排除疏忽誤差,提高測量結(jié)果。 分布圖法是一種新型的數(shù)據(jù)處理算法,其算法如下:〔1〕首先對N個(gè)測量結(jié)果從小到大進(jìn)展排序,得到測量序列:其中為下極限,為上極限?!?〕再定義中位值為:上四分位數(shù)Fu為區(qū)間]的中位數(shù),下四分位數(shù)Fu為區(qū)間的中位數(shù)。四份位離散度為〔3〕認(rèn)定與中位數(shù)的距離大于的數(shù)據(jù)為離異數(shù)據(jù),即無效數(shù)據(jù)的判斷區(qū)間為式中的為常數(shù),其大小取決于系統(tǒng)測量精度,通常取1、2等值。2.3分布圖法在本設(shè)計(jì)中的應(yīng)用在實(shí)際編程實(shí)現(xiàn)分布圖法時(shí),由于該算法不需要復(fù)雜的數(shù)據(jù)構(gòu)造,同時(shí)還具有運(yùn)算量小,計(jì)算機(jī)編程容易等優(yōu)點(diǎn),不僅可以用于校準(zhǔn)測試數(shù)據(jù)的后期處理,還可以將其應(yīng)用于測量的實(shí)時(shí)數(shù)據(jù)處理和控制中。本設(shè)計(jì)中考慮到本錢問題,在室內(nèi)外分別采用6個(gè)溫度傳感器18B20進(jìn)展溫度測量,并將測得的數(shù)據(jù)進(jìn)展處理,以下是溫度采集和數(shù)據(jù)處理的流程圖。為減少計(jì)算量,分布圖法處理后直接將每組數(shù)據(jù)取平均值,分別得到最終的室內(nèi)外溫度。圖3-3溫度采集、處理流程圖3、自動(dòng)調(diào)節(jié)窗戶角度設(shè)計(jì)方案本設(shè)計(jì)中參加了根據(jù)室內(nèi)外溫濕度自動(dòng)調(diào)節(jié)窗戶開度的功能,以到達(dá)為用戶提供舒適環(huán)境的目的。首先由用戶設(shè)定一定的溫濕度閾值,當(dāng)室內(nèi)溫濕度偏離設(shè)定值一定范圍時(shí),根據(jù)室內(nèi)外溫濕度自動(dòng)調(diào)節(jié)窗戶開度,通過通風(fēng)來改變室內(nèi)環(huán)境。具體算法如下:首先利用以下條件求出Angle_1,Angle_2室內(nèi)溫度>理想溫度>室外溫度Angle_1=〔室內(nèi)溫度-室外溫度〕*權(quán)重1室內(nèi)溫度>室外溫度>理想溫度Angle_1=100%理想溫度>室內(nèi)溫度>室外溫度Angle_1=0室外溫度>理想溫度>室內(nèi)溫度Angle_1=〔室外溫度-室內(nèi)溫度〕*權(quán)重1室外溫度>室內(nèi)溫度>理想溫度Angle_1=0理想溫度>室外溫度>室內(nèi)溫度Angle_1=100%室內(nèi)濕度>理想濕度>室外濕度Angle_2=〔室內(nèi)濕度-室外濕度〕*權(quán)重2室內(nèi)濕度>室外濕度>理想濕度Angle_2=100%理想濕度>室內(nèi)濕度>室外濕度Angle_2=0室外濕度>理想濕度>室內(nèi)濕度Angle_2=〔室外濕度-室內(nèi)濕度〕*權(quán)重2室外濕度>室內(nèi)濕度>理想濕度Angle_2=0理想濕度>室外濕度>室內(nèi)濕度Angle_2=100%最終確定的角度大小Angle=〔Angle_1+Angle_2〕/2;假設(shè)Angle<0,則Angle=0;然后驅(qū)動(dòng)電機(jī)調(diào)節(jié)窗戶角度即可。4、通訊模塊底層軟件設(shè)計(jì)4.1MC37i模塊的啟動(dòng)。〔1〕MC37i的啟動(dòng)方式共有四種:硬件上通過IGT(點(diǎn)火腳)啟動(dòng):啟動(dòng)普通模式軟件上通過AT+CFUN指令來重啟:啟動(dòng)普通模式和報(bào)警模式硬件上通過VCHARGE腳啟動(dòng):啟動(dòng)充電模式通過RTC中斷從電源關(guān)閉模式中喚醒:啟動(dòng)報(bào)警模式〔2〕我們采用第一種啟動(dòng)方式。使用IGT腳來啟動(dòng)MC37i需要在BATT+到達(dá)3.3V后將IGT(點(diǎn)火腳)接地至少100ms。這可以使用一個(gè)OC門(opendrain/collector)來完成以防止電流灌入此引腳。因此,本設(shè)計(jì)中將單片機(jī)與IGT連接的引腳PB1管腳設(shè)置為開漏輸出模式,即輸出低電平時(shí)管腳接地,拉低IGT引腳;輸出高電平時(shí)管腳處于懸空,電壓被IGT拉高,防止損壞單片機(jī)。CTS高電平說明模塊已經(jīng)準(zhǔn)備作為主機(jī)接收數(shù)據(jù)了。另外如果設(shè)置了波特率修正(AT+IPR!=0),模塊將會(huì)發(fā)送〞^SYSSTART〞(主動(dòng)提供結(jié)果碼)以提示主機(jī)程序:可以發(fā)送AT指令到模塊了。在主動(dòng)提供結(jié)果碼輸出之前為了改變SIM卡將會(huì)花費(fèi)2秒鐘,尤其是SIM腳請求在SIM卡上被失能。請注意,如果自動(dòng)波特率(AT+IPR=0)使能,將不會(huì)有“^SYSSTART〞(主動(dòng)提供結(jié)果碼)被發(fā)送。以下是MC37i通過IGT方式啟動(dòng)時(shí)的時(shí)序圖。其中Reset是當(dāng)模塊處理器上電后內(nèi)部的一個(gè)置高的信號。圖3-4MC37i啟動(dòng)時(shí)序圖4.2MC37i指令簡介啟動(dòng)后,為實(shí)現(xiàn)通信功能,通過單片機(jī)串口與MC37i連接,并用AT指令與MC37i模塊通信。AT指令可以小寫也可以大寫,但在每次完畢一條AT指令都需要以<CR>完畢。每發(fā)一條AT指令,正常情況下都會(huì)以一條反響語句完畢,格式為“<CR><LF><response><CR><LF>〞。本設(shè)計(jì)中通信模塊軟件設(shè)計(jì)中用到的指令如下:查看當(dāng)前設(shè)備波特率:AT+IPR?修改當(dāng)前設(shè)備波特率:AT+IPR=〔固定修改為9600〕保存當(dāng)前修改參數(shù):AT&W查看當(dāng)前設(shè)備接收信號:AT+CSQ回車撥號命令A(yù)TD撥打號碼掛機(jī)命令A(yù)TH掛機(jī)發(fā)送短消息測試:AT+CMGF=1回車AT+CMGS=〔手機(jī)號碼〕回車輸入內(nèi)容快捷鍵“CTRLZ〞發(fā)送查看短信中心:AT+CSCA回車修改短信中心:AT+CSCA=〔短信中心號碼〕回車顯示手機(jī)卡是否安裝正?!诧@示手機(jī)SIM卡號〕:AT+CCID新消息提示:AT+CNMI選擇當(dāng)有新的短消息來時(shí)系統(tǒng)提示方式讀短消息:AT+CMGR讀取短消息列短消息:AT+CMGL將存儲的短消息列表發(fā)送短消息:AT+CMGS發(fā)送短消息寫短消息:AT+CMGW寫短消息并保存在存儲器中從內(nèi)存中發(fā)短消息:AT+CMSS發(fā)送在存儲器中保存的短消息設(shè)置TEXT參數(shù):AT+CSMP設(shè)置在TEXT模式下條件參數(shù)刪除短消息:AT+CMGD刪除保存的短消息4.3通信模塊初始化設(shè)計(jì):MC37i每次上電啟動(dòng)都會(huì)發(fā)出“^SYSSTART〞字符串,本設(shè)計(jì)以此作為該通信模塊啟動(dòng)的標(biāo)志,當(dāng)檢測到該字符串,才繼續(xù)進(jìn)展其他指令。初始化過程如下:發(fā)送ATE0\r指令,讓系統(tǒng)不再把指令回顯,方便單片機(jī)檢測;等到系統(tǒng)反響“OK〞完畢。發(fā)送AT+CMGF=1\r指令,將短消息設(shè)置為文本模式,方便讀??;等到系統(tǒng)反響“OK〞完畢。發(fā)送AT+CNMI=1,1,0,0,1\r指令,設(shè)置短消息提醒;等到系統(tǒng)反響“OK〞完畢4.4接收短消息設(shè)計(jì):當(dāng)MC37i接收到短信息時(shí),會(huì)通過串口向單片機(jī)直接反響一條格式為“<CR><LF><+CMT:,xx><CR><LF>〞的消息,xx表示收到的短信息存儲在sim卡中的位置。此時(shí),我們就可以通過讀短消息指令讀取該信息。在串口中斷中設(shè)置一個(gè)標(biāo)志,當(dāng)收到<CR><LF><+CMT:,xx><CR><LF>字符串時(shí),說明已經(jīng)接收到短消息,并提供短消息存儲地址,讀取該地址,然后用AT+CMGR=xx\r指令讀取xx位置的短消息內(nèi)容。4.5發(fā)送短消息設(shè)計(jì):(1)發(fā)送AT+CMGF=1\r指令,將短消息設(shè)置為文本模式,方便讀取;等到系統(tǒng)反響“OK〞完畢。(2)發(fā)送AT+CSCS="GSM"\r指令,進(jìn)展短消息測試,等到系統(tǒng)反響“OK〞完畢。(3)發(fā)送AT+CMGS="〞\r指令,設(shè)置接收短消息號碼,等到系統(tǒng)反響“<〞后,在要發(fā)送的字符串結(jié)尾加上0x1A字符后經(jīng)串口發(fā)送到系統(tǒng),等到系統(tǒng)反響“+CMGS:70OK〞,說明短消息已發(fā)送成功,發(fā)送短消息完畢。5、通訊模塊人機(jī)交互指令設(shè)計(jì) 本設(shè)計(jì)為方便用戶使用,設(shè)計(jì)了一套用戶手機(jī)指令,用戶可以通過手機(jī)短信發(fā)送規(guī)定的指令實(shí)現(xiàn)對智能窗的控制、系統(tǒng)信息的獲取和設(shè)置。指令集均已smartwindow的英文首字母SW開頭,不同的后綴代表不同功能。以下是指令列表和描述:指令名稱功能描述SW+HOST=〔或XXX〕?表示查詢用戶手機(jī)號,系統(tǒng)會(huì)返回當(dāng)前用戶手機(jī)號列表;XXX表示將當(dāng)前用戶更換為手機(jī)號為XXX的用戶。SW+ANGLE=X調(diào)整智能窗的開度為X,X需為整數(shù)。0表示全關(guān),90表示全開。SW+ALARM=?〔或YES或NO)紅外報(bào)警開關(guān),YSE表示翻開;NO表示關(guān)閉;?表示查詢當(dāng)前報(bào)警狀態(tài),系統(tǒng)會(huì)返回YES或NO作為回應(yīng)。SW+AUTO=?〔或YES或NO)自動(dòng)調(diào)節(jié)開關(guān),YSE表示翻開;NO表示關(guān)閉;?表示查詢當(dāng)前狀態(tài),系統(tǒng)會(huì)返回YES或NO作為回應(yīng)。SW+TH=查詢當(dāng)前環(huán)境,即室內(nèi)外溫濕度情況,系統(tǒng)會(huì)返回結(jié)果如下:I,25,25%,O,30,30%此例表示室內(nèi)溫度25度,濕度25%;室外溫度30度,濕度30%。6、系統(tǒng)輸入的軟件設(shè)計(jì)方案本工程中4*4鍵盤在軟件中采用動(dòng)態(tài)掃描的方式進(jìn)展鍵值的讀取。動(dòng)態(tài)掃描的原理如下:把鍵盤的行和列分別接在0~3口和4~7口,先置0~3口為帶數(shù)據(jù)緩存器的高電平輸出,置4~7口為輸入端口,此時(shí)假設(shè)有按鍵按下,就會(huì)得到4~7的一個(gè)值,把此值保存下來,再置4~7口為帶數(shù)據(jù)反相器的高電平輸出,置0~3口為輸入端口。再次掃描得到鍵值,把這兩個(gè)值組合就可得知是哪個(gè)鍵按下,再通過查表得鍵值。進(jìn)而通過相應(yīng)的程序段實(shí)現(xiàn)程序的調(diào)用,實(shí)現(xiàn)不同的功能。程序流程圖如圖3-5所示:圖3-5按鍵掃描流程圖7、LCD顯示界面設(shè)計(jì)方案作為整個(gè)系統(tǒng)中主要的人機(jī)交互局部之一,該局部軟件設(shè)計(jì)過程中主要為實(shí)現(xiàn)顯示、設(shè)置界面。該系統(tǒng)啟動(dòng)后,首先在液晶屏上顯示歡送界面,接著顯示實(shí)時(shí)的室內(nèi)、室外的溫度、濕度,用戶可以根據(jù)自己的喜好或者溫濕度數(shù)據(jù)選擇界面中的開、關(guān)窗戶按鍵,進(jìn)展開關(guān)窗戶操作。此局部不需要輸入密碼就可以操作,保證用戶操作簡單。該局部的軟件框圖如圖3-6所示。同時(shí),為了保證用戶的個(gè)人操作權(quán)利,還可以選擇界面中的設(shè)置按鍵,不過要想設(shè)置,首先要輸入密碼,只有密碼正確才能進(jìn)展下面的操作,即沒有密碼的用戶只有局部的操作權(quán)限。當(dāng)輸入正確的密碼后,就進(jìn)入設(shè)置界面,該界面主要包括修改密碼、修改手機(jī)號、報(bào)警設(shè)置,再根據(jù)不同的按鍵選擇不同的功能,進(jìn)而繼續(xù)操作。該局部的軟件框圖如圖3-7所示。圖3-6顯示主界面框圖圖3-7設(shè)置界面框圖四、系統(tǒng)測試方案1、角度標(biāo)定測試為了實(shí)現(xiàn)窗戶角度的準(zhǔn)確測量和控制,需對窗戶開度最大和最小時(shí)的角度進(jìn)展標(biāo)定,因?yàn)榇皯舻淖畲箝_度不是90度。首先當(dāng)窗戶完全關(guān)閉時(shí),記錄單片機(jī)AD采樣值Value1,以此作為0度角對應(yīng)的采樣值;當(dāng)窗戶完全翻開時(shí)〔窗戶的最大開度收電動(dòng)推桿的行程約束〕,首先用量角器測得窗戶角度X,然后記錄單片機(jī)AD采樣值Value2,以此作為X度角對應(yīng)的采樣值。圖4-1電位器電路圖由電位器的電路圖可知:由上式計(jì)算得到0度和最大開度X時(shí)的電阻值和。然后可由以下公式計(jì)算任意角度對應(yīng)的采樣值:經(jīng)過屢次測量去均值,得到實(shí)際測試結(jié)果為:角度AD測得的電壓值080〔最大值〕代入數(shù)據(jù),最終得到電壓和角度的轉(zhuǎn)換公式為:2、角度控制精度測試角度控制的程序流程圖如下:圖4-2角度控制流程圖輸入目標(biāo)角度,調(diào)用角度控制函數(shù),分別測試30,60,70度時(shí)角度控制精度。結(jié)果如下:目標(biāo)角度實(shí)測值平均值誤差303446058270733由表格可知,控制誤差在設(shè)計(jì)目標(biāo)之內(nèi)。3、多個(gè)溫度傳感器融合算法測試為了驗(yàn)證傳感器融合中使用的分布圖法的有效性,即是否能夠剔除無效的數(shù)據(jù)我們進(jìn)展了如下測試:〔1〕將室內(nèi)6個(gè)傳感器的任意一個(gè)放到室外陽光直射條件下,即模擬疏忽誤差的情況。獲得一組6個(gè)傳感器的數(shù)據(jù)如下:傳感器1傳感器2傳感器3傳感器4傳感器5傳感器6融合值26.126.126.2由上述測量機(jī)融合數(shù)據(jù)可得,對于一個(gè)傳感器有疏忽誤差的情況,本設(shè)計(jì)中采用的融合算法能夠有效的克制。參考文獻(xiàn):[1]喻金錢,喻斌.STM32系列ARMCortex-M3內(nèi)核微控制器開發(fā)與應(yīng)用[M][2]夏卓君.分布圖法在疏忽誤差處理中的應(yīng)用[J].實(shí)用測試技術(shù),2002,2[2]項(xiàng)新建.基于多傳感器數(shù)據(jù)融合的糧食倉庫溫度監(jiān)測系統(tǒng)[J].儀器儀表學(xué)報(bào),2003,24〔5〕[4]張輝宜,沈暉,陶永.嵌入式數(shù)據(jù)融合系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2021,47〔2〕附錄1:核心程序intmain(void) u8i=0,j=0;/*變量定義*/ intopen_angle=0; charmessage[200]={0}; charhost_num_flag=0; /*配置系統(tǒng)時(shí)鐘為72M*/SystemInit(); IR_Init();/*紅外初始化*/Motor_Init();/*電機(jī)初始化*//*USART1config1152008-N-1*/ USART1_Config(); /*配置SysTick為10us中斷一次*/ /*LCD端口初始化*/ init_lcd(); DS18B20_Init(); DHT11_Init(); /*外接4*4按鍵初始化*/ KeyInit();USART1_Config(); USART3_Config(); Usart1SendStr("Hello!!!!!!\n"); mc37i_init(); /*TIM2定時(shí)配置*/ TIM2_NVIC_Configuration();TIM2_Configuration(); /*TIM2開場計(jì)時(shí)*/ START_TIME;while(1)//主循環(huán)/********溫濕度顯示-主界面**********************************/ if(temp_refresh_flag==1)//定時(shí)一分鐘刷新 DHT11_get_data(&H1,&H2); temp_fusion(&T1,&T2); temp_refresh_flag=0;/********短消息處理*****************************************/ if(massage_coming==1) //讀短消息 mc37i_read_message(message,&host_num_flag); massage_coming=0; if(host_num_flag==1) if(message[0]=='S'&&message[1]=='W'&&message[3]=='H'&&message[4]=='O'&&message[5]=='S'&&message[6]=='T') //SW+HOST="" 修改號碼指令 FLASH_ErasePage(ADDR);//Flash for(i=0;i<11;i++) host_num[i]= message[i+9]-'0'; FLASH_ProgramHalfWord(ADDR+i*2,host_num[i]); //重新將密碼存進(jìn)Flash if(message[0]=='S'&&message[1]=='W'&&message[3]=='A'&&message[4]=='N'&&message[5]=='G'&&message[6]=='L'&&message[7]=='E') //SW+ANGLE=50 修改窗戶開角度 open_ang

溫馨提示

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

最新文檔

評論

0/150

提交評論