close
当前位置: 北京赛车软件平刷王 > 物联网设计开发 > 技术文章 >

使用Amazon FreeRTOS将设计快速安全地连接到云端

传统的嵌入式系统开发人员通常在断开设备的裸机级别工作,但北京赛车软件平刷王需要系统连接到Internet。这要求嵌入式系统开发人员学习如何连接他们的设备并使用更高级别的操作系统,例如实时操作系统(RTOS)。
开发人员可以使用Amazon FreeRTOS,而不是从头开始学习将嵌入式系统安全连接到Internet所需的每一个细微差别。这将使他们能够以安全的方式快速轻松地将他们的设备连接到亚马逊网络服务(AWS),从而简化他们的开发工作。本文将讨论并演示如何开始使用Amazon FreeRTOS。

亚马逊FreeRTOS简介

Amazon FreeRTOS是一种RTOS,其核心是开源的FreeRTOS内核,添加了额外的组件以实现本地和云连接,安全性和无线(OTA)更新。FreeRTOS内核是一个着名的RTOS,已经有十多年的历史了,它提供了一些有用的功能,例如:
  • 基于优先级的任务调度
  • 信号灯
  • 互斥
  • 消息队列
另外,FreeRTOS可以根据MIT软件许可免费获得。
什么让Amazon FreeRTOS对于嵌入式软件开发人员来说是独特和有趣的,就是它为FreeRTOS增加了连接库和安全性。然后,它将它们集中到一个统一的框架中,开发人员可以立即以安全的方式将设备立即连接到云服务。

选择Amazon FreeRTOS硬件

FreeRTOS内核本身适用于几十种不同的微控制器架构。目前,亚马逊FreeRTOS已通过亚马逊FreeRTOS认证计划进行了全面测试并集成到四个不同的微控制器供应商硬件平台上。这些是:
  • Microchip的 好奇心PIC32MZ EF开发板
  • 恩智浦半导体的LPC54018物联网??椋ㄍ?)
  • STMicroeletronics的 STM32L4发现套件IoT节点
  • 德州仪器的CC3220SF-LaunchXL
恩智浦半导体LPC54018 IoT??榈耐计? height=
图1:NXP半导体LPC54018的IoT??槭腔谝桓霰?reg;皮质®具有128兆比特-M4 180 MHz的微控制器旺宏 MX25L12835四SPI闪存。一款完全集成的Wi-Fi???,可快速启动亚马逊FreeRTOS。(图片来源:恩智浦半导体)
这些开发套件中的每一款都已经通过亚马逊FreeRTOS进行了全面测试,但开发人员可能会有首选的硅片供应商。例如,值得注意的是,Amazon FreeRTOS也支持OTA,但目前仅在德州仪器CC3220SF-LaunchXL的 beta测试中提供该支持(图2)。该板基于ARM ®皮质® -M4微控制器,并设有一个板上温度传感器,加速计,三个LED,和一个可编程用户按钮。该??樘峁┝艘桓鐾耆傻慕饩龇桨?,以开始使用Amazon FreeRTOS。
未来,其他电路板无疑也将得到OTA的支持,但如果这是目前关键的设计特征,那么请从德州仪器解决方案开始。
德州仪器的CC3220SF-LaunchXL的图片
图2:德州仪器的CC3220SF-LaunchXL是开始使用亚马逊FreeRTOS的完全集成解决方案。它还支持亚马逊FreeRTOS OTA Beta演示示例。(图片来源:德州仪器)
大多数开发套件都是单??樘准?,是单板解决方案。然而,Microchip Curiosity开发套件要求开发人员购买其他???,例如以太网,Wi-Fi??楹蚒SB转UART转换器。
该开发板基于PIC32微控制器,但为了获得可与亚马逊FreeRTOS一起使用的功能齐全的开发板,开发人员需要购买额外的组件。要获得全功能的Amazon FreeRTOS示例,最好的组件是以下MikroElektronika MIKROE扩展??椋?br />
  • MIKROE-2046 Wi-Fi???/li>
  • MIKROE USB-UART子板
  • Microchip LAN8720子板
完整的组装电路板将如图3所示??⑷嗽苯急负迷诵惺纠鼳mazon RTOS应用程序。
Microchip Technology PIC32MZEF好奇心开发套件的图片
图3:Microchip Technology的PIC32MZEF好奇心开发套件提供了一种??榛杓?,允许开发人员在其开发套件中定制其应用所需的组件。所示图像还包括MIKROE Wi-Fi和MIKROE USB至UART子板。(图片来源:Microchip Technology)

