传统的嵌入式系统开发人员通常在没有连接的设备上工作,但是IoT需要连接到Internet的系统。这要求嵌入式系统开发人员学习如何连接他们的设备和使用更高级别的操作系统,例如实时操作系统(RTOS)。

  开发人员可以使用Amazon FreeRTOS,而不是从头开始学习每一个需要的细微差别来安全地连接嵌入式系统到Internet。这将使他们能够以一种安全的方式快速并轻松地将他们的设备连接到Amazon Web Services (AWS),从而简化他们的开发工作。本文将讨论并演示如何开始使用Amazon FreeRTOS。

  亚马逊FreeRTOS的介绍

  Amazon FreeRTOS是一个RTOS,它的核心是开源的FreeRTOS内核,添加了额外的组件,以支持本地和云的连接、安全性和无线(OTA)更新。FreeRTOS内核是一个众所周知的RTOS,它已经存在了十多年,并提供了一些有用的特性,例如:

  基于优先级的任务调度

  信号量

  互斥锁

  消息队列

  另外,FreeRTOS在麻省理工学院的软件许可下是免费的。

  让Amazon FreeRTOS独特而有趣的是,它将连接库和安全性添加到FreeRTOS中。然后,它将所有内容整合到一个单一的内聚框架中,使开发人员能够以安全的方式将他们的设备与云服务连接起来。

  选择亚马逊FreeRTOS硬件

  FreeRTOS内核本身在几十个不同的微控制器架构上工作。目前,亚马逊的FreeRTOS已经通过亚马逊FreeRTOS的资格认证程序,在四个不同的微控制器供应商硬件平台上进行了充分的测试和集成。这些都是:

  Microchip公司的好奇PIC32MZ EF开发委员会。

  NXP半导体LPC54018 IoT模块(图1)

  STMicroeletronics的STM32L4 Discovery Kit IoT节点。

  德州仪器CC3220SF-LaunchXL

  NXP半导体LPC54018 IoT模块的图像。

  

  图1:NXP半导体的LPC54018物联网模块是基于一个手臂®皮层®m4 180 MHz单片机128 mbit Macronix MX25L12835 Quad-SPI闪存。一个完全集成的Wi-Fi模块,可以从Amazon FreeRTOS快速入门。(图片来源:凯利讯半导体)

  每一个开发套件都经过了Amazon FreeRTOS的全面测试,但是开发人员可能有一个首选的硅供应商。例如,值得注意的是,亚马逊FreeRTOS还支持在线旅行社,但支持目前仅提供测试的德州仪器CC3220SF-LaunchXL(图2)。这个委员会是基于一只手臂®皮层®m4单片机和功能内置温度传感器,加速度计,三个发光二极管,和一个可编程的用户按钮。这个模块提供了一个完全集成的解决方案,可以从Amazon FreeRTOS开始。

  在未来,其他的董事会无疑也会得到OTA的支持,但如果这是一个关键的设计特征,那么从德州仪器的解决方案开始。

  德州仪器CC3220SF-LaunchXL图像。

  

  图2:德州仪器的CC3220SF-LaunchXL是一个完全集成的解决方案,可以从Amazon FreeRTOS开始。它还支持Amazon FreeRTOS OTA Beta演示示例。(图片来源:凯利讯半导体)

  大多数开发工具包都是单一的模块工具包,它们是单一的董事会解决方案。然而,Microchip好奇开发工具包要求开发人员购买额外的模块,如以太网、Wi-Fi模块和usbto - uart转换器。

  该板基于PIC32微控制器,但为了得到一个功能全面的板,可以与Amazon FreeRTOS一起使用,开发人员需要购买额外的组件。要想拥有一个功能完备的Amazon FreeRTOS,最好的组件是以下MikroElektronika MIKROE扩展模块:

  mikroe - 2046无线模块

  MIKROE USB-to-UART子板

  微芯片LAN8720子板

  然后将会出现完全组装的板,如图3所示。开发人员将准备运行Amazon RTOS应用程序的示例。

  微芯片技术的PIC32MZEF好奇开发工具包图像。

  

  图3:Microchip技术的PIC32MZEF好奇心开发工具包提供了一个模块化设计,允许开发人员定制他们在开发工具包中应用程序所需的组件。如图所示,还包括MIKROE Wi-Fi和MIKROE USB到UART的子板。(图片来源:微芯片技术)

  将Amazon FreeRTOS连接到云

  让Amazon FreeRTOS在上一节讨论的任何开发工具包上运行都很容易。每个开发委员会都有一个演示,可以逐步指导如何运行该演示。

  例如,微芯片委员会指令位于以下链接: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页面,该页面将提供Amazon FreeRTOS的软件配置列表。这些配置包括每个开发工具包的源文件,以及Amazon FreeRTOS模拟器。下载与开发工具包匹配的预定义配置并将其导入到开发环境中。例如,相应的“好奇号”委员会将使用预先定义的“连接到AWS IoT - Microchip配置,为好奇PIC32MZEF设计”。

  亚马逊FreeRTOS软件配置页面的图片。

  图5:Amazon FreeRTOS软件配置页面为不同的开发工具包和不同的应用程序提供了几个预定义的软件配置。使用这些预定义的配置来获得一个连接AWS和跳转start开发的演示应用程序。(图片来源:凯利讯半导体)

  一旦下载了Amazon FreeRTOS,开发人员应该返回到他们的AWS控制台,并单击settings按钮。在设置中,他们会发现他们有一个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控制台并选择Secure ->证书。可以选择创建快速证书。单击此选项将生成与图6中所示类似的证书。要为嵌入式设备生成密钥文件,需要使用私钥和证书。

  创建证书的映像,然后是密钥。

  

  图6:创建一个证书,然后一个密钥要求开发人员从AWS内部创建证书。将创建的三个文件是一个证书、一个公钥和一个私钥。

  密钥生成器位于:

  < BASE_FOLDER > \ demo \常见\ devmode_key_provisioning \ CertificateConfigurationTool \ CertificateConfigurator.htm

  在浏览器中加载html文件将显示类似于图7所示的界面。

  通过使用AWS控制台生成的证书和私有密钥文件,开发人员可以生成他们的aws_clientcredential_key。h配置文件。一旦完成,编译项目并将软件部署到嵌入的目标上。

  在AWS中生成的证书和私钥的图像。

  图7:在AWS中生成的证书和私钥用于创建将加载到微控制器中的关键配置模块,用于创建与AWS的安全连接。

  唯一剩下的步骤是让开发人员订阅他们的设备的MQTT消息。这可以在AWS中通过测试菜单实现,然后订阅:freertos/demo /echo。

  此时,开发人员应该看到MQTT消息安全地到达他们的AWS。

  使用Amazon FreeRTOS的技巧和技巧。

  与FreeRTOS一起站起来和运行是简单的,甚至是入门级的工程师。尽管它很容易,但是开发人员在开始使用Amazon FreeRTOS时应该记住一些技巧和技巧。

  在开发期间,使用12个月的免费试用期来安装和配置嵌入式产品。

  从一个预配置的示例开始,而不是从头开始配置一个示例。

  如果可能的话,订购一个完全组装的开发工具包,它可以与Amazon FreeRTOS一起使用。

  别忘了,FreeRTOS是一个开源的RTOS,并不是安全认证。

  花点时间通过AWS 10分钟教程,为如何有效地使用AWS提供一个很好的基础。

  结论

  在Amazon FreeRTOS中构建的功能可以为嵌入式开发人员提供一种方便地将他们的系统连接到Internet的方法。Amazon FreeRTOS本身是免费的,开发人员可以很容易地开始购买一个低成本的开发工具包,并通过现有的例子来确定Amazon FreeRTOS是否满足他们的设计需求。

