找回密碼
         注冊會員
        搜索附件  

        熱門下載

        附件中心&附件聚合2.0
        For Discuz! X2.5 © hgcad.com

        15.png

         

        【眾拳】基于STM8的NRF24L01 2.4G無線模塊實驗:
        NRF24L01 簡介
        NRF24L01是NORDIC公司生產的一款無線通信通信芯片,采用FSK 調制,集成NORDIC自家的Enhanced Short Burst協議。可以實現點對點或是1對6的無線通信。無線通信速度最高可達到2Mbps。


        NRF24L01 模塊簡介

        CSN:SPI片選線
        SCK:SPI時鐘線
        MOSI:SPI數據線(主機輸出,從機輸入)
        MISO:SPI數據線(主機輸入,從機輸出)


        CE:模式控制線,在CSN為低的情況下,CE協同CONFIG寄存器共同決定NRF24L01 的狀態(參照NRF24L01 的狀態機)


        IRQ:中斷信號線,中斷時變為低電平,在以下三種情況變低:Tx FIFO 發完并且收到ACK(使能ACK情況下)、Rx FIFO 收到數據、達到最

        大重發次數。



        NRF24L01 SPI通訊時序圖

        空閑狀態SCK為0,CPOL=0;數據在時鐘第一個時間邊沿采集,CPHA=0;
        Cn:SPI命令位
        Sn:STATUS寄存器位        
        Dn:數據位( MSB,多字節傳輸時,低字節在前)

        NRF24L01 工作模式介紹

        其中,收發模式又有: Enhanced ShockBurst收發模式和ShockBurst收發模式,只有Enhanced ShockBurst收發模式支持自動ACK和自動重發。開啟自動ACK,則默認選擇Enhanced模式
        Enhanced ShockBurst 模式介紹
        Enhanced ShockBurst收發模式,使用片內的先入先出堆棧區,數據可以低速從微控制器送入,高速(1Mbps/2Mbps)從芯片發射,這樣可以盡量節能。與射頻協議相關的所有高速信號處理都在片內進行,這種做法有3大好處:
        1,節能;
        2,低的系統費用(低速微處理器也能進行高速射頻發射);
        3,數據在空中停留時間短,抗干擾性高;
            在Enhanced ShockBurst收發模式下,NRF24L01自動處理字頭和CRC校驗碼。在接收數據時,自動把字頭和CRC校驗碼移去。在發送數據時,自動加上字頭和CRC校驗碼,在發送模式下,置CE為高,至少10us,將使能發送過程。
        Enhanced ShockBurst模式:發送方要求終端設備在接收到數據后有應答信號,以便發送方檢測有無數據丟失,一旦丟失則重發數據。重發數據設置在地址為 0X04 的數據重發設置寄存器 用于設置其重發次數及設置在未收到應答信號后等待重發的時間。
            在接收模式下,最多可以接收6路不通的數據。每一個數據通道使用不同的地址,但是共用相同的頻道。也就是說6 個不同的NRF24L01 設置為發送模式后可以與同一個設置為接收模式的NRF24L01 進行通訊,而設置為接收模式的NRF24L01可以對這6 個發射端進行識別。數據通道0 是唯一的一個可以配置為40 位自身地址的數據通道。1~5 數據通道都為8 位自身地址和32 位公用地址(由通道1設置)。所有的數據通道都可以設置為Enhanced ShockBurst 模式。

        在接收端,確認收到數據后記錄地址,并以此地址為目標地址發送應答信號。

        在發送端,通道0被用作接收應答信號,因此通道0的接收地址要與發送地址端地址相等,以確保接收到正確的應答信號。

        Enhanced ShockBurst 發送模式

        初始化過程:
        1)寫Tx 節點的地址 TX_ADDR
        2)寫Rx 節點的地址(主要是為了使能Auto Ack) RX_ADDR_P0
        3)使能AUTO ACK EN_AA
        4)使能PIPE 0 EN_RXADDR
        5)配置自動重發次數 SETUP_RETR
        6)選擇通信頻率 RF_CH  頻率計算公式:2400+RF_CH  (Mhz)
        7)配置發射參數(低噪放大器增益、發射功率、無線速率) RF_SETUP
        8)配置24L01 的基本參數以及切換工作模式 CONFIG。
        發送流程:
        1. 把地址和要發送的數據按時序送入NRF24L01;
        2. 配置CONFIG寄存器,使之進入發送模式;
        3. 微控制器把CE置高(至少10us),激發Enhanced ShockBurstTM發射;
        4. Enhanced ShockBurstTM發射:
        ①給射頻前端供電;
        ②射頻數據打包(加字頭、CRC校驗碼);
        ③ 高速發射數據包;
        ④發射完成,NRF24L01進入空閑狀態。
        Enhanced ShockBurst 接收模式

        初始化過程:
        1)寫Rx 節點的地址 RX_ADDR_P0
        2)使能AUTO ACK EN_AA
        3)使能PIPE 0 EN_RXADDR
        4)選擇通信頻率 RF_CH
        5)選擇通道0 有效數據寬度 RX_PW_P0
        6)配置發射參數(低噪放大器增益、發射功率、無線速率) RF_SETUP
        7)配置24L01 的基本參數以及切換工作模式 CONFIG。

        接收流程:
        1. 配置接收地址和要接收的數據包大小;
        2. 配置CONFIG寄存器,使之進入接收模式,把CE置高。
        3. 130us后,NRF24L01進入監視狀態,等待數據包的到來;
        4. 當接收到正確的數據包(正確的地址和CRC校驗碼),NRF2401自動把字頭、地址和CRC校驗位移去;
        5. NRF24L01通過把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中斷)通知微控制器;
        6. 微控制器把數據從FIFO讀出(0X61指令);
        7. 所有數據讀取完畢后,可以清除STATUS寄存器。NRF2401可以進入四種主要的模式之一;

        NRF24L01-SPI指令


        寄存器介紹













        【眾拳】劍齒虎STM8的視頻代碼下載:









        15.png

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-1 00:41 , Processed in 0.024808 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        国产精品99久久久久久宅男| 无码人妻精品一区二区| 人妻精品久久久久中文字幕69| 爽爽精品dvd蜜桃成熟时电影院| 91老司机深夜福利精品视频在线观看 | 国产线视频精品免费观看视频| 亚洲精品国产精品国自产观看| 精品无码一区二区三区爱欲| 国产精品无码DVD在线观看| 丝袜足控一区二区三区| 精品国产综合成人亚洲区| 久久久久亚洲精品无码网址| 无码人妻丰满熟妇精品区| 大胸国产精品视频| 91久久精品国产一区二区| 2021国产精品视频网站| 中文无码久久精品| 成人国产精品日本在线观看| 国产精品高清视亚洲乱码| 四虎国产精品免费久久久| 亚洲国产精品国产自在在线| 国产精品毛片一区二区三区 | 亚洲AV无码精品色午夜果冻不卡| 久久青草国产精品一区| 亚洲午夜精品第一区二区8050| 久久国产乱子伦免费精品| 国产福利电影一区二区三区,亚洲国模精品一区 | 精品亚洲成a人片在线观看| 国产精品亚洲美女久久久| 亚洲精品无码高潮喷水在线| 91嫩草亚洲精品| 亚洲精品V欧洲精品V日韩精品 | 4438全国最大成人| 9久热这里只有精品| 熟妇无码乱子成人精品| 国产亚洲曝欧美不卡精品| 日韩精品人妻系列无码专区| 精品亚洲欧美中文字幕在线看| 麻豆成人久久精品二区三区免费| 精品国产爽爽AV| 91精品国产福利在线导航|