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

正文內(nèi)容

智能家居系統(tǒng)設(shè)計與實現(xiàn)-資料下載頁

2025-06-30 03:19本頁面
  

【正文】 r FAR *name,int namelen )?! ∑渲衧為被操作的Socket對象,name是ARM端的IP地址。namelen為IP地址的長度?! ≡诒O(jiān)聽網(wǎng)絡(luò)部分,ARM服務(wù)器端建立一個監(jiān)聽隊列來接受客戶端的連接請求。listen()函數(shù)可以完成這一操作。int PASCAL FAR listen( SOCKET s, int backlog )。s為要操作的Socket;backlog為最大連接數(shù),在系統(tǒng)中設(shè)置為8。在客戶端發(fā)出連接請求時,ARM客戶端調(diào)用accept()函數(shù),從而完成完整的連接操作。在智能家居系統(tǒng)的軟件設(shè)計中,將監(jiān)聽以太網(wǎng)通過一個線程來實現(xiàn)。SHAPE \* MERGEFORMAT圖428 TCP讀線程工作流程   PC端視頻監(jiān)控模塊  該模塊采用Delphi7 企業(yè)版編寫,它是由Borland公司推出的全新的可視化編程環(huán)境,是快速、方便的桌面Windows應(yīng)用程序開發(fā)的工具之一[9]。它綜合了Windows的圖形界面的許多特性和設(shè)計思想,采用了面向?qū)ο缶幊陶Z言。在Delphi中,提供了包含TCP通信控件在內(nèi)的許多控件使開發(fā)人員能夠快速構(gòu)建和實現(xiàn)應(yīng)用軟件系統(tǒng)。基于這一特點,PC客戶端采用Delphi編寫?! C端處于TCP/IP網(wǎng)絡(luò)中的客戶端,它的網(wǎng)絡(luò)通信依靠Delphi中的TCPClient控件完成。TCPClient控件需要完成的操作是:1) 打開一個通信信道,連接到智能家居ARM服務(wù)器端的特定端口。2) 向服務(wù)器發(fā)送服務(wù)請求報文,等待并接收應(yīng)答,如此反復(fù)3) 請求結(jié)束后關(guān)閉通信通道并終止通訊。按照以下步驟建立好PC端視頻監(jiān)控程序的界面,如圖429所示,圖430所示的是客戶端工作流程。圖429 PC端視頻監(jiān)控程序界面A、打開Delphi7集成環(huán)境,系統(tǒng)自動新建一個工程。B、在窗體中拖入Standard控件工具箱的button控件三個,label控件2個,Edit控件兩個,Groupbox一個,Additional工具箱里的Image控件一個,Internet工具箱里的TCPClient控件一個。C、設(shè)置各控件屬性,如表410所示。表410 PC端視頻監(jiān)控軟件控件設(shè)置情況控件種類名稱屬性設(shè)置窗體主窗體caption:“視頻監(jiān)控PC端”按鈕設(shè)置caption:“設(shè)置”,name:“BtnSetting”開啟視頻caption:“開啟視頻”,name:“BtnOpenCamera”關(guān)閉視頻caption:“關(guān)閉視頻”,name:“BtnCloseCamera”標簽對方IP:caption:“對方IP:”,name:“Label1”對方端口:caption:“對方端口:”,name:“Label2”編輯框IPname:“txtIP”,text:“”端口name:“txtPort”,text:“9000”TCPClientHost:“”,Port:“9000”圖像框name:“VideoFrame”,height:“240”,width:“320”  其中,Image控件用于顯示視頻,它一次只顯示一幀靜態(tài)的圖象,因為人眼有視覺暫留效應(yīng),圖象的更新也比較快,所以人眼看起來是動態(tài)的圖象。界面中的文本框控件是為了能在對方的IP地址和端口號改變的情況下,通過輸入不同的IP號和端口號,再點擊設(shè)置按鈕,從而改變TCPClient控件的Host屬性(用于指定對方IP)和Port屬性(用于指定對方端口),再打開以太網(wǎng)通信通道,向ARM服務(wù)端進行連接請求。SHAPE \* MERGEFORMAT圖430 PC客戶端工作流程  在程序設(shè)計中采用了Delphi中的TJpegImage對象和TMemory對象。TMemory對象用于存儲TCP層發(fā)送給應(yīng)用層的數(shù)據(jù)包包含的數(shù)據(jù),在接收完數(shù)據(jù)包后,程序創(chuàng)建TJpegImage類型對象jpg,jpg通過LoadFromStream()方法裝載緩沖區(qū)中的數(shù)據(jù),最后在窗體上的VideoFrame圖片控件上顯示出來?! ?家電控制及傳感器模塊  在該模塊中,家電控制以及傳感器報警模塊依托89C51單片機豐富的I/O口完成。傳感器的報警狀態(tài)通過RS232串口向ARM發(fā)送相應(yīng)的字符串,由ARM端的應(yīng)用程序進行解析。類似的,ARM端通過串口發(fā)送指定格式的字符串到單片機串口,串口打開相應(yīng)的LED,以表示對應(yīng)的家電的電源的打開?! ?單片機串口的配置  在智能家居系統(tǒng)的家電控制板中,單片機的串行口通信采用10位為一幀的工作方式1。這10位中,共包括1個起始位、8位數(shù)據(jù)位和1個停止位[10]。起始位D0D1D2D3D4D5D6D7停止位圖431 單片機串行工作方式1的幀格式根據(jù)串口協(xié)議,串口工作方式1中的數(shù)據(jù)發(fā)送方法是在往發(fā)送寄存器(SBUF)中發(fā)送一條8位的數(shù)據(jù)后,由硬件自動地在它的前面加入起始位和在后面加上一個停止位,構(gòu)成完整的幀格式。數(shù)據(jù)從串口的TXD輸出,輸出完一幀數(shù)據(jù)后,TXD輸出線保持高電平,并且SCON寄存器的TI位被置位為1,通知CPU可以發(fā)送下一幀數(shù)據(jù)?! 〗邮諗?shù)據(jù)時,SCON寄存器的REN位被設(shè)為1,串口采樣RXD針腳,當RXD從高電平向低電平狀態(tài)跳變時,單片機識別出起始位到達,在移位脈沖的控制下,讀完數(shù)據(jù)位并且將其存入接收寄存器中,直到停止位到達,置位RI中斷標志位,單片機的CPU即可將數(shù)據(jù)取走?! ≡谥悄芗揖酉到y(tǒng)中,規(guī)定單片機的波特率為9600bps,這是為了與在應(yīng)用軟件中的串口設(shè)置相對應(yīng),使其能夠與ARM正常通信。波特率的大小由單片機的定時(計數(shù))器T1的計數(shù)溢出率決定。  在單片機擴展板中,計算定時器的計數(shù)初值: (41)其中smod=0,使波特率不倍增,PCON=00H?! τ诙〞r器1,選擇方式2作為其工作方式。這種工作方式將16位的計數(shù)器T1分成了兩部分,其中高8位TH1作為預(yù)置寄存器,在初始化時,將計數(shù)初值分別存入TH1和TL1中,即兩者內(nèi)容相同,當計數(shù)溢出時,預(yù)置寄存器TH1將計數(shù)初值直接給TL1加載,這樣就避免了在程序中反復(fù)地存儲計數(shù)初值,進一步的提高了定時的精度,保證了串行接口的波特率的穩(wěn)定,同時也是保證了串口通信的穩(wěn)定性?! ?串口通信的自定義約定  為了便于單片機與ARM之間的通訊信息的解析,特別定義了以下自定義的信息交流的格式約定?!  傳感器報警字符串,如圖432所示。$1報頭傳感器編號圖432 傳感器報警字符串格式  該字符串為傳感器報警時單片機向ARM串口發(fā)送的字符串,共四位,不同傳感器報警時,發(fā)送字符串的區(qū)別在于第四位。在家電控制板上,有三個按鈕模擬三個傳感器,即傳感器編號為3。如傳感器2報警時,發(fā)送“$2”字符串到ARM。B 家電控制字符串,如圖433所示。%1111報頭家電1標志位家電2標志位家電3標志位家電4標志位圖433 家電控制字符串格式  該控制字符串共五位,包含報頭‘%’字符和四位分別表示不同家電的標志位。要控制家電的電源開和關(guān),只要在對應(yīng)的位上進行置位(設(shè)為1)或重置(設(shè)為0)即可。如要啟動家電1和4,保持2和3的關(guān)閉狀態(tài),則向單片機發(fā)送“%1001”字符串即可。   單片機程序流程  單片機的程序采用C語言編寫。單片機的工作主流程如圖4所示。其中單片機的初始化包括對定時方式控制寄存器的初始化、對定時計數(shù)器1的初始化,串口工作方式的初始化以及波特率的設(shè)置等?! ≡趥鞲衅鳡顟B(tài)字符串信息的發(fā)送過程中,采用逐字發(fā)送的方式發(fā)送字符串。這是因為串口工作方式1的約束,每次發(fā)送的數(shù)據(jù)為8位,即一個字節(jié),亦即一個字符。當每次發(fā)送完一個字符,發(fā)送中斷標志位TI被置位為1時,再發(fā)下一個字符,直到四個字符發(fā)送完畢?! D434和圖435分別為單片機的主程序流程和查詢傳感器狀態(tài)的程序流程。NNNYYYNSHAPE \* MERGEFORMAT圖434 單片機工作主程序流程 圖435 單片機查詢傳感器狀態(tài)程序流程當串口有信息到達時,單片機進入串口中斷,運行中斷服務(wù)程序,工作流程如圖435所示。SHAPE \* MERGEFORMAT圖436 串口中斷服務(wù)程序流程   ARM端控制和報警流程SHAPE \* MERGEFORMAT圖437 ARM端控制和報警流程  在智能家具系統(tǒng)的ARM端應(yīng)用程序中,在報警狀態(tài)時,界面上的對應(yīng)的圖片控件會閃爍,即從綠色向紅色反復(fù)變換。圖片的閃爍采用VC++里的多媒體定時器Timer完成。在報警狀態(tài)時,啟動定時器,根據(jù)報警的標志全局變量的數(shù)值,對相應(yīng)的圖片控件進行一次顏色變換,當定時器到時時,觸發(fā)OnTimer()事件,再對對應(yīng)的圖片控件進行圖象的變換。  5 系統(tǒng)測試  PC操作系統(tǒng):Microsoft Windows XP Profesional SP2軟件開發(fā)及測試平臺: Visual Studio 2005 + XSBase270 SDK+ 嵌入式硬件平臺:XSBase270實驗箱嵌入式操作系統(tǒng)平臺:Microsoft Windows CE .net   測試步驟 ?。?)測試視頻捕捉和視頻遠程監(jiān)視模塊  將攝像頭插入XSBase270實驗箱的USB接口。打開電源按鈕,啟動Windows CE。操作系統(tǒng)識別到USB設(shè)備——即攝像頭,如圖51所示。稍后將安裝它的驅(qū)動程序。圖51 操作系統(tǒng)識別到USB設(shè)備  打開Windows CE的控制面板,如圖52所示。新建基于“COM2”端口的網(wǎng)絡(luò)連接——“我的連接”。該連接采用115200的波特率,數(shù)據(jù)位8位,停止位1位,無數(shù)據(jù)流控制,如圖53所示。并且在控制面板中的PC連接設(shè)置為“我的連接”。如圖54所示。圖52 Windows CE 控制面板圖53 “我的連接”的屬性圖54 修改默認的PC連接  將USB線插入位于XSBase270的擴展板上的USB_SLAVE口,另一端連接到PC機上的USB口。稍后,PC上的ActiveSync文件同步軟件即可自動識別到XSBase270移動設(shè)備。在Windows CE的任務(wù)欄上,出現(xiàn)“已連接”圖標,如圖55所示。在PC端,建立好PC跟XSBase270移動設(shè)備的合作關(guān)系。ActiveSync軟件上將顯示已同步字樣。如圖55所示。圖55 建立文件同步合作關(guān)系后的程序界面  ,并且在如圖51所示的的窗口中輸入“”,系統(tǒng)即可安裝好攝像頭的驅(qū)動?! ?,使視頻數(shù)據(jù)能夠正確的被PC接收。將標準的超五類線插入XSBase270主板上的以太網(wǎng)接口,另一端與PC的網(wǎng)卡接口相連接?! ±肰isual Studio 2005 。點擊運行,Visual Studio 。點擊“開始監(jiān)聽”按鈕。運行界面如圖56所示:圖56 智能家居軟件界面  在PC端打開視頻監(jiān)視工具。輸入正確的ARM端的IP和正確的端口,點擊“設(shè)置”按鈕,同時在ARM端點擊“打開攝像頭”,在PC端點擊“開始監(jiān)視”。即可在PC端看到ARM端上攝像頭捕捉到的圖象。如圖57所示。圖57 PC端視頻監(jiān)控畫面 ?。?)驗證CEncode類的可行性。  將屬于CEncode類的兩個文件——,利用VC++ 。通過該程序往手機發(fā)送短信,以及讀取手機SIM卡里的信息,以驗證CEncode類程序?qū)DU碼的解碼與編碼的可行性。測試程序的界面如圖58所示?! ⑹謾CSIM卡插入GSM模塊的卡槽,使用全功能串口線連接GSM模塊與PC機,插入模塊附帶的9V變壓器給模塊供電?! 訙y試軟件,設(shè)置好服務(wù)中心號碼和目標號碼,進行發(fā)送短信測試和讀取短信測試,結(jié)果證實該軟件與GSM模塊協(xié)同工作正常,CEncode類可用。圖58 PDU編碼解碼測試程序 ?。?)驗證家電控制板的可用性  使用標準串口線連接家電控制板與PC機。使用“串口調(diào)試助手”軟件進行對串口的讀寫操作。往家電控制板輸入形如“%0001”的字符串,觀察是否能啟動對應(yīng)的LED。同樣的,按對應(yīng)的“傳感器”按鈕,觀察PC機是否能收到正確的字符串。經(jīng)過測試,家電控制板能夠正常運行。  6總結(jié)與展望  經(jīng)過畢業(yè)設(shè)計,我了解到了嵌入式開發(fā)的基本流程,通過編寫眾多的程序,強化了自己的編程能力,加深了對計算機語言理論的理解?! ∫驗闀r間不足和精力不夠的原因,智能家居系統(tǒng)的功能設(shè)計還不夠完善,在未來時間充裕、技術(shù)更成熟的情況下,功能設(shè)計可以更加完善,如:(1)GSM模塊、家電控制板與ARM的協(xié)同合作(2)圖象捕捉算法的優(yōu)化,以太網(wǎng)數(shù)據(jù)傳輸?shù)膬?yōu)化。(3)用戶界面友好度的強化,用戶訪問權(quán)限和控制權(quán)限的設(shè)計。(4)系統(tǒng)的運行信息實時保存。如傳感器報警的記錄,用戶的登陸和控制的記錄等?! ÷暶鳌 ”救肃嵵芈暶鳎核式坏膶W(xué)位論文,除文中已經(jīng)注明引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表和撰寫過的作品成果。對本人的研究作出了重要貢獻的個人和集體,均已在本文中以明確方式標明。本人完全意識到本聲明的法律結(jié)果由本人承擔(dān)。個人含息參考文獻[1].[2].傅曦,齊宇.《嵌入式系統(tǒng)Windows CE開發(fā)技巧和實踐》[M].[3].張冬全,譚南林,王雪海,焦鳳川.《Windows CE實用開發(fā)技術(shù)》[M].[4]. for WinCE [M].2006,124[5].百度百科.[6].張冬全,譚南林,王雪海,焦鳳川.《Windows CE實用開發(fā)技術(shù)》[M].[7].車朝雄,趙彥敏. 基于串口的手機收發(fā)短信的設(shè)計方法[J]. 福建電腦,2006年,第2期:49頁至50頁[8].Jan [M] .[9].百度百科.[10].李廣弟,朱月秀,冷祖祁.《單片機基礎(chǔ)》[M].:163頁66 / 66
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1