找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4293|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

ESP8266怎么通過(guò)網(wǎng)絡(luò)控制?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:580798 發(fā)表于 2019-7-9 11:57 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
現(xiàn)在介紹一下使用esp8266模塊串口發(fā)送AT指令的方式通過(guò)http方式GET、POST請(qǐng)求,發(fā)送溫濕度到服務(wù)器并存入數(shù)據(jù)庫(kù)。
首先我們需要搭建一個(gè)ESP8266的服務(wù)器。這里我使用PHP搭建。一、服務(wù)器搭建
1、裝phpstudy軟件。打開(kāi)網(wǎng)站根目錄。我在網(wǎng)站根目錄下新建了一個(gè)zhsx的文件夾,里面存放PHP的文件。一個(gè)有兩個(gè)php文件,conn.php(用來(lái)連接數(shù)據(jù)庫(kù)的)和mcu.php(用來(lái)接收數(shù)據(jù)的)。
2、conn.php代碼

    <?php
    header("Content-type:text/html;charset=utf-8");
    $conn = mysql_connect("localhost", "root", "root");
    if (!$conn) {
        die('連接數(shù)據(jù)庫(kù)失敗' . mysql_error());
    }
    mysql_select_db("yonghu",$conn);
    // header("Content-type: text/html; charset=utf-8");
    ?>


復(fù)制代碼
3、mcu.php

    <?php
            header("Content-type:text/html;charset=utf-8");
            include 'conn.php'; //連接數(shù)據(jù)庫(kù)
            $temp=$_GET['wendu'];
            $humi=$_GET['shidu'];
            echo $temp,$humi;
            $sql="INSERT INTO sensor VALUES('',$temp','$humi')";
            $result=mysql_query($sql);
            if ($result) {
                    echo "success";
            }
            else
            {
                    echo "error";
            }
    ?>


復(fù)制代碼
4、測(cè)試服務(wù)器,我的電腦的IP地址是:192.168.0.106。由于我沒(méi)有建數(shù)據(jù)表,所以出錯(cuò)了。
http://192.168.0.106:9096/zhsx/mcu.php?wendu=11&shidu=55

二、ESP8266模塊進(jìn)行AT指令測(cè)試。注意每個(gè)指令都要加回車,發(fā)送才成功

    AT
    OK
    AT+CWMODE=3
    OK

    AT+RST


    OK
    CLOSED


    ets Jan  8 2013,rst cause:1, boot mode:(3,7)

    load 0x40100000, len 1856, room 16
    tail 0
    chksum 0x63
    load 0x3ffe8000, len 776, room 8
    tail 0
    chksum 0x02
    load 0x3ffe8310, len 552, room 8
    tail 0
    chksum 0x79
    csum 0x79

    2nd boot version : 1.5
      SPI Speed      : 40MHz
      SPI Mode       : DIO
      SPI Flash Size & Map: 8Mbit(512KB+512KB)
    jump to run user1 @ 1000

    ready

    WIFI CONNECTED

    WIFI GOT IP

    AT+CIFSR

    +CIFSR:APIP,"192.168.4.1"
    +CIFSR:APMAC,"86:f3:eb:90:d3:bd"
    +CIFSR:STAIP,"192.168.0.105"
    +CIFSR:STAMAC,"84:f3:eb:90:d3:bd"

    OK

    AT+CWJAP="305_43E811","012345678"

    WIFI DISCONNECT

    WIFI CONNECTED

    WIFI GOT IP


    OK

    AT+CIPSTART="TCP","192.168.0.106",9096

    CONNECT

    OK

    AT+CIPMODE=1


    OK

    AT+CIPSEND


    OK

    >
    HTTP/1.1 400 Bad Request
    Date: Mon, 15 Oct 2018 05:16:24 GMT
    Server: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
    Content-Length: 331
    Connection: close
    Content-Type: text/html; charset=iso-8859-1

    1155error



復(fù)制代碼
各個(gè)指令的含義


AT//測(cè)試模塊是否正常,返回OK表示正常
OK

AT+CWMODE=3//設(shè)置WiFi的模式,//STA+AP模式

OK

AT+RST//重啟WiFi

OK
//這是重啟后返回來(lái)的數(shù)據(jù)
ets Jan  8 2013,rst cause:1, boot mode:(3,7)

load 0x40100000, len 1856, room 16
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8
tail 0
chksum 0x79
csum 0x79

2nd boot version : 1.5
  SPI Speed      : 40MHz
  SPI Mode       : DIO
  SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000

ready

WIFI CONNECTED

WIFI GOT IP

AT+CIFSR//獲取IP地址

+CIFSR:APIP,"192.168.4.1"
+CIFSR:APMAC,"86:f3:eb:90:d3:bd"
+CIFSR:STAIP,"192.168.0.105"
+CIFSR:STAMAC,"84:f3:eb:90:d3:bd"

OK

AT+CWJAP="your_ssid","your_pwd"////ssid: 305_43E8:空,"AT+CWJAP=\"your_ssid\",\"your_pwd\"\r\n",

WIFI DISCONNECT

WIFI CONNECTED

WIFI GOT IP


OK

AT+CIPSTART="TCP","192.168.0.106",9096 //連接HTTP服務(wù)器192.168.0.106,9096  //9096是服務(wù)器的端口號(hào)

CONNECT

OK

AT+CIPMODE=1  //透?jìng)髂J?br /> OK
AT+CIPSEND//發(fā)送數(shù)據(jù)的指令
OK

>//表示可以發(fā)送數(shù)據(jù)  用GET的方式發(fā)送數(shù)據(jù)的,內(nèi)容為:GET /zhsx/mcu.php?wendu=11&shidu=55 如果想用POST的方式,POST /zhsx/mcu.php?wendu=11&shidu=55 只需要把GET改為POST。然后在MCU.PHP中的$_GET改為$_POST即可。
以下內(nèi)容為服務(wù)器反饋回來(lái)的。
HTTP/1.1 400 Bad Request
Date: Mon, 15 Oct 2018 05:16:24 GMT
Server: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
Content-Length: 331
Connection: close
Content-Type: text/html; charset=iso-8859-1

1155error//這是你想要的數(shù)據(jù)。
就這個(gè)能行嗎?

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:717640 發(fā)表于 2020-3-28 16:09 | 只看該作者
您好,可以請(qǐng)問(wèn)一下,為什么我的模塊復(fù)位之后,就接收不到信息了,前面和樓主步驟一樣,這可能是什么原因呢。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表