使用Amazon FreeRTOS快速和安全地连接设计到云相关推荐

  1. 嵌入式 freertos_应嵌入式开发人员的要求:在Amazon FreeRTOS中检测错误

    嵌入式 freertos 简要介绍项目 (Briefly about projects) To begin with, I'll tell you a bit about the forerunner ...

  2. 在Amazon FreeRTOS V10中使用运行时统计信息

    在MCU on Eclipse网站上看到Erich Styger在8月2日发的博文,一篇关于在Amazon FreeRTOS V10中使用运行时统计信息的文章,本人觉得很有启发,特将其翻译过来以备参考 ...

  3. 使用 Amazon Pricing Calculator 在亚马逊云科技中国区域估算云使用成本

    亚马逊云科技为上百种云服务提供了按实际使用量付费的基本定价模式,并在此基础上支持多样的成本节省付费方式. 您可以从亚马逊云科技中国区域定价页面,了解亚马逊云科技各项产品和服务的定价策略.对于不管是从未 ...

  4. 东京见闻:快速走红日本市场 阿里云的三大秘密

    快速走红日本市场 阿里云的三大秘密 日本企业严谨.保守,不见兔子不撒鹰,但是进入日本市场4个月时间的阿里云,却受到越来越多日本企业的欢迎.昨日,日本东京,在前线访问阿里云日本公司时获悉,阿里云日本开服 ...

  5. 快速部署web项目上线云服务器

    快速部署web项目上线云服务器 一.第一步登录腾讯云 1.登录腾讯云后,先购买或者在最新活动中免费领取一个十五天的云服务器产品 2.然后点击头像 3.在云产品选项中选择你需要的云服务器或轻量级应用服务 ...

  6. 快速搭建Nextcloud+OnlyOffice私有云办公平台

    原作者:迈克·史密斯  转载来源:https://serenity-networks.com/how-to-install-onlyoffice-document-server-for-nextclo ...

  7. GaussDB(for MySQL)如何快速创建索引?华为云数据库资深架构师为您揭秘

    摘要:云服务环境下,如何解决客户基于大量数据创建索引的性能问题,成为云服务厂商的一个挑战.华为云GaussDB(for MySQL)通过引入并行创建索引技术,很好地解决了批量索引创建和临时添加索引等性 ...

  8. sso登录统一账号体系和集中认证授权,实现用户快速访问应用-哇谷云

    sso登录统一账号体系和集中认证授权,实现用户快速访问应用-哇谷云 主流应用接入 通过哇谷云的多因素身份验证,在原本静态账号口令的基础上增加一层动态口令,或借助"扫一扫".生物识别 ...

  9. 20分钟,使用Amazon SageMaker快速搭建属于自己的AIGC应用

    真火! 作为最近一段时间人工智能领域内的顶流之一,AIGC(AI-Generated Content)早已火爆出圈,频登各大互联网平台热搜. cite: 微软亚洲研究院官方微博 这段时间以来,基于深度 ...

