那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于MCU和nRF24L01的無線通信系統

jf_pJlTbmA9 ? 來源:網絡 ? 作者:網絡 ? 2023-11-03 16:34 ? 次閱讀
隨著微電子技術的迅速發展,高性能MCU廣泛地運用在嵌入式系統中,完成數據的采集、分析、處理與通訊功能。有線模式下的數據通訊系統,由于受時空、環境等因素的制約,不能完全滿足所有條件下任務的執行,而通過無線數據傳輸方式代替有線數據傳輸,則能很好地解決此類問題。綜上論述,文中提出一種基于高性能MCU和nRF24L01的網絡無線通信系統的解決方案,穩定可靠地實現數據傳輸,滿足各種條件的需要。

1 系統硬件設計

1.1 nRF24L01無線通訊模塊介紹

系統選用云佳科技的nRF24L01無線射頻收發模塊來實現子母機間的通訊,它使用Nordic公司的nRF24L01芯片開發而成,是一款工作在2.4~2.5 GHz世界通用ISM頻段的單片無線收發器芯片,其具有如下性能特點:

(1)低工作電源電壓,且范圍廣1.9~3.6 V,體積小巧,能方便集成到各種電子器件。

(2)極低的功耗。當工作在發射模式下發射功率為-6 dBm時電流消耗為9 mA,接收模式時為12.3 mA。待機模式下電流消22μA,掉電模式電流消耗僅為900 nA。

(3)無線速率達到2 Mbit?s-1,SPI接口速率為0~8 Mbit?s-1,具自動應答機制,極大地降低丟包率。

(4)擁有自動重發功能、地址及CRC校驗功能。

(5)具有125個可選工作頻道,擁有很短的頻道切換時間,可用于跳頻。

1.2 STC12L5608AD芯片簡介

STC12L5608AD型MCU是宏晶科技新一代低電壓增強型8051單片機,該系列單片機具有如下特性:寬工作電壓(2.1~3.6 V);具有1個時鐘/機器周期的高速性能,比普通8051快8~12倍,可用低頻晶振;自帶-8路10位AD轉換器等;加密性強,無法解密;超強抗干擾、高抗靜電、輕松過4 kV快速脈沖干擾(EFT測試)、寬溫度范圍(-40~85℃);超低功耗,正常工作模式2.7~7 mA,空閑模式1.8mA,掉電模式功耗<0.1μA;能在系統編程等。

1.3 硬件接口電路

nRF24L01通過SPI接口與外部單片機進行數據交換,CE作為片選端,它與CONFIG寄存器的PWR_UP和PRIM_RX位組合用于選擇芯片的工作方式;CSN為芯片內部SPI硬件接口的使能端,低電平有效;SCK為SPI的時鐘輸入端,MOSI為SPI接口的數據輸入端,MISO為SPI接口的數據輸出端,IRQ為中斷請求端,與單片機的外部中斷1相連,當nRF24L01產生中斷后IRQ將置低,單片機檢測到此中斷后通過程序得知其與nRF24L01無線射頻模塊的數據收發情況。通過單片機與無線通訊模塊的硬件連接,從而實現模式控制和數據交換。圖2給出兩模塊的硬件接口設計。整個無線通訊系統由3個模塊組成。

2 系統軟件設計

2.1 數據包處理方式

將nRF24L01配置成增強型ShockBurst模式,使得雙向鏈接協議執行更為簡易有效。發送方要求終端設備在接收數據后有應答信號,以便發送方檢測有無數據丟失。一旦數據丟失則通過重新發送功能將丟失的數據恢復。它可以同時控制應答及重發功能而無需增加MCU工作量。nR F24L01配置為增強型的ShockBurst發送模式下時,只要MCU有數據要發送,nRF24L01就會啟動ShockBurst模式來發送數據。在發送完數據后nRF24L01轉到接收模式并等待終端的應答信號。如未收到應答信號,nRF24L01將重發相同的數據包,直到收到應答信號或重發次數超過SETUP _RETR_ARC寄存器中設置的值為止。如果重發次數超過了設定值,則產生MAX_RT中斷。只要收到確認信號,nRF24L01就認為最后一包數據已經發送成功,把TX FIFO中的數據清除掉并產生TX_DS中斷,IRQ引腳置高。

nRF24L01在接收模式下可以接收6路不同通道的數據,如圖3所示。每個數據通道使用不同的地址,但共用相同的頻道。即6個不同的nRF 24L01設置為發送模式后,可以與同一個設置為接收模式的nRF24L01進行通訊,而設置為接收模式的nRF24L01可以對這6個發射端進行識別。n RF24L01在確認收到數據后記錄地址,并以此地址為目標地址發送應答信號。在發送端,數據通道0被用作接收應答信號。

