日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于MCU和nRF24L01的無線通信系統(tǒng)

jf_pJlTbmA9 ? 來源:網(wǎng)絡(luò) ? 作者:網(wǎng)絡(luò) ? 2023-11-03 16:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著微電子技術(shù)的迅速發(fā)展,高性能MCU廣泛地運(yùn)用在嵌入式系統(tǒng)中,完成數(shù)據(jù)的采集、分析、處理與通訊功能。有線模式下的數(shù)據(jù)通訊系統(tǒng),由于受時(shí)空、環(huán)境等因素的制約,不能完全滿足所有條件下任務(wù)的執(zhí)行,而通過無線數(shù)據(jù)傳輸方式代替有線數(shù)據(jù)傳輸,則能很好地解決此類問題。綜上論述,文中提出一種基于高性能MCU和nRF24L01的網(wǎng)絡(luò)化無線通信系統(tǒng)的解決方案,穩(wěn)定可靠地實(shí)現(xiàn)數(shù)據(jù)傳輸,滿足各種條件的需要。

1 系統(tǒng)硬件設(shè)計(jì)

1.1 nRF24L01無線通訊模塊介紹

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

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

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

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

(4)擁有自動(dòng)重發(fā)功能、地址及CRC校驗(yàn)功能。

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

1.2 STC12L5608AD芯片簡介

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

1.3 硬件接口電路

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

2 系統(tǒng)軟件設(shè)計(jì)

2.1 數(shù)據(jù)包處理方式

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

nRF24L01在接收模式下可以接收6路不同通道的數(shù)據(jù),如圖3所示。每個(gè)數(shù)據(jù)通道使用不同的地址,但共用相同的頻道。即6個(gè)不同的nRF 24L01設(shè)置為發(fā)送模式后,可以與同一個(gè)設(shè)置為接收模式的nRF24L01進(jìn)行通訊,而設(shè)置為接收模式的nRF24L01可以對(duì)這6個(gè)發(fā)射端進(jìn)行識(shí)別。n RF24L01在確認(rèn)收到數(shù)據(jù)后記錄地址,并以此地址為目標(biāo)地址發(fā)送應(yīng)答信號(hào)。在發(fā)送端,數(shù)據(jù)通道0被用作接收應(yīng)答信號(hào)。

2.2 系統(tǒng)軟件設(shè)計(jì)流程

程序基本思路為子模塊配置為接收狀態(tài),如成功接收到數(shù)據(jù)則進(jìn)行EEPROM子程序操作,否則切換成發(fā)射模式,成功發(fā)送并接收到應(yīng)答信號(hào)后再變成接收模式,進(jìn)入下一次接收發(fā)射循環(huán);主模塊設(shè)置為接收數(shù)據(jù)信息狀態(tài),能與多路處于發(fā)射狀態(tài)的數(shù)據(jù)通道進(jìn)行通訊,并從接收到的數(shù)據(jù)中判別數(shù)據(jù)通道口;接收信息后自動(dòng)回復(fù)應(yīng)答信號(hào)。通過切換接收發(fā)射狀態(tài)實(shí)現(xiàn)多點(diǎn)對(duì)單點(diǎn)的雙向無線數(shù)據(jù)通訊。

2.2.1 nRF24L01初始化程序

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

2.2.2 nRF24L01配置接收/發(fā)射模式

對(duì)芯片內(nèi)部的特殊功能寄存器進(jìn)行初始化操作。

通過對(duì)CONFID配置設(shè)定其工作模式,設(shè)置接收地址,接收有效數(shù)據(jù)寬度、選擇射頻通道、數(shù)據(jù)傳輸率、發(fā)射功率等參數(shù)。配置完成后,置高CE,準(zhǔn)備接收數(shù)據(jù)包,如表1所示。

2.2.3 單片機(jī)內(nèi)部EEPROM應(yīng)用子程序

單片機(jī)內(nèi)部EEPROM應(yīng)用子程序進(jìn)行扇區(qū)的擦除、寫入以及讀出功能,實(shí)現(xiàn)系統(tǒng)信息的讀取保存。

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

