亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        短距離無線網(wǎng)的一個教學實驗設計

        2020-06-30 10:13:47錢光明易超
        計算機時代 2020年6期
        關鍵詞:同步

        錢光明 易超

        摘? 要: 物聯(lián)網(wǎng)相關課程的實驗及演示非常重要。文章以nRF24L01無線模塊和STM32F103單片機組成基本無線節(jié)點,設計教學模板程序,對同步和輪轉(zhuǎn)發(fā)包這樣的基本通信手段進行實驗。實驗強調(diào)軟件和硬件相結合,需要學生從細節(jié)入手,充分理解相關原理,有助于他們真正認識無線網(wǎng)絡中相關重要概念的基本實現(xiàn)。

        關鍵詞: 同步; 基本無線節(jié)點; 自動應答; 輪轉(zhuǎn)發(fā)包

        中圖分類號:TP393.1? ? ? ? ? 文獻標識碼:A? ? ?文章編號:1006-8228(2020)06-109-03

        Abstract: The experiment and demonstration of Internet of Things related courses are very important. In this paper, with a basic wireless node consisted of nRF24L01 wireless module and STM32F103 single-chip microcomputer, the teaching template program is designed to carry out the experiments on the basic communication methods such as synchronization and packet delivery with round robin. The experiment emphasizes the combination of software and hardware, and students need to start with details and fully understand the relevant principles, which is helpful for them to truly understand the basic implementation of the relevant important concepts in wireless networks.

        Key words: synchronization; basic wireless node; auto acknowledgment; round robin delivery

        0 引言

        關于短距離無線網(wǎng)課程內(nèi)容的安排,有些學校偏向于介紹藍牙和ZigBee等多種協(xié)議,而這些協(xié)議有的其實非常復雜[1]。課堂上堆積太多的理論和協(xié)議文件,有時會損害學生的學習興趣。并且,相關實驗教學的內(nèi)容,也不宜只注重于協(xié)議的高層。較底層的教學演示和典型無線原理的底層實現(xiàn),對于引導學生、啟發(fā)學生、提高學生興趣來說,無疑是至關重要的。我們用淘寶網(wǎng)購的nRF24L01無線模塊和STM32F103RCT6單片機組成價格實惠的基本無線節(jié)點(下稱基本節(jié)點) [2-3],針對同步和輪轉(zhuǎn)發(fā)包等基本的通信手段,設計了相應的教學模板程序和演示實驗。

        1 實驗設計

        1.1 網(wǎng)絡基本組成和工作方式

        圖1是實驗用簡單無線局域網(wǎng)示意圖,一個主節(jié)點,三個從節(jié)點。主節(jié)點和每一個從節(jié)點的硬件組成(一個基本節(jié)點)完全相同,如節(jié)點2所示,即nRF24L01無線模塊通過SPI總線與單片機STM32F103RCT6相接。

        三個從節(jié)點以輪轉(zhuǎn)方式向主節(jié)點發(fā)送數(shù)據(jù)包。輪轉(zhuǎn)方式是網(wǎng)絡通信的一種傳統(tǒng)方式[4-5],看似簡單,不過首先就需要節(jié)點同步。

        通電后,網(wǎng)絡首先進入同步階段。這一階段中,每個節(jié)點的nRF24L01均設置為 “非自動應答”方式,即不能自動應答[2]。每個從節(jié)點一開始處于等待狀態(tài)(nRF24L01置于無線接收方式),即等待主節(jié)點發(fā)來同步包。從節(jié)點成功接收同步包后,就認為同步階段結束。主節(jié)點成功發(fā)送同步包后,也認為同步階段結束。

        同步階段之后,進入數(shù)據(jù)發(fā)送階段,每個從節(jié)點以一定時間間隔輪流向主節(jié)點發(fā)送數(shù)據(jù)包。在這一階段,每個節(jié)點的nRF24L01可以設置為“非自動應答”方式,也可以設置為“自動應答”方式?!白詣討稹钡闹饕硎牵喊l(fā)送方(本階段為從節(jié)點)發(fā)包后,接收方(本階段為主節(jié)點)如果接收無誤,則硬件自動快速地產(chǎn)生一個簡短的應答包(ACK包)并發(fā)出,發(fā)送方收到該ACK包后,就認為本次發(fā)送成功,并可產(chǎn)生中斷。

        1.2 “非自動應答”方式的輪轉(zhuǎn)發(fā)包

        采用“非自動應答”方式通信時,節(jié)點中nRF24L01的設置相對簡單,如表1所示。這里還要用到nRF24L01中的“管道”概念[2]。在同步階段,所有從節(jié)點使用的都是管道0。而在數(shù)據(jù)發(fā)送階段,主節(jié)點也使用管道0來接收來自從節(jié)點0、從節(jié)點1和從節(jié)點2的數(shù)據(jù)包。

        表1中的英文縮寫含義參見文獻[2]。例如,節(jié)點的無線地址寬度寄存器表示為SETUP_AW,選擇地址寬度為5字節(jié)就使SETUP_AW=0x03,如主節(jié)點在同步階段的5字節(jié)發(fā)送地址為0xE7E7E7E7E7。又如,EN_AA代表硬件自動應答寄存器。采用“非自動應答”方式,主從節(jié)點都設EN_AA=0x00。

        關于輪轉(zhuǎn)的時間,可以如圖2所示安排:同步后,從節(jié)點0立即發(fā)出數(shù)據(jù)包,而對于從節(jié)點1和2,同步后要分別等待T和2T時間后,才發(fā)出各自的數(shù)據(jù)包。數(shù)據(jù)包負載的第一個字節(jié)設計為節(jié)點的編號,以便主節(jié)點區(qū)分數(shù)據(jù)來自哪一從節(jié)點。利用串口調(diào)試助手,可以直觀地演示出實驗結果,主節(jié)點情況如圖3所示。圖3中,同步正確后從節(jié)點即輪流發(fā)包,圖中數(shù)字40代表nRF24L01的狀態(tài)寄存器STATUS中6號位為1,即接收數(shù)據(jù)準備好標志RX_DR有效。

        1.3 “自動應答”方式的輪轉(zhuǎn)發(fā)包

        圖2中沒有設計應答包(ACK包),從節(jié)點發(fā)送完數(shù)據(jù)包后,不知道主節(jié)點到底收到了沒有。而如果采用“自動應答”方式,發(fā)送方可以較快速地知道對方是否已正確收包,程序中不需要專門準備ACK包。按照nRF24L01的設計,采用同一個頻率通道,一個主節(jié)點可以接收來自六個從節(jié)點的數(shù)據(jù)包。如表2是相關的參數(shù)設置。

        表2與表1的差異主要在數(shù)據(jù)發(fā)送階段。表2中,主節(jié)點收到任一從節(jié)點的數(shù)據(jù)包后都要硬件自動應答(發(fā)ACK包),故設EN_AA=0x07,并且,從節(jié)點通過管道0發(fā)出數(shù)據(jù)包后需要等待這樣的ACK包,需要使能其管道0的自動應答,所以EN_AA=0x01。三個從節(jié)點都使用管道0來接收ACK包,接收地址就是各自的發(fā)送地址,這幾個地址對于這幾個從節(jié)點是不一樣的,主節(jié)點可以據(jù)此判斷數(shù)據(jù)包來自哪一從節(jié)點,而不需要如表1那樣在數(shù)據(jù)包負載中作專門安排。另外,主節(jié)點管道2的接收地址與管道1的只差一個低8位,寫入寄存器RX_ADDR_P2時只需寫入這一個字節(jié)。

        類似地,“自動應答”方式的輪轉(zhuǎn)設計和主節(jié)點串口助手演示分別如圖4和圖5。圖4與圖2的不同在于每個節(jié)點都要處理ACK包。例如,發(fā)出一個數(shù)據(jù)包后從節(jié)點如果沒收到ACK包,則認為本次發(fā)送不成功。圖5中的數(shù)字40、42和44則分別是接收三個從節(jié)點數(shù)據(jù)包后,主節(jié)點nRF24L01中STATUS寄存器的值。高位4表示RX_DR=1,低位0、2和4分別表示管道0、管道1和管道2。

        2 結束語

        文中基于無線芯片nRF24L01,以“非自動應答”和“自動應答”方式,實現(xiàn)了一個簡單的四節(jié)點星型網(wǎng)。通過串口調(diào)試助手軟件,可以較直觀地演示輪轉(zhuǎn)發(fā)包和收包效果。教學實踐中激發(fā)了學生的學習興趣,并促使學生較好地體會了同步、定時、輪轉(zhuǎn)調(diào)度等基本原理的實現(xiàn)。文中的節(jié)點硬件構成簡單、經(jīng)濟實惠,并且可設計進一步的拓展實驗。例如,可以通過設定SETUP_RETR為非零值,來設置自動重發(fā)次數(shù)和改變?nèi)笔〉淖詣又匕l(fā)延遲。還可以進行以競爭方式實現(xiàn)收發(fā)包的實驗等。

        參考文獻(References):

        [1] Bluetooth SIG Proprietary. BLUETOOTH CORESPECIFICATION Version: 5.2[Z].https://www.bluetooth.com,2019.

        [2] Nordic Semiconductors. nRF24L01+Single Chip 2.4GHzTransceiver Product Specification v1.0[Z]. https://infocenter.nordicsemi.com,2008.

        [3] STMicroelectronics.STM32F103xC STM32F103xDSTM32F103xE Datasheet production data[Z]. https://www.st.com,2018.

        [4] 肖敏.交換機及交換網(wǎng)仿真技術研究[D].湖南師范大學,2010.

        [5] 段敏.基于iSLIP算法的FIFO特性研究[D].湖南師范大學,2010.

        猜你喜歡
        同步
        素質(zhì)教育理念下藝術教育改革的思路
        政府職能的轉(zhuǎn)變與中國經(jīng)濟結構調(diào)整的同步
        商情(2016年42期)2016-12-23 14:26:58
        公共藝術與城市設計的協(xié)調(diào)與同步
        有源應答器DBPL解碼算法研究及FPGA實現(xiàn)
        一種新型雙軌同步焊接的焊接裝置
        讓思維訓練與口才訓練同時進行
        汽車空調(diào)產(chǎn)品的協(xié)同開發(fā)探討
        “四化”同步發(fā)展的實證檢驗及實現(xiàn)路徑研究
        軟科學(2015年10期)2015-10-28 02:28:08
        冠修復與根管同步治療隱裂牙牙髓病的臨床研究
        時間統(tǒng)一系統(tǒng)秒同步故障遠程預警系統(tǒng)設計
        一区二区三区国产精品| 免费看黑人男阳茎进女阳道视频| 日本爽快片18禁免费看| 国产一级毛片卡| 亚洲综合天堂av网站在线观看| 国产在线视频91九色| 被黑人猛烈30分钟视频| 国产视频毛片| 精品国产亚洲人成在线观看| 国产日产韩国av在线| 国产精品国产三级国av在线观看| 欧美日韩国产综合aⅴ| 日本不卡一区二区三区在线| 日本女优在线一区二区三区| 东北妇女xx做爰视频| 在线观看av手机网址| 亚洲无av码一区二区三区| 一本无码中文字幕在线观| 午夜精品久久久久久中宇| 亚洲AV永久无码精品一区二国| 日产国产精品亚洲高清| 婷婷丁香五月激情综合| 午夜亚洲www湿好大| 扒下语文老师的丝袜美腿| 中文字幕女优av在线| 亚洲成av人在线观看天堂无码| 欧美综合区| 久久国产精品免费一区二区三区| 人妻少妇久久中文字幕| 亚洲av无码成人黄网站在线观看| 精品人妻一区二区三区蜜桃 | 亚洲中文字幕久爱亚洲伊人| 大尺度极品粉嫩嫩模免费| 一本一道av无码中文字幕麻豆| 亚洲成av人最新无码| 丝袜美女美腿一区二区| 日韩av无码社区一区二区三区| 国产又色又爽无遮挡免费| jiZZ国产在线女人水多| 亚洲最大中文字幕在线| 军人粗大的内捧猛烈进出视频|