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

正文內(nèi)容

棉田無(wú)線(xiàn)傳感器網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文-資料下載頁(yè)

2025-08-18 09:52本頁(yè)面

【導(dǎo)讀】專(zhuān)業(yè)年級(jí):電子信息工程2020級(jí)。完成日期:2020年6月6日

  

【正文】 、一個(gè) 10 腳下載和仿真接口、復(fù)位按鍵。 終端節(jié)點(diǎn)軟件設(shè)計(jì) 終端節(jié)點(diǎn)要與傳感器通信,所以要軟件模擬單總線(xiàn)( Single Wire)的時(shí)序,收發(fā)單總線(xiàn)協(xié)議的命令和數(shù)據(jù)。另外要與協(xié)調(diào)器通信,同時(shí)要監(jiān)控網(wǎng)絡(luò)狀態(tài),當(dāng)網(wǎng)絡(luò)發(fā)生異常時(shí),需要嘗試自動(dòng)恢復(fù)。另外,由于每個(gè) ZigBee 網(wǎng)絡(luò)中采用樹(shù)狀網(wǎng)絡(luò),所以部分節(jié)點(diǎn)需要轉(zhuǎn)發(fā)數(shù)據(jù)包,扮演路由器的角色。終端節(jié)點(diǎn)需要在通過(guò)軟件在空閑時(shí)進(jìn)入低功耗狀態(tài)以實(shí)現(xiàn)功耗的降低。 終端節(jié)點(diǎn)的程序編寫(xiě)是基于 ZSTACK 協(xié)議棧的, ZSTACK 本身就是基于RTOS 構(gòu)建的,其內(nèi)部包含了消息處理、消息隊(duì)列、消息發(fā)送等完整的消息驅(qū)動(dòng)編程模型 [11]。編程時(shí),需要通過(guò)協(xié)議棧的接口建立用戶(hù)任務(wù),然后為目標(biāo)消息注信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 31 冊(cè)處理函數(shù),對(duì)消息進(jìn)行捕獲處理。一般消息有三個(gè)來(lái)源:網(wǎng)絡(luò)協(xié)議棧消息,如網(wǎng)絡(luò)狀態(tài)改變、收到數(shù)據(jù)、加入網(wǎng)絡(luò)等;外部消息,如按鍵消息、 AD 轉(zhuǎn)換完成消息等;定時(shí)事件消息,由用戶(hù)事先開(kāi)啟的定時(shí)器觸發(fā)的事件消息,比如要每隔2 秒周期性的采集數(shù)據(jù),則可以定義一個(gè)定時(shí)器事件,其觸發(fā)間隔為 2 秒,并同時(shí)指定其事件處理函數(shù),捕獲處理事件消息。以上是一個(gè)大致的流程,在協(xié)議棧中具體編程時(shí), 通常需要事先建立一個(gè)任務(wù),因?yàn)閰f(xié)議棧以任務(wù)為單位維護(hù)消息隊(duì)列,即每個(gè)任務(wù)有一個(gè)消息隊(duì)列。所以事先要建立一個(gè)任務(wù),所有注冊(cè)的消息都會(huì)投遞到該任務(wù)的消息隊(duì)列中,等到該任務(wù)執(zhí)行時(shí),會(huì)調(diào)用該任務(wù)的消息處理函數(shù)對(duì)消息隊(duì)列中的未處理消息進(jìn)行處理。 下面通過(guò)對(duì)代碼的分析具體說(shuō)明協(xié)議棧的工作原理和流程: 入口函數(shù) ZMain,調(diào)用各部分初始化函數(shù) 創(chuàng)建任務(wù)隊(duì)列,進(jìn)行任務(wù)初始化 上圖代碼是協(xié)議棧任務(wù)創(chuàng)建函數(shù),其首先定義了一個(gè)任務(wù) ID 號(hào)變量,其值從 0void osalInitTasks( void ) { uint8 taskID = 0。 tasksEvents = (uint16 *)osal_mem_alloc( sizeof( uint16 ) * tasksCnt)。 osal_memset( tasksEvents, 0, (sizeof( uint16 ) * tasksCnt))。 macTaskInit( taskID++ )。 nwk_init( taskID++ )。 Hal_Init( taskID++ )。 if defined( MT_TASK ) MT_TaskInit( taskID++ )。 endif APS_Init( taskID++ )。 if defined ( ZIGBEE_FRAGMENTATION ) APSF_Init( taskID++ )。 endif ZDApp_Init( taskID++ )。 if defined ( ZIGBEE_FREQ_AGILITY ) || defined ( ZIGBEE_PANID_CONFLICT ) ZDNwkMgr_Init( taskID++ )。 endif GenericApp_Init( taskID )。 } 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 32 開(kāi)始,依次分配給各任務(wù) ,每次非配后自加 1,這樣所有的任務(wù)都得到了初始化,并且都有一個(gè)任務(wù) ID(TaskID)與之相關(guān)聯(lián),這個(gè) TaskID 是全局范圍類(lèi)分辨各任務(wù)的唯一標(biāo)示。各個(gè)任務(wù)的初始化函數(shù)由用戶(hù)創(chuàng)建任務(wù)之前定義好,其內(nèi)部一般進(jìn)行任務(wù)相關(guān)的初始化操作。從上面的代碼中我們可以看到,協(xié)議棧本身創(chuàng)建了多個(gè)任務(wù),用于處理網(wǎng)絡(luò) (macTask,nwk,aps,apsf)、硬件 (hal)、監(jiān)測(cè)與控制 (mt_task),最后是用戶(hù)自定義任務(wù) GenericApp 的初始化。其內(nèi)容如下: 可 以看到,該任務(wù)初始化函數(shù)首先進(jìn)行了任務(wù) ID 的設(shè)置,然后進(jìn)行了一些初始化操作和設(shè)置,然后最后四行都是注冊(cè)函數(shù)。首先向應(yīng)用程序框架注冊(cè)了一個(gè)端點(diǎn) (endpoint),這里端點(diǎn) (endpoint)的概念類(lèi)似于其他地方所說(shuō)的端口的含義,然后向系統(tǒng)注冊(cè)了所有的按鍵消息,此處注冊(cè)時(shí)傳入了當(dāng)前任務(wù)的任務(wù)ID(TaskID),按鍵觸發(fā)后首先是有 hal 任務(wù) (硬件抽象層任務(wù) )進(jìn)行處理的,硬件抽象層任務(wù)根據(jù) TaskID 將按鍵消息投遞到注冊(cè)了按鍵消息的任務(wù)的消息隊(duì)列中。最后兩行注冊(cè)了兩個(gè)網(wǎng)絡(luò)消息,分別處理收到的 End_Device_Bind_rsp 和void GenericApp_Init( uint8 task_id ) { GenericApp_TaskID = task_id。 GenericApp_NwkState = DEV_INIT。 GenericApp_TransID = 0。 = (afAddrMode_t)AddrNotPresent。 = 0。 = 0。 = GENERICAPP_ENDPOINT。 = amp。GenericApp_TaskID。 = (SimpleDescriptionFormat_t *)amp。GenericApp_SimpleDesc。 = noLatencyReqs。 afRegister( amp。GenericApp_epDesc )。 // 注冊(cè)所有的按鍵消息 RegisterForKeys( GenericApp_TaskID )。 ZDO_RegisterForZDOMsg( GenericApp_TaskID, End_Device_Bind_rsp )。 ZDO_RegisterForZDOMsg( GenericApp_TaskID, Match_Desc_rsp )。 } 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 33 Match_Desc_rsp 消息。 在任務(wù)中注冊(cè)消息,指定消息處理函數(shù),進(jìn)行消息處理 如上圖所示,各消息在任務(wù)的消息處理函數(shù)中得到處理。 uint16 GenericApp_ProcessEvent( uint8 task_id, uint16 events ) { afIningMSGPacket_t *MSGpkt。 afDataConfirm_t *afDataConfirm。 // Data Confirmation message fields byte sentEP。 ZStatus_t sentStatus。 byte sentTransID。 // This should match the value sent (void)task_id。 // Intentionally unreferenced parameter if ( events amp。 SYS_EVENT_MSG ) { MSGpkt = (afIningMSGPacket_t *)osal_msg_receive( GenericApp_TaskID )。 while ( MSGpkt ) { switch ( MSGpkt ) { case GenericApp_ProcessZDOMsgs( (zdoIningMsg_t *)MSGpkt )。 break。 case GenericApp_HandleKeys( ((keyChange_t *)MSGpkt)state, ((keyChange_t *)MSGpkt)keys )。 break。 //返回未處理的消息 return (events ^ SYS_EVENT_MSG)。 } ?? ?? ?? // 丟棄位置消息 return 0。 } 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 34 第四章、 總結(jié) 我們通過(guò)長(zhǎng)達(dá)幾個(gè)月的制作和學(xué)習(xí),初步完成了系統(tǒng)的硬件和部分軟件的編寫(xiě),在這個(gè)過(guò)程中,我們收獲非常大。首先在硬件制作上,我們從頭至尾制作了將近五六十塊電路板,最終的成品硬件電路共有近 20 塊,所有的電路板都是使用熱轉(zhuǎn)印方式手工制作完成。通過(guò)完成這些硬件電路的設(shè)計(jì)和制作,我們對(duì)于電路及 其工作原理的理解進(jìn)一步加深了,很多問(wèn)題原先只是一個(gè)概念上的理解,而現(xiàn)在,有了切身的體會(huì)和認(rèn)識(shí),比如,上拉電阻,通過(guò)解決幾次電路故障,使得我們對(duì)于什么時(shí)候該用上拉電阻、以及它的作用這些問(wèn)題的認(rèn)識(shí)有了很大的提升,類(lèi)似的問(wèn)題還有很多,所以,雖然制作電路的過(guò)程繁雜甚至有些枯燥,但其中的樂(lè)趣和收獲還是值得我們的付出。 而軟件的編寫(xiě)也是類(lèi)似的,第一次嘗試將那么多的硬件集成到一起然后讓它們協(xié)調(diào)工作并不是一件很容易的事情,然而我們最終還是做到了至少是一些,并且學(xué)習(xí)到了該如何編寫(xiě)規(guī)范的軟件,尤其是這次試用 ZSTACK 來(lái)進(jìn)行 開(kāi)發(fā),研究 ZSTACK 的使用和工作原理對(duì)我們的啟發(fā)很大,我們很多單片機(jī)部分的程序編寫(xiě)都參考了 ZSTACK 很很多類(lèi)似的開(kāi)發(fā)框架的設(shè)計(jì)思路。同時(shí),通過(guò)閱讀這樣一個(gè)實(shí)際項(xiàng)目的代碼,我們也學(xué)習(xí)到了在一個(gè)比較大的項(xiàng)目中怎樣去劃分模塊組織代碼。 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 35 致謝 在本次畢業(yè)設(shè)計(jì)的實(shí)施過(guò)程中,很多老師和同學(xué)給了我們很多幫助,以及我們的指導(dǎo)老師田敏副教授,在此一并表示感謝。 在本次畢業(yè)設(shè)計(jì)的實(shí)施過(guò)程中,也使用到了許多開(kāi)源軟件,參考了許多來(lái)自網(wǎng)絡(luò)的資料,在此向這些軟件以及資料的作者們表示謝意。 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 36 參考文獻(xiàn) [1]孫利民 .無(wú)線(xiàn)傳感器網(wǎng)絡(luò) [M].上海 .2020. [2] CC253x SystemonChip Solution for IEEE and ZigBee174。 Applications User’ s Guide[S].Texas Instrument. . [3] ZStack User39。s Guide[S].Texas Instrument. . [4] DS1302 Datasheet[S].Dallas Semiconductor. . [5] ZStack Developer39。s Guide[S].Texas Instrument. . [6] STC12C5A60S2 系列單片機(jī)器件手冊(cè) [S].南通國(guó)芯微電子科技 有限公司 . . [7] PCA82C250 Datasheet[M].Philips . [8] SIM900A 硬件設(shè)計(jì)手冊(cè) [S].上海 SIMCOM 公司 .. [9] MAX485 Datasheet[S].Maxim . [10] DHT11 數(shù)據(jù)手冊(cè) .廣東奧松公司 .. [11] ZStack API[S].Texas . [12]崔遜學(xué) ,左從菊 .無(wú)線(xiàn)傳感器網(wǎng)絡(luò)簡(jiǎn)明教程 [M].北京 :清華大學(xué)出版社 ,2020. [13]肖俊芳 . 無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的若干關(guān)鍵技術(shù)研究 . 上海交通大學(xué)工學(xué)博士學(xué)位論文 ,2020. [14]馬建慶 .無(wú)線(xiàn)傳感器網(wǎng)絡(luò)安全的關(guān)鍵技術(shù)研究 .上海 :復(fù)旦大學(xué)計(jì)算機(jī)信息與技術(shù)系 ,2020. [15]鄧安遠(yuǎn) ,于林峰 .無(wú)線(xiàn)傳感器網(wǎng)絡(luò)傳輸協(xié)議研究進(jìn)展 .科技傳播 ,2020. [16]楊卓靜 ,孫宏志 ,任晨虹 . 無(wú)線(xiàn)傳感器網(wǎng)絡(luò)應(yīng)用技術(shù)綜述 , 中國(guó)科技信息 ,2020. [17]陳海光 .無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中若干安全問(wèn)題研究 .復(fù)旦大學(xué)博士學(xué)位論文, 2020. [18]劉濤,趙計(jì)生.基于 ZigBee技術(shù)的農(nóng)田自動(dòng)節(jié)水灌溉系統(tǒng).測(cè)控技術(shù). 2020, 27(2):95— 99. [19]張杰,黎耀貴,楊冬升.現(xiàn)代農(nóng)業(yè)節(jié)水灌溉自動(dòng)控制系統(tǒng)設(shè)計(jì)方案分析與選擇 [J].中國(guó)水運(yùn). 2020: 8(3): 145146. [20]回楠木, 喬曉軍,王成. ZigBee無(wú)線(xiàn)農(nóng)田采集控制系統(tǒng)的實(shí)現(xiàn)方案 [J].農(nóng)機(jī)化研究. 2020, 2: 6366. 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 37 附錄 手持節(jié)點(diǎn)原理圖及 PCB 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 38 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 39 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 40 網(wǎng)關(guān)原理圖及其 PCB 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 41 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 42 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 43 信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 44 無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)原理圖及 PCB
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1