2.2 系統軟件設計流程

程序基本思路為子模塊配置為接收狀態,如成功接收到數據則進行EEPROM子程序操作,否則切換成發射模式,成功發送并接收到應答信號后再變成接收模式,進入下一次接收發射循環;主模塊設置為接收數據信息狀態,能與多路處于發射狀態的數據通道進行通訊,并從接收到的數據中判別數據通道口;接收信息后自動回復應答信號。通過切換接收發射狀態實現多點對單點的雙向無線數據通訊。

2.2.1 nRF24L01初始化程序

nRF24L01初始化程序包括引腳初始化和中斷初始化。引腳初始化使芯片工作在待機模式下(CE=0),時鐘設置SCK低電平,片選不使能(CSN=1),工作在串行輸入狀態(MOSI=0);中斷初始化則使能外部中斷(EX1=1),低電平觸發。

2.2.2 nRF24L01配置接收/發射模式

對芯片內部的特殊功能寄存器進行初始化操作。

通過對CONFID配置設定其工作模式,設置接收地址,接收有效數據寬度、選擇射頻通道、數據傳輸率、發射功率等參數。配置完成后,置高CE,準備接收數據包,如表1所示。

2.2.3 單片機內部EEPROM應用子程序

單片機內部EEPROM應用子程序進行扇區的擦除、寫入以及讀出功能,實現系統信息的讀取保存。

STC12L5608AD單片機內部有8個扇區,每個扇區512 Byte。在使用時,統一修改的數據放在同一個扇區。使用ISP/IAP功能,所使用的特殊功能寄存器為ISP_DATA、ISP_ADDRH、ISP_ADDRL、ISP_CMD、ISP_TRIG、ISP_CONTR。扇區寫入數據流程圖如圖5所示,扇區擦除以及讀操作流程與之類似。

3 結束語

介紹了利用高性能MCU和nRF24L01芯片設計的網絡化無線通訊系統,說明了其軟硬件設計要點。該系統已應用于某故障監測系統中,系統成本低、體積小、傳輸速率高、具有良好的通用性和可靠性,可供無線數據傳輸系統參考。

審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    456

    文章

    51170

    瀏覽量

    427215
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17317

    瀏覽量

    352630
  • 無線通訊
    +關注

    關注

    5

    文章

    588

    瀏覽量

    40355
