人物如何利用FreeRTOS OTA特性与常用现场总线的5大技巧
在物联网(IoT)设备连接到云的过程中,Amazon FreeRTOS提供了简化操作。然而,实现现场升级固件仍然是许多开发人员面临的一个主要挑战。引导程序是完成固件升级的关键工具,它们以不同的形式存在于各种设备架构和通信外设中。为了使开发者可以专注于产品差异化和特性,而不是从头开始开发引导程序,本文将探讨如何使用内置在Amazon FreeRTOS中的引导程序功能来快速部署解决方案。
OTA升级概述
Amazon FreeRTOS是一个实时操作系统,它包含了连接AWS所需的一切库。这意味着它不仅仅是一个FreeRTOS内核,还包括了与AWS安全通信所需的所有库。OTA特性位于单独的OTA库中,这必须被单独配置才能包含在a:FreeRTOS下载中。
a:FreeRTOS OTA服务包括必要的软件,以便进行以下操作:数字签名和加密固件、安全地部署新固件映像到单个设备或群组、跟踪部署进度、调试失败等。在运行多种AWS服务(如OTA管理器服务、AWS IoT作业服务、串流服务以及代码签名服务)时,这些功能得以提供。
入门指南
选择合适的硬件平台对于成功设置a:FreeRTOS至关重要。目前支持多种开发板,如Texas Instruments SimpleLink Wi-Fi CC3220SF Wireless LaunchPad Development Kit、Microchip Technology PIC32MZ EF Curiosity Development Board等。此篇文章将重点介绍SimpleLink Wi-Fi CC3220SF,因为它是目前唯一集成Wi-Fi模块且物理尺寸最小化并能耗降低最为显著。
除了硬件选择之外,专业编程器也非常重要,如Segger Microcontroller Systems' J-Link Ultra+,这能够提供无限断点,以及极快SWO和接口时钟速率,使得应用跟踪成为可能。
配置Amazon FreeRTOS以实现OTA升级
默认情况下,OTA库未包含在预配置的a:FreeRTOS包中,因此需要手动配置这些库及应用。在AWS IoT控制台中,可以点击“Create new”按钮开始创建自定义配置。一旦创建好自定义配置,就可以添加OTS library,并通过选择CC3220SF-LAUNCHXL作为硬件平台来启动相关文件及驱动程序,但要注意的是,只有这样做才会自动引入OTS library,不会自动添加OTS feature。如果没有正确设置的话,那么即使你已经选择了OTS library,也不会得到任何效果。
设置示例代码
一旦导入aws_demos OTA示例,便需要执行若干任务首先是确认已连接到AWS,然后再执行其他操作。此后修改OTA演示非常简单只需打开aws_demo_runner.c模块,将vStartMQTTEchoDemo调用后的注释去掉,而vStartOTAUpdateDemoTask调用前取消注释即可进行快速编译构建项目,在启用引导程序功能的情况下,该项目便可执行。
总结
本文展示了如何利用内置于 Amazon FreeRTOS 中 的 引导程序功能 来 实现 物联网 设备 的 快速 在 现场 升级 固 件 解决方案。这涉及 到 选 择 合 适 的 硬 件 平 台 配 置 和 配 置 AWS 以 进 行 OTA 升 级。本文还 提 供 了 入 门 指 南 和 实 用 技 巧,以 帮 助 开 发 人 员 在 实验室 中 成 功 设置 a:Freertos 并 使用 内 建 引 导 程 序 功能 执行ota升级任务。