将Amazon FreeRTOS连接到云

在上一节中讨论的任何开发工具包上启动并运行Amazon FreeRTOS都很容易。每个开发板都有一个演示,可以随时通过分步说明如何运行演示。例如,Microchip电路板的说明位于以下链接:https : //docs.aws.amazon.com/freertos/latest/userguide/getting_started_mch.html。
首先,找到适合开发工具包的入门指南。
接下来,设置硬件。对于大多数开发套件来说,硬件是全面的,但如果选择了Microchip解决方案,则需要将每个??榘逄砑拥胶闷姘?,并且需要连接一个外部编程工具,如ICD4。
Microchip PIC32MZEF好奇心开发套件的图片
图4:PIC32MZEF好奇心开发套件组装并连接到ICD4编程工具。该设置使用有线以太网连接来运行演示。(图片来源:亚马逊)
硬件设置完成后,下一步是安装编译Amazon FreeRTOS示例的开发环境。例如,使用Microchip的开发人员可以下载MPLAB X以及XC32编译器。
为了获得对Amazon FreeRTOS示例的访问权限,请注册AWS并访问其控制台。AWS确实提供了一个为期12个月的免费试用层,允许开发人员访问AWS,Amazon FreeRTOS和其他对开发连接设备有用的功能。注册一个帐户可以在这里完成。帐户创建完成后,访问Amazon FreeRTOS页面其中将提供亚马逊FreeRTOS的软件配置列表。这些配置包括每个开发工具包的源文件以及Amazon FreeRTOS模拟器。下载与开发套件相匹配的预定义配置并将其导入到开发环境中。例如,相应的好奇心板将使用预定义的“连接到为好奇PIC32MZEF设计的AWS IoT - Microchip配置”。
Amazon FreeRTOS软件配置页面的图像
图5:Amazon FreeRTOS软件配置页面为不同的开发套件和不同的应用程序提供了几种预定义的软件配置。使用这些预定义的配置来获取连接到AWS的演示应用程序并快速开始开发。(图片来源:亚马逊)
一旦下载了Amazon FreeRTOS,开发人员应该返回到他们的AWS控制台并点击设置按钮。在设置下,他们会发现他们有一个分配给他们的IoT端点,例如:
<1234567890123> .iot。<us-east-1> .amazonaws.com。
这个重要的数字允许物联网设备连接到AWS。然后开发人员会在示例项目中找到aws_clientcredential.h并设置以下属性:
  • clientcredentialMQTT_BROKER_ENDPOINT
  • clientcredentialIOT_THING_NAME
  • clientcredentialWIFI_SSID
  • clientcredentialWIFI_PASSWORD
  • clientcredentialWIFI_SECURITY
在这一点上,开发人员只需要配置他们的设备密钥。为了生成密钥,请转到AWS控制台并选择安全 - >证书。有一个选项可以创建一个快速证书。单击此选项将生成类似于图6所示的证书。需要私钥和证书才能为嵌入式设备生成密钥文件。
创建证书然后是密钥的图像
图6:创建一个证书然后一个密钥需要开发人员从AWS内部创建他们的证书。将要创建的三个文件是证书,公钥和私钥。(图片来源:亚马逊)
密钥生成器位于:
<BASE_FOLDER> \演示\共同\ devmode_key_provisioning \ CertificateConfigurationTool \ CertificateConfigurator.htm
在浏览器中加载html文件将显示类似于图7所示的界面。
使用从AWS控制台生成的证书和私钥文件,开发人员可以生成他们的aws_clientcredential_key.h配置文件。完成此操作后,编译项目并将软件部署到嵌入式目标上。
AWS中生成的证书和私钥的映像
图7:在AWS中生成的证书和私钥用于创建加载到微控制器中的密钥配置???,并用于创建到AWS的安全连接。(图片来源:亚马逊)
剩下的唯一步骤是开发人员订阅其设备的MQTT消息。这可以通过进入测试菜单然后订阅:freertos / demos / echo在AWS内完成
此时开发人员应该看到MQTT消息安全地到达他们的AWS。

使用Amazon FreeRTOS的技巧和诀窍