最新文章

  1. Spark入门实战系列--2.Spark编译与部署(下)--Spark编译安装
  2. vsphere虚拟克隆虚拟服务器,vSphere实战攻略2:虚拟机模板与克隆
  3. CV2 puttext不能显示中文问题
  4. mysql完成字符串分割
  5. 系统学习深度学习(三十六)--Actor-Critic
  6. 计算机软件企业所属行业性质,最新企业所属行业类别、分类及行业代码查询表.doc...
  7. 【项目源码】个人博客源码推荐
  8. dw33d最新固件openwrt_【矿渣们的救赎】の 小米路由器mini刷OpenWrt
  9. springboot二手交易平台 毕业设计-附源码290915
  10. 焦点科技股份有限公司--软件测试--《社招、校招jd、公司介绍、培训发展、薪酬福利、公益慈善》整理
  11. 【Python】字符串转换为ASCII码
  12. python全栈示例_Python全栈之路--Django ORM详解
  13. 爬虫--可视化项目(一)
  14. C语言之strrchr函数
  15. 【刷题笔记4】木棍组成三角形问题(斐波那契数列)
  16. 忘记windows10密码重置密码
  17. 神器 Nginx 的学习手册
  18. 数据API集合【转载】
  19. 【深度学习】QA机器人的实现
  20. 如何判断系统 是ios还是 android

热门文章

  1. python面试自我介绍_python自我描述
  2. android kotlin扩展添加域名
  3. 微信小程序 瀑布流布局 终极解决方案
  4. 程序员们,挑一把适合自己的机械键盘吧。。
  5. 推荐系统-排序算法:GBDT+LR
  6. javascript--浅谈函数与闭包
  7. 机器学习基础:概率和熵
  8. CAP理论举例及说明
  9. 如何使用STM32和BLE收集SHT85传感器数据?
  10. ffprobe获取mp4音视频数据信息