0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

应用指南-如何在Gecko SDK新版本中迁移蓝牙项目

Silicon Labs 来源:SiliconLabs 2020-07-01 09:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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

    浏览量

    8302
  • SDK
    SDK
    +关注

    关注

    3

    文章

    1093

    浏览量

    51178
  • Gecko
    +关注

    关注

    0

    文章

    6

    浏览量

    8394

原文标题:应用指南-如何在Gecko SDK新版本中迁移蓝牙项目

文章出处:【微信号:SiliconLabs,微信公众号:Silicon Labs】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何使用新版本J-Flash编程CW32 MCU

    1、从Segger公司官网下载安装最新版本JLink驱动,比如V7.96a,安装目录下没有JLinkDevices.xml文件。 2、在C:Users<用户名>
    发表于 11-12 07:24

    鸿蒙NEXT-鸿蒙老版本迁移新版本(API19,modelVersion5.1.1)

    、on-package.json5)的modelVersion和SDK版本号,完成后同步即可使用API19。特别提醒:在ability获取上下文时,原windowStage.get
    的头像 发表于 06-30 22:15 789次阅读
    鸿蒙NEXT-鸿蒙老<b class='flag-5'>版本</b><b class='flag-5'>迁移</b>最<b class='flag-5'>新版本</b>(API19,modelVersion5.1.1)

    戴尔数据保护软件迎来全新版本

    无缝运行的异常检测,一站式监控多达150个系统,额外的MFA多重身份验证Dell PowerProtect Data Manager19.19全新版本现已到来!
    的头像 发表于 06-27 13:55 690次阅读

    AG32 SDK新版本V1.7.7 :实现构建自动化功能及更新HyperRAM的RGB例程

    等。 AG32 的管脚可以灵活定义,引脚与STM32。并且内置2KLE FPGA, 非常适合MCU + FPGA/CPLD的应用场景。 AG32 SDK新版本V1.7.7 :实现构建自动化功能
    发表于 06-05 14:41

    普华基础软件开源汽车操作系统新版本代码上线

    近日,第二十一届上海国际汽车工业展览会现场,开源车用操作系统新版本代码上线仪式在中国电科展台成功召开。全球首个开源智能驾驶操作系统微内核龘EasyAda V2.1和首个规模化、量产级安全车控操作系统
    的头像 发表于 04-30 09:17 789次阅读

    普华基础软件开源车用操作系统迎来全新版本

    近日,普华基础软件开源车用操作系统媒体发布会在上海中国汽车会客厅召开——全球首个开源智能驾驶操作系统微内核龘EasyAda、开源安全车控操作系统小满EasyXMen全新版本正式发布。现场,普华基础软件开源项目技术团队专家就开源项目
    的头像 发表于 04-25 16:18 793次阅读

    SOA架构开发小助手PAVELINK.SOA-Converter 2.1.2新版本发布

    为提升汽车SOA架构设计开发效率,优化用户体验,我们对PAVELINK.SOA-Converter进行了全新升级。本次2.1.2新版本升级,聚焦于提升软件性能、扩展功能特性及增强用户交互体验。
    的头像 发表于 04-09 10:37 1249次阅读
    SOA架构开发小助手PAVELINK.SOA-Converter 2.1.2<b class='flag-5'>新版本</b>发布

    人脸识别指南:如何在树莓派上安装和设置 Dlib

    确保您的树莓派已安装最新版本的Raspbian系统。可通过以下命令更新系统:sudoapt-getupdatesudoapt-getupgrade同时确认已安装P
    的头像 发表于 03-24 17:31 1242次阅读
    人脸识别<b class='flag-5'>指南</b>:如<b class='flag-5'>何在</b>树莓派上安装和设置 Dlib

    AG32 SDK新版本1.7.0:加入dsp例程和Slave SPI例程

    新版本Version 1.7.0 1、加入dsp例程 加入dsp例程以及 DSP软件库 。 2、加入Slave SPI例程 加入用逻辑实现的Slave SPI例程spi/slave_spi ,提供
    发表于 03-17 10:04

    keil不同版本,有的文件在新版本上报错怎么办?要装两个版本一起用?

    有的文件在新版本上报错怎么办?要装两个版本一起用?
    发表于 03-10 07:05

    新版本 IDE 的启动速度变快了?原来是在背后做了这些!

    IDEA 需要加载和同步项目、执行索引编制以及完成许多其他小任务才能启用所有实用功能。在这篇博文中,我们将介绍在新版本 IntelliJ IDEA 为提高性能而采取的
    的头像 发表于 02-12 15:58 692次阅读
    <b class='flag-5'>新版本</b> IDE 的启动速度变快了?原来是在背后做了这些!

    GUI Guider v1.9.0全新版本上线

    新年伊始,GUI Guider也迎来了全新版本!这一次,我们带来了多项重磅更新,旨在为你提供更强大、更便捷的开发体验。无论你是工业控制、智能家居,还是消费电子领域的开发者,这些更新都将为你的项目注入新的活力!
    的头像 发表于 02-07 10:43 4496次阅读

    新版本 IDE 的启动速度变快了?原来是在背后做了这些!

    新版本 IntelliJ IDEA 为提高性能而采取的措施,这些措施缩短了代码可交互时间并使 IDE 从启动开始就具有更高的响应速度。
    的头像 发表于 01-24 13:49 754次阅读
    <b class='flag-5'>新版本</b> IDE 的启动速度变快了?原来是在背后做了这些!

    高通推出Qualcomm Aware平台最新版本

    在CES 2025上,高通技术公司宣布推出Qualcomm Aware平台的最新版本,这一基于云的服务平台支持企业为物流、零售、能源、智能家居和机器人等行业的智能网联终端增加可观测性、监测和定位功能
    的头像 发表于 01-07 10:36 1306次阅读

    索尼发布空间现实显示播放器新版本

    索尼于2024年12月发布适用于空间现实显示屏ELF-SR1和ELF-SR2的空间现实显示播放器新版本
    的头像 发表于 12-24 15:19 945次阅读