第 3 部分描述了使用 PICMG 的配置器工具將符合 IoT.1 的數(shù)據(jù)存儲(chǔ)在 JSON 文件中的過程。JSON 是一種很好的格式,用于存儲(chǔ)和傳輸人類可讀的數(shù)據(jù)對(duì)象。然而,它并不是為機(jī)器解釋而設(shè)計(jì)的,數(shù)據(jù)需要以我們的目標(biāo)硬件(智能傳感器)可以使用的方式呈現(xiàn)。
這就是建造者進(jìn)來的地方。
什么是建造者?
“構(gòu)建器”將 JSON 文件轉(zhuǎn)換為機(jī)器可讀的代碼,然后將其上傳到智能傳感器硬件。PICMG 沒有明確將 Builder 指定為 IoT.x 系列規(guī)范的一部分,但他們提供了可用于演示 Builder 如何運(yùn)行的參考軟件。
使用 PICMG 示例生成器的轉(zhuǎn)換過程與 Mad Libs 的工作方式非常相似——生成的故事中省略了單詞。根據(jù)選擇填空的單詞,您可以創(chuàng)建截然不同的含義。
當(dāng) PICMG 的示例生成器接收到配置的 JSON 文件時(shí),它會(huì)獲取數(shù)據(jù)并將其拆分為兩個(gè)文件作為轉(zhuǎn)換過程的一部分:“config.h”和“config.c”。
“config.h”包含可以打開或關(guān)閉的代碼塊的定義。
將活動(dòng)的“config.h”定義調(diào)用到主 config.c 文件中以完成配置的數(shù)據(jù)模型和智能傳感器獨(dú)有的固件代碼
剩下的唯一事情是使用微控制器的 C 編譯器工具鏈編譯 config.h 和 config.h 文件(構(gòu)建器旨在與 AVR GNU 調(diào)試器 avr-gdb 一起使用)。
準(zhǔn)備好建立自己的了嗎?
準(zhǔn)備好構(gòu)建您自己的可互操作智能傳感器了嗎?您已經(jīng)擁有入門所需的所有知識(shí)和工具。
作為快速復(fù)習(xí),這里有一個(gè)物料清單快照:
傳感器——任何傳感器都可以,只要它有數(shù)據(jù)表。
微控制器板——在 PICMG 智能傳感器挑戰(zhàn)賽中,我們使用了Triple Ring Technologies 的基于 8 位 ATmega MCU的PICMG MicroSAM板。
PICMG IoT.1 Configurator – 將數(shù)據(jù)表值轉(zhuǎn)換為 JSON 文件以供構(gòu)建器解釋的軟件。從 Github ( PICMG/iot_configurator ( github.com ))下載符合 IoT.1 的參考配置器,或使用您自己的符合規(guī)范要求的配置器。
Builder – 供應(yīng)商特定的軟件,接受配置器的 JSON 文件,生成可由微控制器板讀取的固件,并將其部署到目標(biāo)。出于本演示的目的,我們創(chuàng)建了一個(gè)在 Github ( PICMG/iot_builder ( github.com )) 上可用的參考構(gòu)建器。
現(xiàn)在您可以使任何傳感器與任何邏輯設(shè)備互操作!
作者:Brandon Lewis,David Sandy
審核編輯:郭婷
-
傳感器
+關(guān)注
關(guān)注
2553文章
51523瀏覽量
757354 -
代碼
+關(guān)注
關(guān)注
30文章
4841瀏覽量
69217 -
編譯器
+關(guān)注
關(guān)注
1文章
1643瀏覽量
49345
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
小白學(xué)大模型:構(gòu)建LLM的關(guān)鍵步驟
![小白學(xué)大模型:<b class='flag-5'>構(gòu)建</b>LLM的關(guān)鍵步驟](https://file.elecfans.com/web2/M00/4E/DC/poYBAGLCjeiALm_WAAAYmfR7Qec474.png)
EE-312:使用Blackfin處理器構(gòu)建復(fù)雜的VDK/LwIP應(yīng)用
![EE-312:使用Blackfin處理<b class='flag-5'>器</b><b class='flag-5'>構(gòu)建</b>復(fù)雜的VDK/LwIP應(yīng)用](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用SSR構(gòu)建React應(yīng)用的步驟
如何構(gòu)建物聯(lián)網(wǎng)系統(tǒng)
使用Python構(gòu)建高效的HTTP代理服務(wù)器
【龍芯2K0300蜂鳥板試用】SDK部署與構(gòu)建
使用超聲波發(fā)送器和接收器構(gòu)建高性能NDT系統(tǒng)
![使用超聲波發(fā)送<b class='flag-5'>器</b>和接收<b class='flag-5'>器</b><b class='flag-5'>構(gòu)建</b>高性能NDT系統(tǒng)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評(píng)論