作者:peter | 更新時(shí)間:2017-04-23 | 瀏覽量:3761
在貝殼網(wǎng)站上申請(qǐng)了一片匯思銳的8266開(kāi)發(fā)底板

首先下載樂(lè)鑫的固件
然后按照下圖燒寫(xiě)固件

打開(kāi)匯思銳調(diào)試工具,按照上面一步一步設(shè)置

點(diǎn)擊airkiss 按鈕進(jìn)入airkiss 配網(wǎng)模式。

進(jìn)入樂(lè)鑫信息科技公眾號(hào),進(jìn)行配置

鏈接后串口調(diào)試圖,這樣你的網(wǎng)絡(luò)就鏈接到了WIFI上了,上電制動(dòng)鏈接WIFI

Esptouch配置和Airkiss差不多,請(qǐng)自已摸索下。接下來(lái)就是下載程序了,
首先需要你自已搭建好ARDUINO的IDE編譯環(huán)境(版本165以上可以編譯ESP8266就可以),不會(huì)的請(qǐng)?jiān)谪悮ぞW(wǎng)上看其他朋友的帖子,也可以百度。
下面是用貝殼的例程程序(開(kāi)關(guān)),可以在貝殼網(wǎng)上下載,修改自已的KEY和設(shè)備號(hào),燒寫(xiě)到ESP8266就OK了.
==========================================================
#include
#include
//宏定義 使用于nodemcu板
#ifdef NODEMCU
#define D0 16
#define D1 5
#define D2 4
#define D3 0
#define D4 2
#define D5 14
#define D6 12
#define D7 13
#endif
//============= 此處必須修該============
String DEVICEID="xxx"; // 你的設(shè)備編號(hào) ==
String APIKEY = "xxxx"; // 設(shè)備密碼==
//=======================================
unsigned long lastCheckInTime = 0; //記錄上次報(bào)到時(shí)間
const unsigned long postingInterval = 40000; // 每隔60秒向服務(wù)器報(bào)到一次const char* host = "www.placeboworld.cn";
const int httpPort = 8181;
int pins[1]={D1};
//int pins[4] = {D5,D6,D7,D1};//LED引腳配置
int state[1] = {HIGH};//上電輸出高電平
//int state[4] = {HIGH,HIGH,HIGH,HIGH};//上電輸出高電平
int arr_len = sizeof(pins)/sizeof(pins[0]);
void setup() {
Serial.begin(115200);
delay(1000);
//默認(rèn)輸出關(guān)閉電頻
for(int i=0;i pinMode(pins[i], OUTPUT);
digitalWrite(pins[i], state[i]);
}
}
WiFiClient client;
void loop() {
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
// Use WiFiClient class to create TCP connections
if (!client.connected()) {
if (!client.connect(host, httpPort)) {
Serial.println("connection failed");
delay(5000);
return;
}
}
if(millis() - lastCheckInTime > postingInterval || lastCheckInTime==0) {
checkIn();
}
// Read all the lines of the reply from server and print them to Serial
if (client.available()) {
String inputString = client.readStringUntil('\n');
inputString.trim();
Serial.println(inputString);
int len = inputString.length()+1;
if(inputString.startsWith("{") && inputString.endsWith("}")){
char jsonString[len];
inputString.toCharArray(jsonString,len);
aJsonObject *msg = aJson.parse(jsonString);
processMessage(msg);
aJson.deleteItem(msg);
}
}
}
void processMessage(aJsonObject *msg){
aJsonObject* method = aJson.getObjectItem(msg, "M");
aJsonObject* content = aJson.getObjectItem(msg, "C");
aJsonObject* client_id = aJson.getObjectItem(msg, "ID");
if (!method) {
return;
}
String M = method->valuestring;
if(M == "say"){
String C = content->valuestring;
String F_C_ID = client_id->valuestring;
if(C == "play"){
for(int i=0;i
state[i] = LOW;
digitalWrite(pins[i], state[i]);
}
sayToClient(F_C_ID,"LED All on!");
}else if(C == "stop"){
for(int i=0;i state[i] = HIGH;
digitalWrite(pins[i], state[i]);
}
sayToClient(F_C_ID,"LED All off!");
}
/* else{
int pin = C.toInt();
if(pin > 0 && pin <= arr_len){
pin--;
state[pin] = !state[pin];
digitalWrite(pins[pin], state[pin]);
}
sayToClient(F_C_ID,"LED pin:"+pin);
}*/
}
}
void checkIn() {
String msg = "{\"M\":\"checkin\",\"ID\":\"" + DEVICEID + "\",\"K\":\"" + APIKEY + "\"}\n";
client.print(msg);
lastCheckInTime = millis();
}
void sayToClient(String client_id, String content){
String msg = "{\"M\":\"say\",\"ID\":\"" + client_id + "\",\"C\":\"" + content + "\"}\n";
client.print(msg);
lastCheckInTime = millis();
}
==========================================================
最后說(shuō)下,用貝殼的遙控命令是play(開(kāi)),stop(關(guān)).沒(méi)找到可以上傳附件的按鈕,第一次發(fā)貼,還不熟悉
需要附件和更多的資料可以加圖片上的匯思銳QQ群,哪里都有,我只是把自已的一些不成熟的經(jīng)驗(yàn)和大家分享下。
