【2022得捷电子创新设计大赛】 树莓派上编译合约数据上报
[复制链接]
# 【2022得捷电子创新设计大赛】 树莓派上编译合约数据上报
通过前面服务端的配置好以后,终端就可以使用sdk把数据上链了,这里我们使用了摩联的SDK;
BoAT IoT Framework是面向蜂窝模组的C语言区块链应用框架客户端软件,便于移植到各类模组中,帮助基于蜂窝模组的物联网应用连接区块链,实现数据上链等业务。BoAT IoT Framework SDK向物联网应用提供的功能包括发起链上交易、智能合约C接口代码自动生成、调用智能合约、管理区块链密钥等。
**已支持的区块链:**
以太坊/PolygonPlatONPlatONEFISCO-BCOSHyperledger FabricHuawei BCS (华为链)Chainmaker (长安链)VenaChain (万纳链)
1.下载sdk到树莓派后,把我们的合约放到对应的文件夹
2.更改CMakeLists.txt,他原本是编译helloworld,这里该我们的合约;
3.然后就是编译
make demo
编译完成后,可以看到合约生产了对应的.c和.h
4.在程序中加入头文件,在根据生产的.c文件的接口调用即可
EEcontract.h
#include "boatconfig.h"
#include "boatiotsdk.h"
#ifndef SOLIDITY_TYPE_MAPPING
#define SOLIDITY_TYPE_MAPPING
// Types specially defined for mapping from Solidity
typedef BUINT8 Bbytes1[1];
typedef BUINT8 Bbytes2[2];
typedef BUINT8 Bbytes3[3];
typedef BUINT8 Bbytes4[4];
typedef BUINT8 Bbytes5[5];
typedef BUINT8 Bbytes6[6];
typedef BUINT8 Bbytes7[7];
typedef BUINT8 Bbytes8[8];
typedef BUINT8 Bbytes9[9];
typedef BUINT8 Bbytes10[10];
typedef BUINT8 Bbytes11[11];
typedef BUINT8 Bbytes12[12];
typedef BUINT8 Bbytes13[13];
typedef BUINT8 Bbytes14[14];
typedef BUINT8 Bbytes15[15];
typedef BUINT8 Bbytes16[16];
typedef BUINT8 Bbytes17[17];
typedef BUINT8 Bbytes18[18];
typedef BUINT8 Bbytes19[19];
typedef BUINT8 Bbytes20[20];
typedef BUINT8 Bbytes21[21];
typedef BUINT8 Bbytes22[22];
typedef BUINT8 Bbytes23[23];
typedef BUINT8 Bbytes24[24];
typedef BUINT8 Bbytes25[25];
typedef BUINT8 Bbytes26[26];
typedef BUINT8 Bbytes27[27];
typedef BUINT8 Bbytes28[28];
typedef BUINT8 Bbytes29[29];
typedef BUINT8 Bbytes30[30];
typedef BUINT8 Bbytes31[31];
typedef BUINT8 Bbytes32[32];
typedef Bbytes16 BUINT128;
typedef Bbytes16 BSINT128;
typedef Bbytes32 BUINT256;
typedef Bbytes32 BSINT256;
#endif
BCHAR *EEcontract_getUseByIddt(BoatFiscobcosTx *tx_ptr, BCHAR*key);
BCHAR *EEcontract_saveDate(BoatFiscobcosTx *tx_ptr, BCHAR*time, BCHAR*use, BCHAR*id, BCHAR*key);
调用接口
对应更改ip还有合约地址
更改完成后再次编译运行
可以看到通信OK,没有问题。
5.web端查看数据
|