使用Nordic nRF52840 Dongle跑通mesh的第一個例程

2020-12-08 深圳信馳達

nRF52840 Dongle最早由Nordic公司在2018年推出,Nordic公司宣稱nRF52840 Dongle是一種小型,低成本的USB Dongle。官方提供了MESH SDK供開發人員使用。本文梳理了Nordic nRF52840 Dongle 作為mesh節點開發流程,主要介紹了開發環境、環境搭建、代碼修改、固件下載部分。

一、開發環境

軟體準備:使用SEGGER公司的IDE進行開發。SDK使用Nordic官方的SDK。

硬體準備:Nordic nRF52840 Dongle。這裡我選用RFstar的RF-DG-40A

二、環境搭建:

1.開發工具下載

SEGGER IDE下載地址:https://www.segger.com/

Nordic的MESH SDK目前只支持在這款IDE下開發。

2.官方MESH SDK與標準庫下載

SDK下載地址:https://www.nordicsemi.com/Software-and-tools/Software/nRF5-SDK-for-Mesh/Download#infotabs

官方庫下載地址:https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52840/Compatible-downloads#infotabs

3.IDE安裝

安裝路徑可以根據個人習慣安裝(安裝不能帶有中文路徑),其他配置就保持默認參數。

4.打開mesh SDK工程(我們使用light_switch工程做演示)

5.Mesh工程環境配置,選擇tools,點擊Options設置庫環境。

6.在「Global Macros」處把路徑修改成下載的官方庫路徑。

7.工程配置完成,按F7編譯就可以編譯成功。

三、代碼修改

Nordic的MESH SDK 的組網需要下載三款不同的程序,這裡演示的是light_switch的server和client,還有examples目錄下的provisioner工程。

Server工程是mesh的light燈的demo,client工程是switch開關的demo。Provisioner工程是控制周圍MESH設備組網的demo。

1.Sdk_config.h修改(三個工程均有這兩個文件,都需要修改)。

原代碼:

修改後:

2.pca10056.h修改。

原代碼:

修改之後:

3.Server 工程Simple_hal.c修改。

原部分代碼:

修改之後:

4.Client 工程main.c修改後:

5.Provisioner工程 main.c修改後:

四、程序下載:

1.依次燒寫server工程、Provisioner工程和Client工程的程序。使用SEGGER燒寫,SEGGER 使用J-LINK下載程序,接好線之後首先點擊connect J-link連接J-LINK。

2.然後點擊Erase All擦除。最後點擊Download下載程序。

3.三者都上電之後,按Provisioner的Button1開始mesh自組網。

4.組網成功後,按Client的Button可以控制server的LED1的亮和滅。

原文連結:https://www.szrfstar.com/news/582-cn.html