收藏 人收藏

    評論

    相關推薦

    CW32模塊使用 NRF24L01無線2.4G模塊

    NRF24L01是一款工作在2.4-2.5GHz世界通用ISM頻段的單片收發芯片, 使用4線SPI通訊端口,通訊速率最高可達8Mbps,適合與各種MCU連接,編程簡單;輸出功率、頻道選擇和協議的設置
    的頭像 發表于 01-23 13:00 ?88次閱讀
    CW32模塊使用 <b class='flag-5'>NRF24L01</b><b class='flag-5'>無線</b>2.4G模塊

    有人用過USB轉NRF24L01模塊嗎,求指教

    如圖,我買了一個這個模塊,然后買了兩個NRF24L01。 其中一個接上了USB轉NRF24L01模塊,另外一個直連了stm32。 我想問接到轉換模塊上的這個NRF24L01需要提前燒錄嗎?還是說
    發表于 01-08 17:12

    nRF24L01P被SI24R1竟然完美兼容替換

    發現一個新一代nRF24L01P與上一代nRF24L01相比寄存器沒有太大的變化,但是有幾個關于通信管道和ACK的寄存器的配置還是與上一代不同的。另外,個人理解shockburst和enhanced
    發表于 11-28 16:52

    電子耦合在無線通信中的應用

    電子耦合在無線通信中發揮著至關重要的作用。電子耦合是利用轉移電容、磁耦合或電感耦合等方式將電路信號傳遞到另一個電路的技術,這種技術在無線通信系統中被廣泛應用,以實現信號的傳輸、處理和接收。以下
    的頭像 發表于 11-24 09:22 ?492次閱讀

    SI24R1與NRF24L01P 對比方案

    Si24R1低功耗2.4GHz收發一體射頻芯片量產于2012年,由于其一致性穩定性高、功耗低、遠距離、兼容替代NRF24L01+,兼容NORDIC 2.4GHz協議等特點,一直廣泛應用于各物聯網場景
    發表于 09-30 15:05

    基于STM32的E01和E01C驅動移植

    實驗簡介基于STM32F103C8T6的E01系列(nRF24L01P)和E01C系列(SI24R1)的EBYTE官網例程移植。EBYTE官網例程是基于STM8
    的頭像 發表于 08-30 12:35 ?460次閱讀
    基于STM32的E<b class='flag-5'>01</b>和E<b class='flag-5'>01</b>C驅動移植

    SI24R1 TO NRF24L01P 引腳及軟硬件中文開發資料

    的視野是與友商的NRF24L01P芯片兼容通信。從而被打上了國產NRF24L01P的標簽,更有甚者居然磨掉芯片原本的SI24R1的LOGO打成NRF
    發表于 07-30 14:26

    如何使用RTOS SDK才能正確驅動NRF24L模塊呢?

    你好,我剛接觸 ESP8266 TROS SDK,想用ESP8266的HSPI驅動NRF24L01模塊,自己模擬SPI時序可以正常驅動NRF24L01,但通信速率只有350K左右。請問
    發表于 07-19 14:15

    2.4GHz的Si24R03芯片:無線通信的新里程碑

    無線通信領域中,2.4GHz頻段因其廣泛的應用和穩定的性能而備受青睞。而在這個頻段中,Si24R03芯片以其出色的性能和多樣的功能,正逐漸成為行業的新寵。今天,我們就來深入了解一下這款引領無線通信
    的頭像 發表于 05-22 17:36 ?786次閱讀
    2.4GHz的Si<b class='flag-5'>24</b>R03芯片:<b class='flag-5'>無線通信</b>的新里程碑

    STM8L做的計步器總是復位的原因?

    STM8L做的計步器總是復位,主芯片STM8L151K4T6,CR2477供電,無線模塊NRF24L01,水銀球計步,請高手幫下,可能導致復位的原因?
    發表于 05-16 08:14

    NRF24L01加個if就發送不成功的原因?

    我最近在調個NRF24L01其實早已經調試好了,之前都是一個發送一個接,我現在想改成,我發送端發送成功后,接收端能返回信息回來。我調試時發現在把發送函數放到“if”里面發送不成功.把\"
    發表于 05-10 07:06

    nrf24l01+自動應答失敗的原因?

    NRF24L01_Write_Reg(NRF_WRITE_REG+RF_CH,40); //設置RF通信頻率 NRF24L01_Write_Reg(
    發表于 04-24 07:51

    STM8在低功耗模式(即Active-Halt或者Halt下) RTC還會繼續工作嗎?

    基于STM8L051的無線通信,主機STM8L051通過配置NRF24L01,接收端用無線轉串口模塊連接至PC。 先設置STM8
    發表于 04-19 06:09

    無線通信時代nRF24L01無線模塊的應用與特點

    nRF24L01是一種低功耗、高性能的2.4GHz無線收發器,由Nordic Semiconductor公司開發。它廣泛應用于無線通信領域,特別是在低功耗應用和物聯網設備中。
    的頭像 發表于 04-16 16:05 ?2779次閱讀
    <b class='flag-5'>無線通信</b>時代<b class='flag-5'>nRF24L01</b><b class='flag-5'>無線</b>模塊的應用與特點

    NRF24L01P和SI24R1的區別

    NRF24L01無線模塊廣泛地運用于:無線門禁、無線數據通訊、安防系統、遙控裝置、遙感 勘測、智能運動設備、工業傳感器;平常我們用到的
    發表于 03-29 15:05
    广州百家乐酒店用品制造有限公司| 百家乐全部规| 百家乐正网| 百家乐官网是片人的吗| 摩纳哥百家乐娱乐城| 古浪县| 免费百家乐计划软件| 七匹狼百家乐官网的玩法技巧和规则 | 百家乐官网ipone| 舟山星空棋牌首页| 澳门百家乐官网路单| 打百家乐官网如何赢分| 真钱轮盘游戏| 百家乐电脑游戏机投注法实例| 百家乐官网现金网平台排行榜| 威尼斯人娱乐城投注| 新濠百家乐现金网| 扬中市| 百家乐制胜秘| 网上玩百家乐官网的玩法技巧和规则 | 做生意摆放风水好吗| 百家乐官网全部规| 优博| 真人百家乐官网的玩法技巧和规则 | 九乐棋牌官网| 大发888官网 官方| 威尼斯人娱乐城 196| 百家乐娱乐代理| 百家乐公式书| 永康百家乐赌博| 米其林百家乐官网的玩法技巧和规则 | 基础百家乐的玩法技巧和规则| 百家乐能作弊吗| 百家乐官网游戏模拟| 利博国际娱乐| 千亿百家乐的玩法技巧和规则 | 百家乐官网赢钱秘籍鹰| 百家乐官网是否有路子| 百家乐官网保单详图| 澳门顶级赌场网址| 1737棋牌游戏中心|