azure 入门
微软的Azure Sphere是一个有趣的概念,它融合了安全的云服务,安全的设备和新的基于Linux的操作系统,所有这些都集成到一个平台和一个基于Visual Studio的开发平台中。 我最近收到了第一批MT6320开发板之一,并且一直在试用它。
物联网(物联网)面临的主要问题之一是安全性。 我们都听说过智能灯泡如何成为僵尸网络的一部分,以及闯入家庭集线器和监视设备有多么容易。 问题是,我们如何保护没有信任根和追踪供应链的设备?
这就是Sphere的用武之地,它将安全计算概念与IoT相结合。 设计的关键是设备,操作系统和云服务之间的端到端链接。 该平台的核心是一个安全的微控制器,它具有标准的ARM处理和实时内核,以及Microsoft的Pluton内核,这些内核混合了CPU和硬件的信任根,建立在Windows使用可信计算模块的熟悉概念上。安全启动并以密码方式管理关键系统组件。
保护硬件和生态系统只是故事的一部分。 编写代码并将其交付给Sphere设备有多容易? 您可以拥有最安全的硬件,但是如果您无法交付代码,那么它最终将毫无用处。 Sphere在Starbucks上进行的原始演示标志着Microsoft有望提供可用的开发人员体验,但是我们必须等到他们发布工具后才能看到它多么容易。
![球形装置](https://i-blog.csdnimg.cn/blog_migrate/2330c02fd31fead9400d43fbeab7e5bf.png)
设置Sphere开发人员套件
Sphere开发人员工具包的入门相对较快。 该开发板通过USB电缆连接到PC,并自动设置为通过三个USB串行端口连接的串行设备。 连接后, 下载Sphere SDK for Visual Studio 。 尽管从技术上讲仍是预览版,但它已准备好构建应用程序并在发布新功能时获得定期更新。
在安装期间,Sphere SDK会通过开发人员板上的USB连接添加IP over IP,以及其自己的命令行工具。 需要使用命令行工具将设备更新到最新的操作系统,并控制将其注册到云托管的Azure Sphere Service的过程。 所有命令都以azsphere.exe为前缀; 在其开发人员命令提示工具(不是Windows终端)中键入azsphere
,以从内置帮助中获取可用命令的列表。
Azure Sphere设备是从Azure管理的,这需要设置连接到Azure Active Directory的Azure帐户。 首次登录会自动创建一个Azure Sphere租户,该租户隔离您的已注册设备,并确保只有您可以管理它们并将软件部署到它们。 设备需要“ 声明 ”才能进行管理; 曾经声称它们不能被其他任何人使用或管理,即使您将开发板出售给另一个用户也是如此。 每个设备都有其自己的唯一ID,以将其标识到Azure Sphere服务并将其锁定到租户帐户。
连接到Wi-Fi
使用直接连接的设备只是故事的一部分。 Sphere需要连接性,以便在部署时或作为开发环境的一部分独立运行。 使用内置Wi-Fi将其联机,是使用命令行工具通过azsphere device wifi
命令配置开发板的内置Wi-Fi的azsphere device wifi
。 首先检查其状态,然后添加SSID和密钥。 Sphere仅支持WPA或WPA2,将不使用隐藏的SSID。 连接后,设备将自动检查无线更新并安装。 您可能需要等待几分钟,才能准备使用设备。
您的设备现在可以使用代码了。 Microsoft提供了一个初始示例应用程序 ,作为SDK的一部分,该设备可使设备LED闪烁。 首先,您需要使用azsphere device prep-debug
命令打开调试支持。 这样可以锁定无线更新,因此被测代码不会被覆盖,并且可以使设备准备从本地Visual Studio获取代码。
代码使用C语言编写,并且使用与大多数设备类似的语法,并带有将I / O映射到其端口的库。 加载了通用I / O库和适当的应用程序清单后,编写可以触发输出或读取输入的代码相对简单,就像使用Arduino或任何其他微控制器一样。 可以直接从Visual Studio将代码推送到Sphere设备,并通过USB电缆进行直接调试访问。 其他库增加了对实时代码的支持 ,您需要将实时代码构建Sphere MCU硬件到控制系统中。
使用无线部署
当您开始使用OTA( 无线)部署时,事情会变得很有趣。 首先准备设备,为其指定一个SKU名称,然后将其加入设备组。 云服务使用这些来部署代码。 设备组使您可以将特定设备定向到软件的特定版本,从而支持在不同的测试设备上测试不同版本的代码。 然后,将设备连接到部署您的应用程序的源。
通过将OTA提要链接到您的应用程序映像包,构建代码会将其部署到适当的通道,并且设备重置将下载它并使其开始运行。 这种方法使您可以将一个设备或什至一组设备连接到CI / CD的构建过程,在构建和测试设备时将代码推送到开发和生产设备 。
更高级的功能
微软已经在Linux上构建了SphereOS,但是您将无法访问任何已部署设备的命令行,尤其是如果您将Sphere MCU嵌入消费类硬件中时。 厨房电器中的控制器不易访问,可用按钮的选择有限,使用户难以选择无线网络,更不用说输入WPA密码了。 Microsoft在此处以参考解决方案的形式提供了一个选项,该解决方案使用蓝牙低功耗(BLE)设备从电话应用程序接收WPA配置信息以设置基于Sphere的设备,并演示如何将BLE硬件连接到Sphere开发板。
微软仍在为其基于Linux的SphereOS推出新功能。 最新的版本在其安全的MCU中解锁了实时内核,使您可以访问构建复杂控制系统(如工业控制系统中使用的控制系统)必不可少的硬件。 现在,您所需要的就是开始在开发板上构建自己的应用程序。 但这仅仅是个开始。 为了真正利用Azure Sphere的安全环境,您必须开始将其与生产硬件一起使用。
翻译自: https://www.infoworld.com/article/3407716/getting-started-with-azure-sphere.html
azure 入门