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

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

3天内不再提示

什么是构建器以及如何开始

星星科技指导员 来源:嵌入式计算设计 作者:Brandon Lewis,David 2022-08-16 10:24 次阅读

第 3 部分描述了使用 PICMG 的配置器工具将符合 IoT.1 的数据存储在 JSON 文件中的过程。JSON 是一种很好的格式,用于存储和传输人类可读的数据对象。然而,它并不是为机器解释而设计的,数据需要以我们的目标硬件(智能传感器)可以使用的方式呈现。

这就是建造者进来的地方。

什么是建造者?

“构建器”将 JSON 文件转换为机器可读的代码,然后将其上传到智能传感器硬件。PICMG 没有明确将 Builder 指定为 IoT.x 系列规范的一部分,但他们提供了可用于演示 Builder 如何运行的参考软件。

使用 PICMG 示例生成器的转换过程与 Mad Libs 的工作方式非常相似——生成的故事中省略了单词。根据选择填空的单词,您可以创建截然不同的含义。

当 PICMG 的示例生成器接收到配置的 JSON 文件时,它会获取数据并将其拆分为两个文件作为转换过程的一部分:“config.h”和“config.c”。

“config.h”包含可以打开或关闭的代码块的定义。

将活动的“config.h”定义调用到主 config.c 文件中以完成配置的数据模型和智能传感器独有的固件代码

剩下的唯一事情是使用微控制器的 C 编译器工具链编译 config.h 和 config.h 文件(构建器旨在与 AVR GNU 调试器 avr-gdb 一起使用)。

准备好建立自己的了吗?

准备好构建您自己的可互操作智能传感器了吗?您已经拥有入门所需的所有知识和工具。

作为快速复习,这里有一个物料清单快照:

传感器——任何传感器都可以,只要它有数据表。

微控制器板——在 PICMG 智能传感器挑战赛中,我们使用了Triple Ring Technologies 的基于 8 位 ATmega MCU的PICMG MicroSAM板。

PICMG IoT.1 Configurator – 将数据表值转换为 JSON 文件以供构建器解释的软件。从 Github ( PICMG/iot_configurator ( github.com ))下载符合 IoT.1 的参考配置器,或使用您自己的符合规范要求的配置器。

Builder – 供应商特定的软件,接受配置器的 JSON 文件,生成可由微控制器板读取的固件,并将其部署到目标。出于本演示的目的,我们创建了一个在 Github ( PICMG/iot_builder ( github.com )) 上可用的参考构建器。

现在您可以使任何传感器与任何逻辑设备互操作!

作者:Brandon Lewis,David Sandy

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2525

    文章

    48069

    浏览量

    739996
  • 代码
    +关注

    关注

    30

    文章

    4555

    浏览量

    66740
  • 编译器
    +关注

    关注

    1

    文章

    1576

    浏览量

    48606
收藏 人收藏

    评论

    相关推荐

    从头开始构建 RISC-V CPU使用分立逻辑芯片,通过最热门的新架构构建功能惊人的 CPU

    这是一种驱使人们自愿构建自己的CPU的痒。我们开始思考我们理解中的空白,这个空白潜伏在逻辑门和触发器如何单独工作以及机器代码如何控制完全组装的处理器之间。在硬连线电路开始随着软件不断变
    的头像 发表于 04-02 17:28 683次阅读

    鸿蒙开发【编译构建】讲解

    生成HAP、HAR和JAR包。 Rebuild Project 对工程中各个模块进行Clean操作后,重新进行构建,生成对应的HAP。 Clean Project 清除构建过程中的缓存文件,以及
    发表于 02-27 17:41

    DevEco Hvigor高效编译,构建过程新秘籍

    文件的耗时,另一方面可以复用构建过程中的增量缓存、减少增量缓存信息的读取与落盘操作。另外,启用DevEco Hvigor的常驻进程功能,还可以支持预览的急速预览功能和调试的Hot reload功能
    发表于 10-17 16:54

    OpenHarmony自定义构建函数:@Builder装饰

    开始,该装饰支持在ArkTS卡片中使用。 装饰器使用说明 自定义组件内自定义构建函数 定义的语法: @builder MyBuilderFunction() { ... } @Builder
    发表于 09-26 16:36

    STM32构建数字电源新方案

    STM32构建数字电源新方案,包含:STM32 MCU and MPU 产品矩阵、STM32平台化应用、数字电源核心逆变方案、数学加速等。
    发表于 09-05 08:11

    使用MDK构建Mbed操作系统项目

    、RTOS以及传感和I/O设备的驱动程序。 Med OS本身并不以CMSIS包的形式提供,但有自己的配置和依赖管理系统。 本应用笔记展示了如何通过将项目从med在线编译迁移到MDK来开始
    发表于 08-25 07:01

    如何在蜂鸟处理核的基础上扩展第三方指令?

    想咨询一下如何在蜂鸟处理核的基础上扩展第三方指令,使用户自定义指令,并如何构建机器码等内容? 我看了胡老师的RISC-V处理设计的书里面讲的使用custom1-4来进行扩展,并以EAI为实例进行
    发表于 08-16 07:36

    如何使用Python包装正确构建OpenVINO工具套件

    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/openvino/bin/intel64/Release/ 测试 构建。运行 以下脚本以导入内核,检查您是否正确构建了 Python* 包装
    发表于 08-15 07:13

    如何使用ARM编译构建Hello World

    在本教程中,我们将展示如何使用Arm构建一个名为hello_world.C的简单C程序DS-5中的编译工具链。 您可以找到Arm编译工具链的概述。本教程假定您已安装并获得Arm DS-5的许可。有关详细信息,请参阅获取从Ar
    发表于 08-08 07:55

    如何使用Arm Compiler 6构建Hello World

    在本教程中,您将学习如何使用Arm Compiler 6构建Hello World,并在Armv8固定虚拟平台(FVP)用Arm编译6构建Hello World并在Armv8 Fixed
    发表于 08-08 07:41

    如何构建我自己的嵌入式C编译

    只是为了获得如何构建我自己的嵌入式 C 编译的知识,如预处理、汇编、链接、生成 Hex 文件、elf 文件、映射文件。 任何有用的链接可用? 我是嵌入式软件工程师,并且具有 c 编程 python、bat 脚本方面的知识。
    发表于 06-08 08:10

    iMX8MM EVK中的ESPI环回测试,如何构建图像来测试ESPI环回以及在哪里可以找到这个测试代码?

    我正在为项目使用 iMX8MM EVK。 我想在 iMX8MM 板上进行硬件 ESPI 环回测试。但是,我能够构建 u-boot 映像并成功启动。 所以,我想知道如何构建图像来测试 ESPI 环回以及我在哪里可以找到这个测试代码
    发表于 05-25 06:43

    如何用4个传感和1个带显示的主机构建一种家庭安全?

    我试图搜索类似的主题,但我没有找到,如果存在抱歉。 所以我想用 4 个传感和 1 个带显示的主机构建一种家庭安全。 主 esp8266 需要从其他 4 个 esp8266 传感
    发表于 05-22 10:01

    如何构建一个简单的传感

    您可以自己构建一个简单的传感。 我的博客上有一个 PNP 和一个 NPN 晶体管、一个电阻和一个电容器的示例。 非常灵敏且易于构建,只需几美元。也许您甚至已经有库存的电子产品。 可
    发表于 04-28 08:23

    如何用ESP8266构建网络服务器

    我正在开始一个关于用 ESP8266 构建网络服务器的系列文章 第一个故事是构建一个带有一些文本字段的网页。 将文本放入字段并将其发送到 ESP。
    发表于 04-28 07:21