Silicon Labs(亦稱“芯科科技”)針對旗下藍牙無線解決方案發布的Gecko SDK和藍牙協議棧SDK會定期更新,通常是每月更新一次,包括主要版本、小修改版本和補丁版本。這些更新包含重要的bug修復、新特性,有時還會添加對最新硬件平臺(新部件或新開發板)的支持。本文討論了用戶在將新的SDK版本下載到本地電腦后,如何更新現有開發的藍牙項目,以幫助工程師加速設計流程。
1.下載新版SDK當您下載帶有新的主版本號或副版本號的SDK(例如,從v2.6.2更新到v2.7.0)時,將在您的電腦上創建一個新的SDK文件夾,從那里您可以選擇在創建新項目時使用哪個SDK。您已經存在的項目將不會被觸動。 與此相反,當您將補丁下載到計算機時,它將自動覆蓋您現有的SDK內容。例如,Gecko SDK v2.7.3將在下載時覆蓋Gecko SDKv2.7.2。現在,如果您創建了一個新項目,它將使用新的補丁版本創建。但是,您已經存在的項目仍然會包含來自上一個補丁版本的文件。這是因為當您創建一個項目時,SDK文件將在項目創建期間復制到項目中,并且SDK更新不會觸及您已經創建的項目。(這是為了避免自動更新已經在早期補丁版本中測試過的項目。) 下載并啟用Silicon Labs的藍牙SDKhttps://www.silabs.com/documents/public/training/wireless/getting-started-bluetooth-sdk.pdf 2.更新已有的藍牙項目如果你想更新一個已經存在的項目,有以下兩個辦法:
用新的SDK創建一個新的SoC-Empty項目,并合并通過前版本SDK所生成的SoC-Empty項目上做的所有更改。
替換現有項目中的所有SDK文件。
通常,我們強烈建議采用第一種方式,因為項目生成器會負責復制所有文件,并完成最新SDK版本運行所需的所有配置。 3. 使用新創建的SoC-Empty項目進行更新建議在編寫藍牙應用程序時,將應用程序文件與SDK文件完全分離。這就是為什么SoC-Empty示例項目包含app.c /app.h文件,這些文件實現了應用程序,并且獨立于底層SDK版本。(當然,可以添加更多實現應用程序代碼的文件。)
在這種情況下,遷移到新的SDK版本的步驟是:
使用新的SDK版本創建一個新的SoC-Empty項目。
用您的應用程序覆蓋app.c/app.h。
添加其他應用程序文件(例如處理外設和為藍牙提供數據的模塊)。
將需要的SDK項目從更新的SDK文件夾復制到你的項目中(例如,如果你在項目中使用LE timer,你必須將em_letimer.c / em_letimer.h復制到你的項目中)。
用GATT配置器導入您的GATT數據庫。找到右側的import按鈕,并從舊項目導入ga .xml文件。按Generate按鈕以便在你的項目中生成GATT數據庫代碼。
您可能在您已經存在的項目中針對init_mcu.c, init_board.c, init_app.c申請了修改,與其用舊項目的文件來覆蓋這些文件,不如合并您所做的更改。這一點很重要,因為這些文件不是獨立于SDK的,而且在兩個SDK版本之間。重要!在此步驟后請不要在GATT配置器中按Generate鍵,因為它可能會重新生成這些文件,而您的更改可能會消失!
在項目設置中添加附加的include目錄(例如,如果您為自己的頭文件創建了一個新的文件夾,或者將SDK文件復制到一個新的文件夾中)和數據庫。重要!在此步驟后請不要在GATT配置器中按Generate鍵,因為它可能會重新生成這些文件,而您的更改可能會消失!
現在可以構建項目了。
4. 更新現有項目中的SDK文件您也可以采用另一種方法,一個一個地更新項目中的所有SDK文件。在這種情況下,你應該執行下列步驟:
更新項目中的/硬件、/平臺和/協議文件夾。由于項目中的這些文件夾只包含SDK的/硬件、/平臺、/協議文件夾中的文件子集(C:SiliconLabsSimplicityStudiov4developersdksgecko_sdk_suitevX.Y),所以應該逐個復制這些文件,而不是將整個文件夾復制到項目中!
至少檢查main.c, init_mcu.c, init_board.c,init_app.c。如果它們包含來自上一個SDK版本以來的任何重要更新,則為init_app.c。創建一個新的SoC-Empty項目,并將新文件與現有項目進行比較。如果您看到任何未由您完成的更改,請將這些更改合并到您的項目中。
-
藍牙無線
+關注
關注
0文章
9瀏覽量
8015 -
SDK
+關注
關注
3文章
1035瀏覽量
45905 -
Gecko
+關注
關注
0文章
6瀏覽量
8266
原文標題:應用指南-如何在Gecko SDK新版本中遷移藍牙項目
文章出處:【微信號:SiliconLabs,微信公眾號:Silicon Labs】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論