即使是入门级工程师,使用FreeRTOS启动和运行也非常简单和容易。尽管很容易,但开发人员在开始使用Amazon FreeRTOS时应注意以下几点提示和技巧。这些包括:
  • 在设计阶段,通过查看以下网页评估与使用AWS相关的成本:https : //aws.amazon.com/iot-device-management/pricing/
  • 在开发过程中,使用AWS的12个月免费试用期来设置和配置嵌入式产品。
  • 从预先配置的示例开始,而不是从头开始配置。
  • 如果可能的话,订购一款完全组装的开发套件,该套件旨在与亚马逊FreeRTOS一起使用。
  • 不要忘记FreeRTOS是一个开源的RTOS,并没有通过安全认证。
  • 花时间学习AWS 10 Minute教程,这将为如何有效使用AWS提供坚实的基础。
  • 考虑使用Amazon FreeRTOS的内置无线(OTA)更新功能(https://docs.aws.amazon.com/freertos/latest/userguide/freertos-ota-dev.html)。

结论

Amazon FreeRTOS内置的功能可以为嵌入式开发人员提供一种轻松将他们的系统连接到Internet的方式。亚马逊FreeRTOS本身是免费的,开发人员可以通过购买低成本开发套件,并通过现有示例轻松入门,以确定Amazon FreeRTOS是否满足其设计需求。

(责任编辑:ioter)

用户喜欢...

德州仪器宣布其SimpleLink? MCU平台集成全新的Amazon FreeRTOS,实现快速云连接

北京赛车软件平刷王 www.64tda.net 德州仪器和亚马逊AWS为物联网设备实现端到端云连接提供持续支持 德州仪器(TI)近日宣布,SimpleLink?微控制器(MCU)平台集成全新的亚马逊FreeRTOS,帮助开发商快速而安全地将物联网(Io...


对比为μClinux、μC/OS-II、eCos、FreeRTOS和rt-thread

基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择。分别为Clinux、C/OS-II、eCos、FreeRTOS和rt-thread。下面分别介绍这五种嵌入式操作系统的特点及不足,通过对比,读者可以根据...


FreeRTOS任务调度研究

这篇文章不介绍FreeRTOS移植,只是最近针对多核ARM Cortex系列平台做了移植后的一篇总结研究文章。所以不涉及对FreeRTOS整体的介绍,而只是分析任务调度这一块的机制。对应的Demo参考自CORTE...


合MSP430F5438和FreeRTOS总结一下如何使用嵌入式操作系统实现低功耗工作

0.前言 MCU实现低功耗本质而言便是停止MCU工作,通过中断的方式重新唤醒MCU,这些中断可以包括外部IO中断,UART接收中断,定时器中断等等。如果结合嵌入式操作系统,可以在空任务或者空任...


在FreeRTOS嵌入式操作系统中,如何设置STM32 Cortex M3和M4系列MCU的中断优先级

前言 本文将说明在FreeRTOS嵌入式操作系统中,如何设置STM32 Cortex M3和M4系列MCU的中断优先级。 总结 【1】STM32L1系列,STM32F1系列,STM32F4系列,设置NVIC时需要使用 NVIC_PriorityGroup_4 。 【2】抢占优...


嵌入式操作系统FreeRTOS的原理与实现

摘要:FreeRTOS是一个源码公开的免费的嵌入式实时操作系统,通过研究其内核可以更好地理解嵌入式操作系统的实现原理.本文主要阐述FreeRTOS系统中的任务调度机制、时间管理机制、任务管理...


FreeRTOS操作系统介绍

FreeRTOS(读作"free-arr-toss")是一个嵌入式系统使用的开源实时操作系统。FreeRTOS被设计为“小巧,简单,和易用”,能支持许多不同硬件架构以及交叉编译器。 FreeRTOS自2002年Richard Barry开始开发以...


FreeRTOS 特性简介

FreeRTOS 由 Richard Barry 开发,是一个开源的、可移植的、小型的嵌入式实时操作系统内核。FreeRTOS 既支持抢占式多任务,也支持协作式多任务。 FreeRTOS的主要特性如下: 实时性: FreeRTOS “可以...


FreeRTOS 使用指南

繁星电子开发团队制作 作为一个轻量级的操作系统,FreeRTOS 提供的功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要。FreeRTOS 内核支...


FreeRTOS--API函数

一、任务创建 1. xTaskCreate task. h portBASE_TYPE xTaskCreate( pdTASK_CODE pvTaskCode, const portCHAR * const pcName, unsigned portSHORT usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pvCreatedTask ); 创建新...