3 結(jié)束語

介紹了利用高性能MCU和nRF24L01芯片設(shè)計(jì)的網(wǎng)絡(luò)化無線通訊系統(tǒng),說明了其軟硬件設(shè)計(jì)要點(diǎn)。該系統(tǒng)已應(yīng)用于某故障監(jiān)測系統(tǒng)中,系統(tǒng)成本低、體積小、傳輸速率高、具有良好的通用性和可靠性,可供無線數(shù)據(jù)傳輸系統(tǒng)參考。

審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    463

    文章

    54471

    瀏覽量

    469767
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    19162

    瀏覽量

    404849
  • 無線通訊
    +關(guān)注

    關(guān)注

    6

    文章

    682

    瀏覽量

    41706
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CW32L012/F030靈眸X1智能小車——使用NRF24L01通信

    NRF24L01所使用的通訊協(xié)議為SPI,SPI又可分為軟件SPI和硬件SPI。
    的頭像 發(fā)表于 04-01 16:49 ?2563次閱讀
    CW32<b class='flag-5'>L</b>012/F030靈眸X1智能小車——使用<b class='flag-5'>NRF24L01</b><b class='flag-5'>通信</b>

    51驅(qū)動(dòng)NRF24L01通信,NRF24L01與TTL轉(zhuǎn)NRF24L01模塊通信

    NRF24L01 一、簡介 NRF24L01 是 NORDIC 公司最近生產(chǎn)的一款無線通信通信芯片,采用 FSK 調(diào)制,內(nèi)部 集成 NORDIC 自己的 Enhanced Short
    的頭像 發(fā)表于 03-17 14:37 ?254次閱讀
    51驅(qū)動(dòng)<b class='flag-5'>NRF24L01</b><b class='flag-5'>通信</b>,<b class='flag-5'>NRF24L01</b>與TTL轉(zhuǎn)<b class='flag-5'>NRF24L01</b>模塊<b class='flag-5'>通信</b>

    SI24R2B 單發(fā)Tx發(fā)射芯片功耗低 可兼容NRF24L01P

    SI24R2是在SI24R1的基礎(chǔ)上,單獨(dú)分出來發(fā)射部分TX,成為一顆2.4G 單TX??膳cNRF24L01P以及SI24R1通信,替代
    發(fā)表于 01-28 11:46

    SI24R1:一款低功耗國產(chǎn)兼容 NRF24L01+開發(fā)資料

    影響無線通信。故,用戶可以更改電源走線設(shè)計(jì),LDO出來后分兩路,一路給到RF,一路給到MCU+ADC。3.用戶一直在使用nRF24L01P,替換成Si24R1后發(fā)現(xiàn)功耗突然大了許多。解
    發(fā)表于 01-28 10:50

    Arduino UNO 可視化GT-24工業(yè)級(jí)無線透傳

    一、前言 無線透傳市面上較為常見的是基于藍(lán)牙、esp的多種透傳模塊,今天介紹的則是用NRF24L01芯片構(gòu)成的電路。(nRF24L01是由NORDIC生產(chǎn)的工作在2.4GHz~2.5GHz的ISM
    的頭像 發(fā)表于 01-27 10:14 ?392次閱讀
    Arduino UNO 可視化GT-<b class='flag-5'>24</b>工業(yè)級(jí)<b class='flag-5'>無線</b>透傳

    用CW32來實(shí)現(xiàn)2.4G無線傳輸

    傳輸通信,為以后的智能家居可能會(huì)提供一點(diǎn)幫助。 一、無線傳輸?shù)幕A(chǔ) 我們是使用CW32F030的SPI已經(jīng)市面上常見的NRF24L01模塊來實(shí)現(xiàn)兩塊開發(fā)板之間的無線傳輸,可以遠(yuǎn)程控制
    發(fā)表于 01-20 06:03

    NRF24L01——2.4GHz無線通信

    對(duì)于學(xué)習(xí)嵌入式中的通信,可能會(huì)用到這個(gè)模塊,該模塊應(yīng)用的是si24r1芯片。 一、si24r1簡介: Si24R1 是一顆工作在 2.4GHz ISM 頻段,專為低功耗
    發(fā)表于 12-30 14:08

    SI24R1完美代替NRF24L01

    NRF24L01無線模塊廣泛地運(yùn)用于:無線門禁、無線數(shù)據(jù)通訊、安防系統(tǒng)、遙控裝置、遙感勘測、智能運(yùn)動(dòng)設(shè)備、工業(yè)傳感器;平常我們用到的
    發(fā)表于 11-28 11:10

    使用NRF24l01軟件包注冊設(shè)備失敗怎么解決?

    1.根據(jù)軟件包提示第一步先打開了SPI驅(qū)動(dòng)框架 2.然后軟件包添加了 nrf24l01最新版本以及demo、debug 3.在board.h #define using_spi1 在board.c
    發(fā)表于 09-23 06:51

    官網(wǎng)nrf24l01的例程demo會(huì)出現(xiàn)互斥鎖報(bào)錯(cuò)是為什么?

    我在用nrf24L01官網(wǎng)下載的例程包,用stm32進(jìn)行開發(fā),串口助手顯示互斥鎖錯(cuò)誤,有朋友遇到這個(gè)問題嗎
    發(fā)表于 09-10 06:05

    解決封閉空間信號(hào)覆蓋難題,隧道無線通信系統(tǒng)

    解決封閉空間信號(hào)覆蓋難題,隧道無線通信系統(tǒng)
    的頭像 發(fā)表于 08-05 14:54 ?1976次閱讀
    解決封閉空間信號(hào)覆蓋難題,隧道<b class='flag-5'>無線通信</b><b class='flag-5'>系統(tǒng)</b>

    SI24R1:答題卡方案芯片替代NRF24L01+

    SI24R1簡介Si24R1低功耗2.4GHz收發(fā)一體射頻芯片量產(chǎn)于2012年,由于其一致性穩(wěn)定性高、功耗低、遠(yuǎn)距離、兼容替代NRF24L01+,兼容NORDIC 2.4GHz協(xié)議等特點(diǎn),一直
    發(fā)表于 07-31 10:29

    nRF54L15 # 超低功耗無線 SoC

    nRF54L15 概述 *附件:nRF54L15_nRF54L10_nRF54L05_Preliminary_Datasheet_v0.9.pdf 特征 128 MHz Arm Cortex-M33
    的頭像 發(fā)表于 07-01 16:57 ?3666次閱讀
    <b class='flag-5'>nRF54L</b>15 # 超低功耗<b class='flag-5'>無線</b> SoC

    NRF24L01項(xiàng)目資料(2.4G通信)實(shí)例項(xiàng)目下載

    NRF24L01項(xiàng)目資料(2.4G通信)實(shí)例項(xiàng)目,推薦下載!
    發(fā)表于 06-03 20:46

    常見的無線通信系統(tǒng)產(chǎn)品解決方案

    作者:DigiKey Editor 隨著科技的迅速發(fā)展,無線通信技術(shù)已經(jīng)成為現(xiàn)代生活和工業(yè)應(yīng)用中不可或缺的一環(huán)。從智能家居設(shè)備、可穿戴設(shè)備到自動(dòng)化生產(chǎn)線和智能城市基礎(chǔ)設(shè)施,無線通信系統(tǒng)的普及讓萬物
    的頭像 發(fā)表于 05-25 14:38 ?1478次閱讀
    万州区| 偏关县| 奈曼旗| 隆安县| 荆州市| 泽普县| 句容市| 靖远县| 双牌县| 泰州市| 广河县| 清苑县| 江陵县| 博乐市| 蛟河市| 外汇| 信宜市| 西藏| 宜君县| 莱阳市| 沙河市| 永嘉县| 大方县| 绥阳县| 环江| 仁寿县| 惠水县| 阿尔山市| 禹城市| 塘沽区| 通海县| 万全县| 江华| 渝北区| 武功县| 彭水| 石楼县| 古田县| 张掖市| 吉林市| 双流县|