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

        ?

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

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

        錢光明 易超

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

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

        1 實驗設計

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

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

        三個從節(jié)點以輪轉方式向主節(jié)點發(fā)送數(shù)據(jù)包。輪轉方式是網(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é)點)如果接收無誤,則硬件自動快速地產生一個簡短的應答包(ACK包)并發(fā)出,發(fā)送方收到該ACK包后,就認為本次發(fā)送成功,并可產生中斷。

        1.2 “非自動應答”方式的輪轉發(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。

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

        1.3 “自動應答”方式的輪轉發(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é)。

        類似地,“自動應答”方式的輪轉設計和主節(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)。通過串口調試助手軟件,可以較直觀地演示輪轉發(fā)包和收包效果。教學實踐中激發(fā)了學生的學習興趣,并促使學生較好地體會了同步、定時、輪轉調度等基本原理的實現(xiàn)。文中的節(jié)點硬件構成簡單、經(jīng)濟實惠,并且可設計進一步的拓展實驗。例如,可以通過設定SETUP_RETR為非零值,來設置自動重發(fā)次數(shù)和改變缺省的自動重發(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.

        猜你喜歡
        同步
        素質教育理念下藝術教育改革的思路
        政府職能的轉變與中國經(jīng)濟結構調整的同步
        商情(2016年42期)2016-12-23 14:26:58
        公共藝術與城市設計的協(xié)調與同步
        有源應答器DBPL解碼算法研究及FPGA實現(xiàn)
        一種新型雙軌同步焊接的焊接裝置
        讓思維訓練與口才訓練同時進行
        汽車空調產品的協(xié)同開發(fā)探討
        “四化”同步發(fā)展的實證檢驗及實現(xiàn)路徑研究
        軟科學(2015年10期)2015-10-28 02:28:08
        冠修復與根管同步治療隱裂牙牙髓病的臨床研究
        時間統(tǒng)一系統(tǒng)秒同步故障遠程預警系統(tǒng)設計
        国产精品日本一区二区三区在线| 免费无码成人av在线播放不卡| 欧美视频在线观看一区二区| 亚洲精品午夜精品国产| 亚洲一区二区综合精品| 亚洲av无码专区国产不卡顿| 男女啪啪免费体验区| 在线亚洲+欧美+日本专区| 国产三级精品三级在专区中文| 嗯啊好爽高潮了在线观看| 国产综合无码一区二区色蜜蜜| 亚洲AV永久无码精品导航| 中文字幕一区二区三区四区久久| 亚洲精一区二区三av| 极品av麻豆国产在线观看| 亚洲婷婷丁香激情| 成人免费播放片高清在线观看| 国产毛片av最新视频| 特级做a爰片毛片免费看108| 久久久国产精品福利免费| 青青草久久久亚洲一区| 色偷偷偷在线视频播放| 性欧美大战久久久久久久久| 亚洲第一区二区快射影院| 女优av一区二区在线观看| 一本大道无码人妻精品专区 | 一个色综合中文字幕人妻激情视频 | 成年人黄视频大全| 99精品国产成人一区二区在线| 国产精品精品国产色婷婷| 中文人妻熟妇乱又伦精品| 国产精品无码一区二区在线国| 日韩少妇高潮在线视频| 国产精品女主播福利在线| 欧美粗大猛烈老熟妇| 97在线视频免费| 精品国产免费一区二区久久| 四虎国产精品永久在线| 日韩精品大片在线观看| 亚洲国产综合性感三级自拍 | 亚洲av无码专区在线观看下载|