999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

短距離無線網的一個教學實驗設計

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

錢光明 易超

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

關鍵詞: 同步; 基本無線節點; 自動應答; 輪轉發包

中圖分類號: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 引言

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

1 實驗設計

1.1 網絡基本組成和工作方式

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

三個從節點以輪轉方式向主節點發送數據包。輪轉方式是網絡通信的一種傳統方式[4-5],看似簡單,不過首先就需要節點同步。

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

同步階段之后,進入數據發送階段,每個從節點以一定時間間隔輪流向主節點發送數據包。在這一階段,每個節點的nRF24L01可以設置為“非自動應答”方式,也可以設置為“自動應答”方式。“自動應答”的主要原理是:發送方(本階段為從節點)發包后,接收方(本階段為主節點)如果接收無誤,則硬件自動快速地產生一個簡短的應答包(ACK包)并發出,發送方收到該ACK包后,就認為本次發送成功,并可產生中斷。

1.2 “非自動應答”方式的輪轉發包

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

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

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

1.3 “自動應答”方式的輪轉發包

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

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

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

2 結束語

文中基于無線芯片nRF24L01,以“非自動應答”和“自動應答”方式,實現了一個簡單的四節點星型網。通過串口調試助手軟件,可以較直觀地演示輪轉發包和收包效果。教學實踐中激發了學生的學習興趣,并促使學生較好地體會了同步、定時、輪轉調度等基本原理的實現。文中的節點硬件構成簡單、經濟實惠,并且可設計進一步的拓展實驗。例如,可以通過設定SETUP_RETR為非零值,來設置自動重發次數和改變缺省的自動重發延遲。還可以進行以競爭方式實現收發包的實驗等。

參考文獻(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] 肖敏.交換機及交換網仿真技術研究[D].湖南師范大學,2010.

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

猜你喜歡
同步
素質教育理念下藝術教育改革的思路
政府職能的轉變與中國經濟結構調整的同步
商情(2016年42期)2016-12-23 14:26:58
公共藝術與城市設計的協調與同步
有源應答器DBPL解碼算法研究及FPGA實現
一種新型雙軌同步焊接的焊接裝置
讓思維訓練與口才訓練同時進行
汽車空調產品的協同開發探討
“四化”同步發展的實證檢驗及實現路徑研究
軟科學(2015年10期)2015-10-28 02:28:08
時間統一系統秒同步故障遠程預警系統設計
基于CAZAC序列的MIMOOFDM定時同步算法
主站蜘蛛池模板: 国产91高清视频| 亚洲动漫h| 幺女国产一级毛片| 成人字幕网视频在线观看| 国产成人a毛片在线| 久久精品国产精品一区二区| 亚洲一区二区在线无码| 福利国产微拍广场一区视频在线| 天天婬欲婬香婬色婬视频播放| 国产女主播一区| 操操操综合网| 国产精品内射视频| 亚洲 欧美 偷自乱 图片| 99久视频| 欧美精品亚洲二区| 亚洲第一视频免费在线| 激情六月丁香婷婷| 亚洲va视频| 狠狠色丁婷婷综合久久| 国产精品原创不卡在线| 91久久夜色精品国产网站| 波多野结衣国产精品| 久久综合久久鬼| 无码视频国产精品一区二区| 996免费视频国产在线播放| 日本高清在线看免费观看| 亚洲va精品中文字幕| 在线观看热码亚洲av每日更新| 国产91全国探花系列在线播放| 国内精品久久久久久久久久影视| 中文字幕一区二区视频| 成人va亚洲va欧美天堂| 2020亚洲精品无码| 久久精品aⅴ无码中文字幕| 乱人伦视频中文字幕在线| 在线观看欧美国产| 亚洲成年人网| 欧美日韩在线亚洲国产人| 99热最新网址| 青青青国产在线播放| 日韩精品成人在线| 亚洲人视频在线观看| 亚洲精品黄| 婷婷中文在线| 伊人丁香五月天久久综合 | 久久无码免费束人妻| 国产精品久久精品| 狼友av永久网站免费观看| 国产精品无码一二三视频| 五月丁香伊人啪啪手机免费观看| 欧美色视频在线| 国产精品久久精品| 狼友av永久网站免费观看| 91国内在线视频| 免费一级无码在线网站| 亚欧成人无码AV在线播放| 日韩精品专区免费无码aⅴ| 日本少妇又色又爽又高潮| 亚洲无码一区在线观看| 亚洲无码精彩视频在线观看| 国产一二视频| 欧美精品导航| 国模视频一区二区| 欧美自拍另类欧美综合图区| 国产农村精品一级毛片视频| 亚洲不卡网| 中文字幕啪啪| 91在线视频福利| 99久久99这里只有免费的精品 | 成人福利一区二区视频在线| 日韩国产高清无码| 精品三级在线| 成人在线观看一区| 91福利片| 最近最新中文字幕在线第一页 | 成人在线亚洲| 国产小视频a在线观看| 午夜a视频| 精品国产黑色丝袜高跟鞋| 欧洲一区二区三区无码| 久一在线视频| 天天干伊人|