作者:eboxmaker | 更新時間:2016-10-26 | 瀏覽量:4030
eBox目前只在STM32F1xx上進行了測試。。。
先來解讀下API接口吧
1、源代碼位置common->bigiot。
2、代碼共4個
文件bigiot.cpp和bigiot.h 這兩個文件是用戶需要調(diào)用的文件。標準的c++文件。類的結(jié)構(gòu)如下

bigiot_port.cpp和bigiot_port.h這兩個文件是網(wǎng)絡(luò)接口,主要為了程序分層化設(shè)計,更易于移植到各種網(wǎng)卡上。此文件向頂層提供了所需要的網(wǎng)絡(luò)接口。移植的時候需要修改的就是這兩個文件!

3、貝殼物聯(lián)的基本流程
連接服務器---->登錄---(成功)--->狀態(tài)改為online---->發(fā)送用戶數(shù)據(jù)
| |
<---(不成功)
該服務器由于不允許用戶踢掉線,所以導致如果用戶已經(jīng)登錄,客戶端異常掉線,服務器會保持在線狀態(tài)60s左右,在此期間用戶將無法登錄,必須等待服務器更新設(shè)備為offline狀態(tài)才能登陸成功。
4、用戶數(shù)據(jù)的格式
所有的通信格式都是采用json格式。詳情參考http://m.placeboworld.cn/help/1.html。
在eBox中已經(jīng)支持了cJSON,用戶可以直接調(diào)用cJSON接口進行字符串的處理。
5、如何使用eBox的庫實現(xiàn)自己的物聯(lián)網(wǎng)設(shè)備?
a、注冊貝殼物聯(lián)賬戶,添加自己的設(shè)備。這時候需要知道四個字符串,用戶ID,key,設(shè)備ID,數(shù)據(jù)接口ID(數(shù)據(jù)接口ID可以有多個)。
b、如果使用的不是eBox開發(fā)板需要修改main.cpp中的wifi.begin(&PA4, &uart2, 115200);第一個參數(shù)是8266的復位引腳,第二個是8266所連接的串口,第三個是8266的通信波特率。
如果使用的是eBox開發(fā)板請直接跳過此步驟。
c、打開工程后,找到WiFi下面的esp8266.cpp,打開修改char ssid[] = "xxxxx";char password[] = "xxxxxxx";。
d、修改用戶、設(shè)備接口,數(shù)據(jù)接口宏定義
//用戶、設(shè)備接口
#define USERID "897"
#define DEVICEID "931"
#define APIKEY "af1a1fde7"
//數(shù)據(jù)接口宏定義
#define DATA_ID "865"
#define TEMPERATURE_ID "866"
#define HUMIDITY_ID "867"
e、下載程序,打開串口調(diào)試助手查看串口輸出,打開網(wǎng)頁進入設(shè)備列表。查看數(shù)據(jù)。
f、如何下發(fā)指令控制單片機端動作?
修改void BigIot::process_message(uint8_t *buf)此函數(shù)。默認例程中是收到say play消息會打開設(shè)置PB8位高電平,say stop設(shè)置PB8低電平。用戶可以增加其他指令。
下面上傳代碼。。。