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

正文內(nèi)容

基于zigbee技術(shù)的智能家居安全監(jiān)控系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)(已改無錯(cuò)字)

2022-08-11 19:59:58 本頁面
  

【正文】 管理實(shí)體找到合適的信道,將為這個(gè)新網(wǎng)絡(luò)選擇一個(gè)PAN標(biāo)識(shí)符。為了選擇一個(gè)PAN標(biāo)識(shí)符,需要檢查PANID參數(shù)是否在NLMENETWORK.FORMATION.request原語中已指定。如果選定PANID與已存在的PANID不發(fā)生沖突,則這個(gè)m值就將成為新網(wǎng)絡(luò)的伴ND;否則,將為這個(gè)協(xié)調(diào)器模塊選擇一個(gè)隨機(jī)的PANID,只要不使它為廣播地址(0xFFFF)同時(shí)小于0x3FFF,并且它在所選擇的信道中所存在的網(wǎng)絡(luò)是唯一的。網(wǎng)絡(luò)層還要通過發(fā)出MLME.SET.request原語給MAC層來設(shè)置macPANId(0x50)屬性。 協(xié)調(diào)器網(wǎng)絡(luò)層的管理實(shí)體一旦選擇了一個(gè)PANID,將選擇一個(gè)等于0x0000的16位網(wǎng)絡(luò)地址,同時(shí)設(shè)置MAC層的PIB屬性為macShortAddress(0x53)。然后協(xié)調(diào)器網(wǎng)絡(luò)層的管理實(shí)體將向MAC層發(fā)出MLME.START.request原語啟動(dòng)新的個(gè)域網(wǎng)。個(gè)域網(wǎng)的啟動(dòng)狀態(tài)會(huì)通過MLME.START.confm原語返回到網(wǎng)絡(luò)層。整個(gè)流程如圖6.1所示。圖6.1建立網(wǎng)絡(luò)流程圖 家居監(jiān)控系統(tǒng)中的無線傳感網(wǎng)絡(luò)是由協(xié)調(diào)器管理整個(gè)ZigBee無線傳感網(wǎng)絡(luò)的。協(xié)調(diào)器負(fù)責(zé)zigBee無線網(wǎng)絡(luò)的建立、地址的分配和成員加入、節(jié)點(diǎn)設(shè)備數(shù)據(jù)的更新、數(shù)據(jù)采集、設(shè)備關(guān)聯(lián)表的維護(hù)并根據(jù)網(wǎng)路的狀況自動(dòng)更新。在星型網(wǎng)絡(luò)中,ZigBee無線傳感網(wǎng)絡(luò)只要求一個(gè)全功能節(jié)點(diǎn)做網(wǎng)絡(luò)協(xié)調(diào)器。要建立一個(gè)網(wǎng)絡(luò),第一個(gè)節(jié)點(diǎn)必須被配置成協(xié)調(diào)器,這樣才能管理以后添加到網(wǎng)絡(luò)的其它RFD節(jié)點(diǎn)。需要注意的是,這里網(wǎng)絡(luò)協(xié)調(diào)器與RFD節(jié)點(diǎn)(終端節(jié)點(diǎn))在下載程序時(shí),要通過編譯軟件選擇下載的節(jié)點(diǎn)設(shè)備。如圖6_3所示。本設(shè)計(jì)采用的是基于ZigBee/90215.4的CC2430的(精簡版)協(xié)議棧,精簡版協(xié)議棧全面支持FFD、RFD、ROUTER和COORD。在組網(wǎng)通信過程中,網(wǎng)絡(luò)協(xié)調(diào)器模塊的物理地址(Address)為:0xFFFFFFFFFFFFFFll,這是無法改變的;該星型網(wǎng)絡(luò)的默認(rèn)網(wǎng)絡(luò)號(hào)(DefaultPAN)為:0x00001347;該網(wǎng)絡(luò)默認(rèn)的頻道號(hào)(DcfaultChannel)為:Oxl4。整個(gè)組網(wǎng)過程中協(xié)議棧的初始化代碼如下:(1)物理層初始化Void phyInit(void){Memlnit0;//初始化化內(nèi)存phyState=PHY_STATE_IDLE;//物理層狀態(tài)是空閑phyAfib.flagsval=0;//物理層的PIB屬性的標(biāo)志位值)(2)MAC層初始化Void maclnit(void){macState=MAC_STATE_IDLE;macRxState=MAC_RXSTATE_IDLE;=0:=0:=0://接收數(shù)據(jù)幀尾=0;//接收數(shù)據(jù)幀頭=PANID=LRWPAN_DEFAULT_PANID;//設(shè)各所在PAN的自身的默認(rèn)標(biāo)識(shí)符Mac_pib.macMaxAckRetries=aMaxFrameRetries;//發(fā)送失敗后,確認(rèn)幀的最大重新發(fā)送次數(shù)mInitAddressMapO;//init theaddress mapifdef LRWPAN_COORDINATORmac__pib.depth=O;elsemac_pib.depth=1;//depth will be at beat oneendifmac_pib.bDepth=OxFF;∥該節(jié)點(diǎn)的信標(biāo)深度mac__pib.macCaplnfo=O;//其它性能ifdefLRWPAN_AlJ_COORDINATORLRWPAN_SET_CAPINFO_ALTPAN(mac_pib.macCaplnfo);endififdefLRWPAN_FFDLRWPAN_SET_CAPINFO_DEVTYPE(mac_pib.macCaplnfo);endififdefLRWPAN_ACMAIN_POWEREDLRWPAN_SET_CAPINFO_PWRSRC(mae__pib.macCaplnfo);endififdefLRWPAN_RCVR_ON_WHEN_IDLELRWPAN_SET_CAPINFO_RONIDLE(mac_pib.macCapInfo);endififdefLRWPAN—SECURITY_APABLELRWPAN_SET_CAPINFQSECURITY(mac_pib.macCapInfo);endifLRWPAN_SET_CAPINFO_ALLOCADDR(mac_pib.macCapIrrfo);//分配 短地址}(3)網(wǎng)絡(luò)層的初始化Void nwklnit(void){nwkDSN=O;//網(wǎng)絡(luò)層的數(shù)據(jù)序列編號(hào)為Onwk__pib.flags.val=O;nwkState=NWK_STATEIDLE;nwkRxState=NWK_RXSTATE_IDLE;ifdefLRWPAN_FFDnwk_pib.rxTail=O;nwk_pib.rxHead=O;endif}(4)應(yīng)用層的初始化Void apslnit(void){debug_level=0;apsState=APS_STATE_IDLE;apsRxState=APS_RXSTATE_IDLE;ifdefLRWPAN_COORDINATORaps_pib.rxCnt=0;//接收數(shù)據(jù)總數(shù)aps_pib.rxTail=0;apS』ib.rxHead=O;endifaps_pib.a(chǎn)psTSN=0;//服務(wù)節(jié)點(diǎn).=O;aps_pib.a(chǎn)pscAckWaitDuration=MSECS_TO MACTICKS(LRWPAN_APS_ACK_WAIT_DURATION);//convert to MAC Ticks.a(chǎn)psAckWaitMultiplier=1;//defaultvalueaps_pib.a(chǎn)pscMaxFrameRetries=LRWPAN_APS_MAX_FRAME_RETRIES;//initialize the endpointsaps_pib.a(chǎn)ctiveEPs=O;//only tracks user endpoints.phylnitO;maclnitO;nwklnit0;}由(4)可見,應(yīng)用層是最高層,它初始化的同時(shí),還要對(duì)它下面各層進(jìn)行初始化。網(wǎng)絡(luò)協(xié)調(diào)器建立網(wǎng)絡(luò)成功后,會(huì)從串13輸出信息“Network formed,waiting for RX”信息. 網(wǎng)絡(luò)建立成功后,需要添加終端設(shè)備(終端節(jié)點(diǎn))進(jìn)入這個(gè)網(wǎng)絡(luò)。允許設(shè)備同網(wǎng)絡(luò)連接的流程圖如圖6.5所示。終端設(shè)備通過發(fā)送NLME—JOIN.request原語來開始執(zhí)行孤點(diǎn)方式同網(wǎng)絡(luò)連接,其原語RejoinNetwork參數(shù)設(shè)置為TRUE。圖6.5終端節(jié)點(diǎn)加入網(wǎng)絡(luò)流程圖首先,終端設(shè)備的網(wǎng)絡(luò)層管理實(shí)體將請(qǐng)求MAC層對(duì)PHY層所規(guī)定的所有有效通信信道進(jìn)行孤點(diǎn)掃描。通過向MAC層發(fā)送MLME.SCAN.request原語開始進(jìn)行孤點(diǎn)掃描,其掃描的結(jié)果通過MLME.SCAN.confirm原語返回到網(wǎng)絡(luò)層管理實(shí)體。然后,如果該終端設(shè)備掃描到網(wǎng)絡(luò)協(xié)調(diào)器設(shè)備,網(wǎng)絡(luò)層管理實(shí)體將通過發(fā)送NLME.JOIN.Confirm原語向其上層報(bào)告請(qǐng)求連接,其原語的狀態(tài)參數(shù)設(shè)置為SUCCESS,否則設(shè)置為NO二NETWORKS。整個(gè)星型網(wǎng)絡(luò)的組網(wǎng)的軟件流程圖如圖6.6所示。圖6.6星型網(wǎng)絡(luò)組網(wǎng)流程圖當(dāng)網(wǎng)絡(luò)協(xié)調(diào)器正常工作后,則建立網(wǎng)絡(luò)成功。這時(shí)候再打開兩個(gè)或更多終端節(jié)點(diǎn),就能讓這些節(jié)點(diǎn)加入網(wǎng)絡(luò),從串口調(diào)試助手的窗口可以看到加入網(wǎng)絡(luò)成功的提示信息“Nodej6ined:”同時(shí)給出網(wǎng)絡(luò)分配給該節(jié)點(diǎn)的物理地址。如圖6.7所示。實(shí)物調(diào)試圖如圖6.8所示。6.2數(shù)據(jù)處理模塊中的以太網(wǎng)通信實(shí)現(xiàn)6.2.1 RTL8019驅(qū)動(dòng)程序設(shè)計(jì)RTL8019的驅(qū)動(dòng)程序設(shè)計(jì),就是對(duì)該芯片的工作寄存器進(jìn)行設(shè)置,RTL8019AS共有四頁寄存器組,每頁寄存器組有16個(gè)寄存器。各個(gè)寄存器的用法可以參考芯片的數(shù)據(jù)手冊(cè)【23l。RTL8019芯片的初始化函數(shù)的代碼如下:Void lnit8019(){Re900=0x21; //命令寄存器,使芯片處于停止模式,這時(shí)進(jìn)行寄存器設(shè) 置Delay_MS(10);∥延時(shí)lO毫秒,確保芯片進(jìn)入停止模式page(0);Re90a=0x00; //遠(yuǎn)程DMA字節(jié)計(jì)數(shù)寄存器清0Re90b=0x00; 臆程DMA字節(jié)計(jì)數(shù)寄存器清0Re90c=0xee;鵬受收配置寄存器,監(jiān)視模式,不接收數(shù)據(jù)包Re90d=0xe2;//發(fā)送配置寄存器,loopback模式Re901=0x4c;//接收頁開始寄存器,設(shè)置接收緩沖器開始頁的地址Re902=0x80;//接收頁結(jié)束寄存器,設(shè)置接收緩沖器終止頁的地址Re903=0x4c;//邊界寄存器,為防止接收緩沖器溢出而設(shè)Re904=0x40;//發(fā)送起始頁寄存器,此寄存器表明數(shù)據(jù)包被發(fā)送的起始 頁地址Re907=0xff;脯除所有中斷標(biāo)志位,中斷狀態(tài)寄存器Re90f=0x00;//中斷屏蔽寄存器清0,禁止中斷Re90e=0xC9;//數(shù)據(jù)配置寄存器,定義采用16位DMA接口方式page(1);∥在第1頁中設(shè)置Re907=0x4d;//現(xiàn)在頁寄存器,這個(gè)寄存器指向第一個(gè)接收緩沖器(用來接收數(shù)據(jù)包)頁的頁地址Re908=0x00;//廣播地址寄存器Re909=0x00;//廣播地址寄存器RegOa=Ox00;∥廣播地址寄存器Re90b=0x00;//廣播地址寄存器Re90c=0x00;//廣播地址寄存器Re90d=0x00;//廣播地址寄存器Re90e=0x00;//廣播地址寄存器Re90f=0x00;∥廣播地址寄存器Re900=0x22;//命令寄存器,這時(shí)讓芯片開始工作Re901=MAC_sel£addr2 1;//物理地址寄存器,包含了以太網(wǎng)節(jié)點(diǎn)地址.Re902=MA∞elf.a(chǎn)ddr2_l8;Re903=MAc_self.a(chǎn)ddr4_3;Re904=MA∞elf.a(chǎn)ddr4_38;Re905=MACjelf.a(chǎn)ddr6_5;Re906=MAC_self.a(chǎn)ddr6_58;page(0);//再次切換到第0頁設(shè)置Re90c=0xde;//將芯片設(shè)置成正常模式,跟外部網(wǎng)絡(luò)連接Re90d=0xe0;//發(fā)送配置寄存器Re900=0x22;//命令寄存器啟動(dòng)芯片開始工作Re907=0xff;//i青除所有中斷標(biāo)志位6.2.2 ARP協(xié)議的實(shí)現(xiàn)ARP地址解析協(xié)議是將口地址與網(wǎng)絡(luò)物理地址一一對(duì)應(yīng)的協(xié)議。在DSP芯片中實(shí)現(xiàn)ARP協(xié)議,就是通過開一個(gè)固定大小的內(nèi)存棧作為CACHE,這個(gè)內(nèi)存棧維護(hù)一個(gè)P地址到物理地址的映射表,這個(gè)棧能響應(yīng)對(duì)方ARP請(qǐng)求,即在遠(yuǎn)方主機(jī)探求自己的硬件地址時(shí),能夠發(fā)送一個(gè)ARP響應(yīng)分組,告訴對(duì)方自己的硬件地址,同時(shí)在內(nèi)存棧中根據(jù)對(duì)方的IP地址查詢物理地址時(shí),如果沒有相應(yīng)的映射,就記錄下對(duì)方的口地址和硬件地址,為以后發(fā)送口分組做準(zhǔn)備。這個(gè)內(nèi)存棧由一個(gè)時(shí)鐘來控制,如果網(wǎng)絡(luò)長時(shí)間沒有活動(dòng),就把這一條記錄刪掉,以便節(jié)省內(nèi)存。這個(gè)內(nèi)存棧在不知道對(duì)方網(wǎng)絡(luò)硬件地址時(shí),一樣可以發(fā)一個(gè)ARP請(qǐng)求,并且能對(duì)ARP響應(yīng)進(jìn)行解析,記錄下對(duì)方的IP地址和硬件地址。這樣雙方就可以進(jìn)行網(wǎng)絡(luò)通信了。ARP協(xié)議實(shí)現(xiàn)的部分代碼如下:Void ArpRequest(structipaddr*ip) //ARP請(qǐng)求{LoadEnetHrd(RequestArp,ARP);LoadArp(ip,RequestArp);SendFrame(TxNetBuf,30);}Void ArpAnswer(structipaddr*ip)//ARP應(yīng)答{LoadEnetHrd(AnswerArp,ARP);LoadArp(ip,AnswerArp);SendFrame(TxNetBuf,30);}6.2.3 IP協(xié)議的實(shí)現(xiàn) IP協(xié)議是TCP/IP協(xié)議棧中最核心的協(xié)議。IP數(shù)據(jù)報(bào)的格式分為報(bào)頭區(qū)和數(shù)據(jù)區(qū)兩部分,數(shù)據(jù)區(qū)包括高層協(xié)議需要傳
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1