版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課 程 設(shè) 計課程名稱: 嵌入入式設(shè)計計 設(shè)計題目: 智能家家居監(jiān)控控系統(tǒng) 班 級: 20012221111 學 號: 2011221111227 姓 名: 指導教師: 完成時間: 20115/112/99 哈爾濱工程程大學教教務處 制嵌入式設(shè)計計報告智能家居監(jiān)監(jiān)控系統(tǒng)統(tǒng)班級:教師評語:教師簽名:2015年年12月月課程設(shè)計題題目智能家居監(jiān)監(jiān)控系統(tǒng)統(tǒng)目的和背景景 智智能家居居又稱智能住住宅,正正朝著具備無線線遠程控控制、多多媒體控控制、高高速數(shù)據(jù)傳輸?shù)裙δ?的方向向發(fā)展,其其關(guān)鍵技術(shù)為兼容容性強的家庭庭控制器器和滿足信息息傳輸需要要的家庭庭網(wǎng)絡。目前前, 傳輸網(wǎng)絡多采用用綜合布線技術(shù),限制制
2、了系統(tǒng)統(tǒng)應用場所,而而且費用較高,采采用無線線方式構(gòu)構(gòu)建靈 活便捷捷的智能能家居安安全監(jiān)控系統(tǒng),成為當當前的主主流趨勢勢。目前,應用用于智能能家居的的無線通信信技術(shù)主要包包括 IIr-DDA 紅紅外線技術(shù)、藍牙技術(shù)和 Ziigbeee 技技術(shù)等,Irr-DAA 屬于短距距離、點點對點的的半雙工通信信方式,使使用不便便且失誤誤率高,不不適用于于家 庭的組網(wǎng)方式式;藍牙技術(shù)則則因為網(wǎng)絡容量有有限,成成本較高,不不適于節(jié)節(jié)點較多多的家庭庭網(wǎng)絡應應用。本項目通過過采用傳輸輸范圍適中、安安全可靠靠、網(wǎng)絡絡容量大大的 ZZigbbee 技術(shù),設(shè)計智能能家居 遠程監(jiān)控系統(tǒng)。主要內(nèi)容1) 信息息顯示。2) 照
3、明明控制。3) 家電電控制。4) 入侵侵監(jiān)測。5) 煙感感監(jiān)測。6) 溫度度、 濕濕度監(jiān)測測。7) 遠程程監(jiān)控, 數(shù)據(jù)透透傳。8) 選項項設(shè)置。采用的工具具方法硬件環(huán)境 1: NEUUEBDD-ARRM 開開發(fā)套件件硬件環(huán)境 2: CC225300 開發(fā)發(fā)套件軟件環(huán)境:1. UCCOS22.5.1,提提供 UUCOSS 內(nèi)核核構(gòu)建2. ADDS1.2、 IARR7.551,提提供集成成開發(fā)環(huán)環(huán)境進度安排1-2天:完成項項目要求求書、模模塊計劃劃書、系系統(tǒng)設(shè)計計書、RRTM3-4天:完成模模塊概要要設(shè)計、模模塊概要要設(shè)計書書、模塊塊接口定定義書、模模塊間 EVEENT 流和數(shù)數(shù)據(jù)流系系統(tǒng)圖5-7
4、天:完成模模塊詳細細設(shè)計 模塊詳詳細設(shè)計計書8-13天天:完成成模塊代代碼 模模塊代碼碼14-16天天:完成成項目報報告參考資料- PAGE 59 -1 目的和和背景 智智能家居居又稱智能住住宅,正正朝著具備無線線遠程控控制、多多媒體控控制、高高速數(shù)據(jù)傳輸?shù)裙δ?的方向向發(fā)展,其其關(guān)鍵技術(shù)為兼容容性強的家庭庭控制器器和滿足信息息傳輸需要要的家庭庭網(wǎng)絡。目前前, 傳輸網(wǎng)絡多采用用綜合布線技術(shù),限制制了系統(tǒng)統(tǒng)應用場所,而而且費用較高,采采用無線線方式構(gòu)構(gòu)建靈 活便捷捷的智能能家居安安全監(jiān)控系統(tǒng),成為當當前的主主流趨勢勢。目前,應用用于智能能家居的的無線通信信技術(shù)主要包包括 IIr-DDA 紅紅外
5、線技術(shù)、藍牙技術(shù)和 Ziigbeee 技技術(shù)等,Irr-DAA 屬于短距距離、點點對點的的半雙工通信信方式,使使用不便便且失誤誤率高,不不適用于于家 庭的組網(wǎng)方式式;藍牙技術(shù)則則因為網(wǎng)絡容量有有限,成成本較高,不不適于節(jié)節(jié)點較多多的家庭庭網(wǎng)絡應應用。本項目通過過采用傳輸輸范圍適中、安安全可靠靠、網(wǎng)絡絡容量大大的 ZZigbbee 技術(shù),設(shè)計智能能家居 遠程監(jiān)控系統(tǒng)。2 功能描描述和模模塊設(shè)計計圖1:智能能家居監(jiān)監(jiān)控平臺臺示意圖圖LCD 主主菜單顯顯示顯示當前時時間日期期,電器器開關(guān)狀狀態(tài),是是否鬧鐘鐘開啟。顯顯示用戶戶操作菜菜單。顯顯示設(shè)置置菜單。照明控制使用 LEED、 AD( 1 個) 硬
6、件資資源。使使用 LLED 可模仿仿家中主主要房間間的照明明。通過過照明控控制子菜菜單控制制燈亮滅滅。如果果開啟了了自動光光控功能能,通過過 ADD 采集集的光照照參數(shù)可可實現(xiàn)照照明的自自動開關(guān)關(guān)。另外外可通過過小鍵盤盤模擬電電燈開關(guān)關(guān)。家電控制使用 LEED 硬硬件資源源。通過過家電控控制子菜菜單對家家中電器器進行開開關(guān)控制制。相應應家電開開關(guān)信息息以及鬧鬧鐘是否否開啟都都在 LLCD 主菜單單中有顯顯示。通通過設(shè)置置菜單傳傳遞的信信息可定定時開關(guān)關(guān)電器以以及實現(xiàn)現(xiàn)鬧鐘功功能。定定時時間間到 LLCD 屏會自自動彈出出提示框框并且家家電狀態(tài)態(tài)發(fā)生改改變。4) 入入侵報警警控制使用紅外傳傳感器
7、硬硬件資源源。使用用紅外傳傳感器或或接近開開關(guān)采集集數(shù)據(jù),判判斷有無無人員進進入室內(nèi)內(nèi)。報警警參數(shù)有有默認值值,也可可由用戶戶設(shè)置, 可通過過設(shè)置功功能完成成。如遇遇報警,報報警信息息在屏幕幕上顯示示,同時時發(fā)出觸觸發(fā)蜂鳴鳴器報警警。5) 溫溫濕度控控制使用溫濕度度傳感器器硬件資資源。使使用溫濕濕度傳感感器采集集溫濕度度數(shù)據(jù),將將監(jiān)測數(shù)數(shù)據(jù)顯示示在 LLCD 上。報報警參數(shù)數(shù)有默認認值,也也可由用用戶設(shè)置置, 可可通過設(shè)設(shè)置功能能完成。如如遇報警警, 觸觸發(fā)蜂鳴鳴器動作作,同時時開啟空空調(diào)。6) 遠遠程監(jiān)控控。終端系統(tǒng)將將發(fā)生的的事件數(shù)數(shù)據(jù)定期期通過 Ziggbeee 傳輸輸?shù)椒談掌?,服服?/p>
8、器可可根據(jù)實實際情況況進行家家電設(shè)備備的遠端端控制。7) 設(shè)置置功能完成以下內(nèi)內(nèi)容的設(shè)設(shè)置:哪哪些房間間采用自自動控制制功能。3 系統(tǒng)結(jié)結(jié)構(gòu)圖2 系統(tǒng)統(tǒng)結(jié)構(gòu)圖圖圖3 通信信協(xié)議框框架圖4 設(shè)計計參考框框架4 代碼實實現(xiàn)4.1模塊塊的實現(xiàn)現(xiàn)4.1.11賬戶登登錄模塊塊函數(shù)名稱函數(shù)類型概要說明lineEEdittTexxtChhangged(QSttrinng ss)模塊內(nèi)部函函數(shù)判斷文本是是否發(fā)生生改變的的槽函數(shù)數(shù)zeroCClicckedd()ninneCllickked()模塊內(nèi)部函函數(shù)09的數(shù)數(shù)字輸入入鍵盤loginnBtnnCliickeed()模塊外部函函數(shù)登陸按鍵,進進入主頁頁面fo
9、rgrrtPaasswworddCliickeed()模塊外部函函數(shù)忘記密碼按按鍵,進進入密碼碼修改頁頁面 44.1.2主界界面模塊塊函數(shù)名稱函數(shù)類型概要說明mainWWidgget22smaartHHomeeApppliaancees()模塊外部函函數(shù)點擊按鈕進進入智能能家電模模塊。mainWWidgget22seccuriityWWidgget()模塊外部函函數(shù)點擊按鈕進進入安防防系統(tǒng)模模塊。mainWWidgget22tooolWiidgeet()模塊外部函函數(shù)點擊按鈕進進入工具具娛樂模模塊。Back_cliickeed模塊外部函函數(shù)返回登陸界界面。4.1.33智能家家電模塊塊函數(shù)名稱函
10、數(shù)類型概要說明smarttHommeApppliiancces22ligghtWWidgget()模塊外部函函數(shù)點擊按鈕進進入燈控控界面。smarttHommeApppliiancces22watterHHeatterWWidgget()模塊外部函函數(shù)點擊按鈕進進入熱水水器控制制界面。smarttHommeApppliiancces22temmperratuureWWidgget()模塊外部函函數(shù)點擊按鈕進進入空調(diào)調(diào)控制界界面。smarttHommeApppliiancces22hummidiityWWidgget()模塊外部函函數(shù)點擊按鈕進進入加濕濕器控制制界面。smarttHommeApp
11、pliiancces22currtaiinWiidgeet()模塊外部函函數(shù)點擊按鈕進進入窗簾簾控制界界面。smarttHommeApppliiancces22telleviisioonWiidgeet()模塊外部函函數(shù)點擊按鈕進進入電視視控制界界面Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.33.1燈燈控模塊塊 函數(shù)名稱函數(shù)類型概要說明lighttTurrnOnn()模塊外部函函數(shù)點擊按鈕打打開燈。lighttTurrnOfff()模塊外部函函數(shù)點擊按鈕關(guān)關(guān)閉燈Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.33.2溫溫度模塊塊函數(shù)名稱函數(shù)類型概要說明
12、changgeSwwitcch(iint a)模塊內(nèi)部函函數(shù)顯示空調(diào)的的開光狀狀態(tài)。addTeemCllickked()模塊內(nèi)部函函數(shù)顯示空調(diào)的的溫度。addTeemCllickked()模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送溫度度加信息息。subTeemCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送溫度度減信息息。Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.33.3濕濕度模塊塊函數(shù)名稱函數(shù)類型概要說明showRRh(iint rh)模塊內(nèi)部函函數(shù)顯示當前濕濕度。changgeSwwitcch(iint a)模塊內(nèi)部函函數(shù)顯示當前開開關(guān)狀態(tài)態(tài)。changgeOnnCliick
13、eed()模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送開狀狀態(tài)。changgeOfffCllickked()模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送關(guān)狀狀態(tài)。addBttnCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送濕度度加狀態(tài)態(tài)。subBttnCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送濕度度減狀態(tài)態(tài)。Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.33.4熱熱水器模模塊函數(shù)名稱函數(shù)類型概要說明showTTem(intt teem);模塊內(nèi)部函函數(shù)顯示當前溫溫度。changgeSwwitcch(iint a)模塊內(nèi)部函函數(shù)顯示開關(guān)狀狀態(tài)。changgeOnnCliickeed()模塊外
14、部函函數(shù)點擊按鈕發(fā)發(fā)送開狀狀態(tài)。changgeOfffCllickked()模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送關(guān)狀狀態(tài)。addBttnCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送升高高水溫狀狀態(tài)。subBttnCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送降低低水溫狀狀態(tài)。Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.33.5窗窗簾模塊塊函數(shù)名稱函數(shù)類型概要說明showSSlidder( innt tti );模塊內(nèi)部函函數(shù)顯示窗簾的的位置。slideerVaaluee(innt aa);模塊內(nèi)部函函數(shù)讀取窗簾的的當前位位置。Back_cliickeed模塊外部函函
15、數(shù)返回上一界界面 4.1.33.6電電視模塊塊函數(shù)名稱函數(shù)類型概要說明openTTvCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送電視視開的信信號。closeeTvCClicckedd();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送電視視關(guān)的信信號addVmmeCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送音量量+信號號subVoolummeCllickked();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送音量量減信號號addPrrogrramCClicckedd()模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送節(jié)目目+信號號subPrrogrramCClicckedd();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送節(jié)目目-信號號Back_
16、cliickeed模塊外部函函數(shù)返回上一界界面 44.1.4安防防模塊函數(shù)名稱函數(shù)類型概要說明securrityyWiddgett2innfraareddWiddgett();模塊外部函函數(shù)點擊按鈕進進入紅外外報警。securrityy2LoockWWidgget();模塊外部函函數(shù)點擊按鈕進進入遠程程控制門門鎖securrityy2SmmokeeWiddgett();模塊外部函函數(shù)點擊按鈕進進入煙霧霧報警Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.44.1紅紅外報警警模塊函數(shù)名稱函數(shù)類型概要說明showLLocaatioon(iint a);模塊內(nèi)部函函數(shù)顯示觸發(fā)的的位
17、置changgeOnnCliickeed();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送紅外外開啟信信號changgeOffficckedd();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送紅外外開啟信信號Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.44.2煙煙霧報警警模塊函數(shù)名稱函數(shù)類型概要說明changgeSmmokee(innt);模塊內(nèi)部函函數(shù)顯示當前煙煙霧的濃濃度。Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.44.3門門鎖控制制模塊函數(shù)名稱函數(shù)類型概要說明changgeLoockSStatte(iint );模塊內(nèi)部函函數(shù)顯示當前門門的鎖的的狀態(tài)changgeOnn()
18、模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送門開開的狀態(tài)態(tài)changgeOfff();模塊外部函函數(shù)點擊按鈕發(fā)發(fā)送門開開的狀態(tài)態(tài)Back_cliickeed模塊外部函函數(shù)返回上一界界面 44.1.5小工工具模塊塊函數(shù)名稱函數(shù)類型概要說明toolWWidgget22callenddarWWidgget();模塊外部函函數(shù)點擊按鈕進進入日歷歷toolWWidgget22stoopwaatchhWiddgett()模塊外部函函數(shù)點擊按鈕進進入秒表表toolWWidgget22cWiidgeet()模塊外部函函數(shù)點擊按鈕進進入計算算器toolWWidgget22alaarmWWidgget()模塊外部函函數(shù)點擊按鈕進
19、進入鬧鐘鐘toolWWidgget22miaanWiindoow()模塊外部函函數(shù)點擊按鈕進進入畫板板toolWWidgget22gammeWiidgeet()模塊外部函函數(shù)點擊按鈕進進入20048游游戲toolWWidgget22cloockWWidgget()模塊外部函函數(shù)點擊按鈕進進入時鐘鐘 日日歷模塊塊函數(shù)名稱函數(shù)類型概要說明selfiinfoowiddgett()模塊內(nèi)部函函數(shù)顯示醫(yī)生個個人基本本信息,顯顯示醫(yī)生生的打卡卡時間。buttoon_sscheeduaal_cclicckedd模塊外部函函數(shù)點擊按鈕進進入日程程界面Selecct_ccasees模塊外部函函數(shù)選擇代辦事事項,
20、并并顯示代代辦事項項的具體體內(nèi)容Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.55.2時時鐘模塊塊函數(shù)名稱函數(shù)類型概要說明selfiinfoowiddgett()模塊內(nèi)部函函數(shù)顯示醫(yī)生個個人基本本信息,顯顯示醫(yī)生生的打卡卡時間。buttoon_sscheeduaal_cclicckedd模塊外部函函數(shù)點擊按鈕進進入日程程界面Selecct_ccasees模塊外部函函數(shù)選擇代辦事事項,并并顯示代代辦事項項的具體體內(nèi)容Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.55.3鬧鬧鐘模塊塊函數(shù)名稱函數(shù)類型概要說明selfiinfoowiddgett()模塊內(nèi)部函函
21、數(shù)顯示醫(yī)生個個人基本本信息,顯顯示醫(yī)生生的打卡卡時間。buttoon_sscheeduaal_cclicckedd模塊外部函函數(shù)點擊按鈕進進入日程程界面Selecct_ccasees模塊外部函函數(shù)選擇代辦事事項,并并顯示代代辦事項項的具體體內(nèi)容Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.55.4秒秒表模塊塊函數(shù)名稱函數(shù)類型概要說明starttStoopwaatchhCliickeed()模塊內(nèi)部函函數(shù)秒表開始計計時resettStoopwaatchhCliickeed()模塊內(nèi)部函函數(shù)秒表重新計計時stopSStoppwattchCClicckedd()模塊內(nèi)部函函數(shù)秒表
22、停止計計時 4.1.55.5畫畫板模塊塊函數(shù)名稱函數(shù)類型概要說明void opeen()模塊內(nèi)部函函數(shù)打開圖片void savve()模塊內(nèi)部函函數(shù)保存圖片void pennCollor()模塊內(nèi)部函函數(shù)改變畫筆顏顏色void pennWiddth()模塊內(nèi)部函函數(shù)改變畫筆寬寬度void pennBruush()模塊內(nèi)部函函數(shù)筆刷 4.1.55.6計計算器模模塊函數(shù)名稱函數(shù)類型概要說明selfiinfoowiddgett()模塊內(nèi)部函函數(shù)顯示醫(yī)生個個人基本本信息,顯顯示醫(yī)生生的打卡卡時間。buttoon_sscheeduaal_ccliccked模塊外部函函數(shù)點擊按鈕進進入日程程界面Selec
23、ct_ccasees模塊外部函函數(shù)選擇代辦事事項,并并顯示代代辦事項項的具體體內(nèi)容Back_cliickeed模塊外部函函數(shù)返回上一界界面 4.1.55.7小小游戲模模塊函數(shù)名稱函數(shù)類型概要說明selfiinfoowiddgett()模塊內(nèi)部函函數(shù)顯示醫(yī)生個個人基本本信息,顯顯示醫(yī)生生的打卡卡時間。resizzeEvventt(QRResiizeEEvennt *)模塊內(nèi)部函函數(shù)窗口尺寸改改變觸發(fā)發(fā)的事件件onScooreIInc(intt)模塊內(nèi)部函函數(shù)處理分數(shù)增增加信號號的槽函函數(shù)onGammeOvver()模塊內(nèi)部函函數(shù)處理游戲結(jié)結(jié)束信號號的槽函函數(shù)onWinn()模塊內(nèi)部函函數(shù)處理游戲
24、獲獲勝信號號的槽函函數(shù)Main.c:#inclludee #inclludee #inclludee hheadd.h#inclludee oopennpassswoord.hint ssfd;void iniit_nnetwworkk();int mmainn(innt aargcc, ccharr *aargvv) QQApppliccatiion a(aargcc, aargvv); QQTexxtCoodecc:ssetCCodeecFoorCSStriingss(QTTexttCoddec:coodeccForrNamme(utff-8); QQTexxtCoodecc:ssetCC
25、odeecFoorLoocalle(QQTexxtCoodecc:ccodeecFoorNaame(uttf-88); QQTexxtCoodecc:ssetCCodeecFoorTrr(QTTexttCoddec:coodeccForrNamme(utff-8); oopennPassswoord w; ww.shhow(); iinitt_neetwoork(); rretuurn a.eexecc();void iniit_nnetwworkk() ssfd=socckett(AFF_INNET,SOCCK_DDGRAAM,00); iif(ssfd0) qDeebugg(ssockke
26、t()faaileed!); retturnn; sstruuct socckadddr_in adddr; bbzerro(&adddr,ssizeeof(adddr); aaddrr.siin_ffamiily = AAF_IINETT; aaddrr.siin_pportt=httonss(99999); adddr.ssin_adddr.ss_adddr = hhtonnl(IINADDDR_ANYY); iint rett; rret=binnd(ssfd,(sttrucct ssockkadddr*)&adddr,sizzeoff(adddr); iif(rret != 0) qD
27、eebugg(bbindd() faiiledd!); retturnn; #inclludee mmainnwiddgett.h#inclludee uui_mmainnwiddgett.h#inclludee hheadd.h#inclludee /#inclludee mainWWidgget:maainWWidgget(QWiidgeet *parrentt) : QQWiddgett(paarennt), uui(nnew Ui:maainWWidgget) uui-settupUUi(tthiss);ui-ddateeTimmeEddit-seetDaate(QDaate:cuur
28、reentDDatee();/ uii-ddateeTimmeEddit-seetTiime(QTiime:cuurreentTTimee();/ QQTimmer *tiimerr=neew QQTimmer(thiis); cconnnectt(tiimerr,SIIGNAAL(ttimeeoutt(),thhis,SLOOT(ttimeeouttsloot();/ttimeeouttsloot() tiimerr-sstarrt(110000); ssha = nnew smaartHHomeeApppliaancees; ssw = neew ssecuurittyWiidgeet;
29、ttw = neew ttoollWiddgett;mainWWidgget.c:mainWWidgget:mmainnWiddgett() ddeleete ui;void maiinWiidgeet:shoow() QQWiddgett:sshoww(); sshowwFulllSccreeen();void maiinWiidgeet:maiinWiidgeet2ssmarrtHoomeAAppllianncess() QPPaleettee paalettte; paalettte.settBruush(QPaalettte:Baackggrouund,QBrrushh(QIImagg
30、e( :/neww/prrefiix1/jiaaju.pngg).scaaledd(siize(), Qt:IggnorreAsspecctRaatioo, Qtt:SSmooothTTrannsfoormaatioon); ssha-seetPaalettte(pallettte); ssha-seetAuutoFFilllBacckgrrounnd(ttruee); ssha-seetAuutoFFilllBacckgrrounnd(ttruee); shha-shoow(); / shha-shoow();void maiinWiidgeet:maiinWiidgeet2ssecuuri
31、ttyWiidgeet() QQPallettte ppaleettee; ppaleettee.seetBrrushh(QPPaleettee:BBackkgrooundd,QBBrussh(QQImaage( :/neew/ppreffix11/annfanng.ppng).sscalled(sizze(), QQt:IgnnoreeAsppecttRattio, QQt:SmooothhTraansfformmatiion); sww-ssetPPaleettee(paalettte); sw-seetAuutoFFilllBacckgrrounnd(ttruee);/ sww-sset
32、AAutooFilllBaackggrouund(truue); / shha-shoow(); ssw-shoow();void maiinWiidgeet:maiinWiidgeet2ttoollWiddgett() / tww-sshoww(); QQPallettte ppaleettee; ppaleettee.seetBrrushh(QPPaleettee:BBackkgrooundd,QBBrussh(QQImaage( :/neew/ppreffix11/toool.pngg).scaaledd(siize(), Qt:IggnorreAsspecctRaatioo, QQt:
33、SmooothhTraansfformmatiion); tw-seetPaalettte(pallettte); ttw-settAuttoFiillBBackkgrooundd(trrue); tw-seetAuutoFFilllBacckgrrounnd(ttruee); ttw-shoow();void maiinWiidgeet:timmeouutsllot() QDDatee daate = uui-datteTiimeEEditt-ddatee(); QTTimee tiime = uui-datteTiimeEEditt-ttimee(); QTTimee tiime11(23
34、3,599,599); iff(tiime = timme1) ddatee = datte.aaddDDayss(1); ttimee = timme.aaddSSecss(1); uui-datteTiimeEEditt-ssetDDatee(daate); uui-datteTiimeEEditt-ssetTTimee(tiime)冰箱控制:#inclludee iinfrrareedwiidgeet.hh#inclludee uui_iinfrrareedwiidgeet.hh#inclludee hheadd.hinfraareddWiddgett:iinfrrareedWiidge
35、et(QQWiddgett *ppareent) : QQWiddgett(paarennt), uui(nnew Ui:innfraareddWiddgett) uui-settupUUi(tthiss);infraareddWiddgett:inffrarredWWidgget() ddeleete ui;void inffrarredWWidgget:shhow() QQWiddgett:sshoww(); sshowwFulllSccreeen();void inffrarredWWidgget:chhanggeOnnCliickeed() sstruuct socckadddr_in
36、 peeer_aaddrr; bbzerro(&peeer_aaddrr,siizeoof(ppeerr_adddr); ppeerr_adddr.sinn_faamilly = AFF_INNET; ppeerr_adddr.sinn_poort = hhtonns(IINFRRAREED_PPORTT); ppeerr_adddr.sinn_adddr.s_aaddrr = ineet_aaddrr(INNFRAAREDD_IPP); iint a=11; ssenddto(sfdd,&aa,siizeoof(aa),00,(sstruuct socckadddr*)&ppeerr_add
37、dr,sizzeoff(peeer_adddr); uui-texxtBrrowsser-apppennd();void inffrarredWWidgget:chhanggeOfffCllickked() sstruuct socckadddr_in peeer_aaddrr; bbzerro(&peeer_aaddrr,siizeoof(ppeerr_adddr); ppeerr_adddr.sinn_faamilly = AFF_INNET; ppeerr_adddr.sinn_poort = hhtonns(IINFRRAREED_PPORTT); ppeerr_adddr.sinn_
38、adddr.s_aaddrr = ineet_aaddrr(INNFRAAREDD_IPP); iint a=00; ssenddto(sfdd,&aa,siizeoof(aa),00,(sstruuct socckadddr*)&ppeerr_adddr,sizzeoff(peeer_adddr); uui-texxtBrrowsser-apppennd();void inffrarredWWidgget:shhowLLocaatioon(iint a) iif(aa=00) ui-teextBBrowwserr-aappeend(); iif(aa=11) ui-teextBBrowwse
39、rr-aappeend(); 門鎖控制:#inclludee llockkwiddgett.h#inclludee uui_llockkwiddgett.h#inclludee#inclludee#inclludeeheead.hlockWWidgget:loockWWidgget(QWiidgeet *parrentt) : QQWiddgett(paarennt), uui(nnew Ui:loockWWidgget) uui-settupUUi(tthiss); / rtt = neww reecvTThreead; /QOObjeect:coonneect(rt, SIIGNAAL(
40、locckSttateeChaangee(innt), / tthiss, SSLOTT(chhanggeLoockSStatte(iint); / rtt-sstarrt();lockWWidgget:llockkWiddgett() ddeleete ui;void locckWiidgeet:shoow() QQWiddgett:sshoww(); sshowwFulllSccreeen();void locckWiidgeet:chaangeeOn() / uii-bbtn11-ssetCChecckedd(trrue); uui-linneEddit-seetTeext(Thhe g
41、gatee iss ONN!); sstruuct socckadddr_in adddr; bbzerro(&adddr, sizzeoff(adddr); aaddrr.siin_ffamiily = AAF_IINETT; aaddrr.siin_pportt = htoons(70002); aaddrr.siin_aaddrr.s_adddr = innet_adddr(1922.1668.11.2222);/ innt kkindd = 5; / / seendtto(ssfd, &kkindd, ssizeeof(kinnd), 0, (sstruuct socckadddr*)
42、&aaddrr, ssizeeof(adddr); iint boool2=1; ssenddto(sfdd, &boool2, siizeoof(bbooll2), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr);/ uii-llabeel_22-ssetTTextt(tthe GATTE iis OOn!);void locckWiidgeet:chaangeeOfff() uui-linneEddit-seetTeext(Thhe ggatee iss OFFF!); / uii-bbtn22-ssetCChecckedd(trrue)
43、; / uii-llabeel_22-ssetTTextt(tthe Gatte iis OOFF!); sstruuct socckadddr_in adddr; bbzerro(&adddr, sizzeoff(adddr); aaddrr.siin_ffamiily = AAF_IINETT; aaddrr.siin_pportt = htoons(70002); aaddrr.siin_aaddrr.s_adddr = innet_adddr(1922.1668.11.877);/ innt kkindd = 5; / / seendtto(ssfd, &kkindd, ssizeeo
44、f(kinnd), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr); iint boool2=0; ssenddto(sfdd, &boool2, siizeoof(bbooll2), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr);void locckWiidgeet:chaangeeLocckSttatee(innt bbooll1) iif(bbooll1=0) / uui-settupUUi(tthiss); / uui-Ui_locckWiidgeet; / cclosse();
45、/ sshoww(); /uupdaate();/ rrepaaintt(); uui-linneEddit-seetTeext(thhe GGATEE iss OFFF!); / qAApp-prroceessEEvennts(); / thhis-uppdatteGeeomeetryy(); / qqDebbug(reecv111111); eelsee iff (bbooll1=1) / uii-bbtn11-ssetCChecckabble(truue); / uii-bbtn11-ssetFFocuus(); / uui-btnn2-settCheeckeed(ffalsse); /
46、 ui-bttn1-seetChheckked(truue); / uii-llabeel_22-uupdaate(); / uui-labbel_2-settTexxt(thee GAATE is On!); / tthiss-cchanngeOOff(); / thhis-chhanggeOnn(); / uui-settupUUi(tthiss); / uii-rretrransslatteUii(loockWWidgget); / upddatee(); uii-llineeEdiit-settTexxt(thee GAATE is ON!); / thiis-upddateeGeoo
47、mettry(); / qqDebbug(reecv 22222); 遠程燈控:#inclludee llockkwiddgett.h#inclludee uui_llockkwiddgett.h#inclludee#inclludee#inclludeeheead.hlockWWidgget:loockWWidgget(QWiidgeet *parrentt) : QQWiddgett(paarennt), uui(nnew Ui:loockWWidgget) uui-settupUUi(tthiss); / rtt = neww reecvTThreead; /QOObjeect:coon
48、neect(rt, SIIGNAAL( locckSttateeChaangee(innt), / tthiss, SSLOTT(chhanggeLoockSStatte(iint); / rtt-sstarrt();lockWWidgget:llockkWiddgett() ddeleete ui;void locckWiidgeet:shoow() QQWiddgett:sshoww(); sshowwFulllSccreeen();void locckWiidgeet:chaangeeOn() / uii-bbtn11-ssetCChecckedd(trrue); uui-linneEd
49、dit-seetTeext(Thhe ggatee iss ONN!); sstruuct socckadddr_in adddr; bbzerro(&adddr, sizzeoff(adddr); aaddrr.siin_ffamiily = AAF_IINETT; aaddrr.siin_pportt = htoons(70002); aaddrr.siin_aaddrr.s_adddr = innet_adddr(1922.1668.11.2222);/ innt kkindd = 5; / / seendtto(ssfd, &kkindd, ssizeeof(kinnd), 0, (s
50、struuct socckadddr*)&aaddrr, ssizeeof(adddr); iint boool2=1; ssenddto(sfdd, &boool2, siizeoof(bbooll2), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr); / uii-llabeel_22-ssetTTextt(tthe GATTE iis OOn!);void locckWiidgeet:chaangeeOfff() uui-linneEddit-seetTeext(Thhe ggatee iss OFFF!); / uii-bbtn22-
51、ssetCChecckedd(trrue); / uii-llabeel_22-ssetTTextt(tthe Gatte iis OOFF!); sstruuct socckadddr_in adddr; bbzerro(&adddr, sizzeoff(adddr); aaddrr.siin_ffamiily = AAF_IINETT; aaddrr.siin_pportt = htoons(70002); aaddrr.siin_aaddrr.s_adddr = innet_adddr(1922.1668.11.877);/ innt kkindd = 5; / / seendtto(s
52、sfd, &kkindd, ssizeeof(kinnd), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr); iint boool2=0; ssenddto(sfdd, &boool2, siizeoof(bbooll2), 0, (sstruuct socckadddr*)&aaddrr, ssizeeof(adddr);void locckWiidgeet:chaangeeLocckSttatee(innt bbooll1) iif(bbooll1=0) / uui-settupUUi(tthiss); / uui-Ui_locckWi
53、idgeet; / cclosse(); / sshoww(); /uupdaate();/ rrepaaintt(); uui-linneEddit-seetTeext(thhe GGATEE iss OFFF!); / qAApp-prroceessEEvennts(); / thhis-uppdatteGeeomeetryy(); / qqDebbug(reecv111111); eelsee iff (bbooll1=1) / uii-bbtn11-ssetCChecckabble(truue); / uii-bbtn11-ssetFFocuus(); / uui-btnn2-sett
54、Cheeckeed(ffalsse); / ui-bttn1-seetChheckked(truue); / uii-llabeel_22-uupdaate(); / uui-labbel_2-settTexxt(thee GAATE is On!); / tthiss-cchanngeOOff(); / thhis-chhanggeOnn(); / uui-settupUUi(tthiss); / uii-rretrransslatteUii(loockWWidgget); / upddatee(); uii-llineeEdiit-settTexxt(thee GAATE is ON!);
55、 / thiis-upddateeGeoomettry(); / qqDebbug(reecv 22222); 濕度檢測:#inclludee hhumiidittywiidgeet.hh#inclludee uui_hhumiidittywiidgeet.hh#inclludee hheadd.hhumiddityyWiddgett:hhumiidittyWiidgeet(QQWiddgett *ppareent) : QQWiddgett(paarennt), uui(nnew Ui:huumiddityyWiddgett) uui-settupUUi(tthiss);humiddityy
56、Widdgett:hummidiityWWidgget() ddeleete ui;void hummidiityWWidgget:shhow() QQWiddgett:sshoww(); sshowwFulllSccreeen();void hummidiityWWidgget:shhowRRh(iint rh) uui-lcddNummberr-ddispplayy(rhh);void hummidiityWWidgget:chhanggeSwwitcch(iint a) iif(aa=11) ui-clloseeButttonn-ssetCChecckedd(faalsee); ui-o
57、ppenBButtton-seetChheckked(truue); eelsee iff(a=0) uui-opeenBuuttoon-settCheeckeed(ffalsse); uui-clooseBButtton-seetChheckked(truue); void hummidiityWWidgget:chhanggeOnnCliickeed() sstruuct socckadddr_in peeer_aaddrr; bbzerro(&peeer_aaddrr,siizeoof(ppeerr_adddr); ppeerr_adddr.sinn_faamilly = AFF_INN
58、ET; ppeerr_adddr.sinn_poort = hhtonns(HHUMIIDITTY_PPORTT); ppeerr_adddr.sinn_adddr.s_aaddrr = ineet_aaddrr(HUUMIDDITYY_IPP); iint typpe=11; ssenddto(sfdd,&ttypee,siizeoof(ttypee),00,(sstruuct socckadddr*)&ppeerr_adddr,sizzeoff(peeer_adddr); iint a=11; ssenddto(sfdd,&aa,siizeoof(aa),00,(sstruuct socc
59、kadddr*)&ppeerr_adddr,sizzeoff(peeer_adddr);void hummidiityWWidgget:chhanggeOfffCllickked() sstruuct socckadddr_in peeer_aaddrr; bbzerro(&peeer_aaddrr,siizeoof(ppeerr_adddr); ppeerr_adddr.sinn_faamilly = AFF_INNET; ppeerr_adddr.sinn_poort = hhtonns(HHUMIIDITTY_PPORTT); ppeerr_adddr.sinn_adddr.s_aadd
60、rr = ineet_aaddrr(HUUMIDDITYY_IPP); iint typpe=11; ssenddto(sfdd,&ttypee,siizeoof(ttypee),00,(sstruuct socckadddr*)&ppeerr_adddr,sizzeoff(peeer_adddr); iint a=00; ssenddto(sfdd,&aa,siizeoof(aa),00,(sstruuct socckadddr*)&ppeerr_adddr,sizzeoff(peeer_adddr);void hummidiityWWidgget:adddBttnCllickked() i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年時尚行業(yè)3D建模服裝設(shè)計報告
- 《基于患者依從性評價的PCI術(shù)后心臟康復治療優(yōu)化方案研究》教學研究課題報告
- 現(xiàn)代農(nóng)田輸電技術(shù)方案文本
- 木工作品創(chuàng)作流程指導手冊
- 急診重癥醫(yī)學一體化建設(shè)方案
- 醫(yī)療器械使用和維護培訓教材
- 醫(yī)療器械采購流程標準操作程序
- 移動應用開發(fā)項目計劃書及風險管理
- 高校班主任工作經(jīng)驗交流稿
- 機械制造企業(yè)安全操作規(guī)程大全
- 2026年度黑龍江省生態(tài)環(huán)境廳所屬事業(yè)單位公開招聘工作人員57人筆試備考試題及答案解析
- 復工復產(chǎn)安全知識試題及答案
- 能源集團有限責任公司全員安全生產(chǎn)責任制匯編
- 抗VEGF治療后黃斑水腫復發(fā)的再干預策略
- 中燃魯西經(jīng)管集團招聘筆試題庫2026
- 2025山東春宇人力資源有限公司招聘醫(yī)療事業(yè)單位派遣制工作人員筆試模擬試題及答案解析
- 資產(chǎn)接收協(xié)議書模板
- 樓頂發(fā)光字安裝工藝方案
- 2025年產(chǎn)科危重癥技能考試題庫及答案
- 婦產(chǎn)科手術(shù)麻醉規(guī)課件
- 2025年福建省高考生物試卷真題(含答案解析)
評論
0/150
提交評論