相關焦點

  • RT-Thread移植到nRF52840
    本文從文檔中抽出RT-Thread移植到nRF52840這篇和大家分享,這個文檔應該會在11月底發到論壇,公眾號、qq群和百度網盤的。《RT-Thread BLE5.0和ANT+應用開發實戰指南》當前目錄如下圖第11章 RT-Thread移植到nRF52840    終於進入正文了,這裡再囉嗦一句,如果需要了解RT-Thread的內核等問題,可以參考RT-Thread官放的《rtthread_manual.zh
  • [Nordic 博文分享系列] 開發自己的第一個BLE應用程式
    ,只要跟著文中所述步驟,你就可以一步步搭建自己的第一個BLE應用程式。註:如果你使用的是Linux系統/Mac系統,或者你使用的不是Keil5-MDK,請參考「Nordic nRF51/nRF52開發環境搭建」來搭建你的開發環境。2. 運行Blinky程序請按照如下步驟運行SDK自帶的Blinky程序1) 確認自己的晶片型號或者開發板。
  • Nordic nRF52820 SoC為nRF52系列低端器件增添全速USB 2.0和藍牙5.2
    Low Energy /Bluetooth LE)、藍牙mesh、Thread、Zigbee和2.4 GHz專有低端無線連接解決方案。nRF52820具有藍牙5、5.1和5.2的全部功能,包括長距離傳輸和2 Mbps高吞吐量、尋向、低功耗功率控制和低功耗同步通道。該器件還包括一個全速(12 Mbps) USB 2.0接口。nRF52820具有功能強大的64MHz 32位Arm?
  • RT-Thread的finsh在nRF52840上的使用
    C語言表達式解釋模式下,finsh能夠解析執行大部分C語言的表達式,並使用類似C語言的函數調用方式訪問系統中的函數及全局變量,此外它也能夠通過命令行方式創建變量。    在msh模式下,finsh運行方式類似於dos/bash等傳統shell。
  • CC2540 USB Dongle 藍牙抓包分析儀使用教程
    CC2540 USB Dongle,可做協議分析儀使用,配合TI Packet Sniffer軟體,抓取空氣中的BLE無線包,另外也可以燒寫Host Test Release固件,作為BTOOL調試工具,低功耗藍牙開發的完美配件。USB Dongle可配合packet sniffer使用進行數據抓包。
  • 【MATLAB】錯誤使用 surf (line 74) 解決+錯誤使用 mesh (line 75)
    1、錯誤使用 surf (line 74) 解決首先對於surf函數的格式為:surf(x,y,
  • stm32開發板例程講解之一:使用IAR 5.3建立工程
    學習stm32,入門是非常關鍵的,而自己建的第一個也就顯得很重要了。儘快入門,建立起學習的信心,對後續的學習有非常大的幫助。本文將講述任何在IAR上建立一個project,並開始自己學習stm32的第一個實驗。
  • 全球首款藍牙Mesh LED燈泡採用賽普拉斯BLE技術
    目前的藍牙技術已支持mesh網絡,可實現多對多(m:m)設備通信,並針對大規模設備網絡的創建進行了優化。雖然藍牙照明產品設置非常簡單,但除非有其他設備作為樞紐,否則用戶一般需要在設備附近才能控制這些產品。全新藍牙mesh網絡技術使用戶能夠在另一個房間控制設備,例如全新SYLVANIA SMART+藍牙照明產品,這是因為藍牙mesh設備可以在300米範圍內相互通信並傳遞指令信號。
  • Delphi基礎教程圖文版之例程詳解(參數)
    概述 例程(routine)是Pascal 的一個重要概念,例程由一系列語句組成,例程名是唯一的,通過例程名你可以多次調用它,這樣程序中只需要一個例程就夠了,由此避免了代碼多次重複,而且代碼也容易修改維護。從這個角度看,你可以認為例程是一種基本的代碼封裝機制。
  • 選ac+ap還是mesh方案?
    mesh組網無線mesh組網,相比傳統的WLAN,mesh網絡中的多個節點採用無線連接進行相互連接,也就是說每個節點至少可以與兩個節點連接,提高了可靠性和穩定性。各個節點之間的連接自配置、自癒合,無需人工幹預。
  • 【ANSYS mesh】01mesh網格劃分基本流程-燃燒器案例
    步驟1:啟動Workbench,展開【Component Systerms】欄,雙擊【mesh】將mesh模塊加載到圖形窗口。步驟3:雙擊【Mesh】或者右擊選擇【Edit…】,進入mesh模塊界面旨在帶大家熟悉mesh網格劃分基本流程。如果想要得到高質量的網格,需要更多網格控制設置和時間。步驟1:單擊結構數中的【Mesh】節點,在屬性欄中選擇如下圖所示。其他選項均保持默認設置。
  • 大戶型wifi擴展選AC+AP還是mesh?
    智能時代的快速來臨,使用wifi上網是一件再平凡不過的事,這背後就是網絡的接入和路由器的使用了。說到路由器,最近小米在出了一款小米路由器mesh,那麼什麼是mesh路由?它與我們傳統的AC+AP路由又有什麼不一樣呢?什麼是AC+AP?
  • 「Mesh with」啥意思?這一定要學
    看到裡面這個mesh with,覺得特別好用。這詞意思是:像機器裡的零部件一樣嚙合,吻合。咱們常用match,現在可以考慮跟mesh with換著用。比如「這跟我的價值觀不一致」這句話,你可以說:This doesn’t quite mesh with my values.
  • Metal-mesh技術是什麼?Metal-mesh能夠替代ITO導電膜?
    【導讀】:Roll-to-roll metal mesh technology offers another alternative to ITO as low resistance can be achieved even on plastics substrates.
  • 無線mesh組網貴那是你沒選對 看性價比就挑騰達MW6
    騰達MW6就是支持無線mesh網絡的路由器設備,而且相比於動輒兩三千元的無線mesh產品,騰達MW6三隻裝僅售1099元,非常具有性價比!      騰達MW6三隻裝的三個路由器,每一臺都可作為主路由單獨使用,也可以作為網絡節點擴展WiFi使用。每臺路由器底部配備了一個千兆LAN口和一個千兆WAN/LAN復用接口,保證了有線連接的擴展性。
  • 關於nRF5182嵌入式系統智能手環的設計方案
    關於nRF5182嵌入式系統智能手環的設計方案 工程師4 發表於 2018-05-13 09:46:00 nrf51822 是功能強大、高靈活性的多協議SoC,非常適用於
  • 自行車運動品牌7mesh為何會受到Lululemon的青睞?
    線上業務以35%的速度增長,毛利率增長了80個基點,營業利潤率上升40個基點。營業利潤同比增長了23%。2018年全年,銷售增速保持在15%以上,收入增速保持在20%以上,電子商務業務增速保持在35%以上,總之,2019年一季度Lululemon的業務增長與2018年保持持平。
  • STM32 FOTA例程之cJSON:就問你會不會使用!
    前言在STM32 OTA例程中,設備端(STM32F769探索板)與雲端交換數據使用的是JSON