欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 基于STC89C51單片機的esp8266-01wifi模塊(程序加模塊引腳圖) [打印本頁]

作者: 李江勇    時間: 2018-4-23 15:22
標(biāo)題: 基于STC89C51單片機的esp8266-01wifi模塊(程序加模塊引腳圖)
引腳圖及連接方式
紅色字體的引腳需要連接,其余不用連,只需了解
VCC:接3.3V的高電平(必須是3.3v 否則會燒壞模塊)
GND:接地
RX:模塊串口通信的接收引腳,接到單片機的TX引腳。
TX:模塊的發(fā)射端,接單片機的RX接口。
CH_PD:接高電平(和vcc引腳焊接起來)
GPIO0:默認情況下不接線,在刷固件時要接低電平。
GPIO2:懸空
RST:低電平復(fù)位,默認懸空。
用下載器連接WiFi模塊,然后用串口助手發(fā)送一下AT指令
串口助手附件 SSCOM.rar (267.9 KB, 下載次數(shù): 207)
串口助手中波特率初始為115200,更改以后波特率將永久保存,除非再次更改
1、設(shè)置模塊為ST模式:發(fā)送:AT+CWMODE=1;返回:OK
2、  查看當(dāng)前WiFi列表:AT+CWLAP返回: OK
3、  加入當(dāng)前無線網(wǎng)絡(luò):發(fā)送命令:AT+CWJAP=”MERSAIN”,”XXXXXXXX”
第一個填你想要連接的WiFi名稱,第二個填WiFi的密碼
4、查看當(dāng)前模塊IP地址:發(fā)送: AT+CIFSR返回:當(dāng)前IP地址
5、開啟多連接模式 :發(fā)送命令:AT+CIPMUX=1返回:OK
6、建服務(wù)器 發(fā)送命令:AT+CIPSERVER=1,8080(設(shè)置指令)
   指令:AT+CIPSERVER=<mode>[,<port>]

說明:<mode>:0-關(guān)閉server模式,1-開啟server模式       <port>:端口號,缺省值(默認值)為333 響應(yīng):OK
7、更改波特率為9600   AT+UART=9600,8,1,0,0(視單片機波特率而定)
更改波特率
wifi模塊ESP8266的默認波特率是115200,但是單片機不能達到那么快的傳輸速率,只能使用9600bps,那么設(shè)置的時候,必不可少的要先用轉(zhuǎn)串口調(diào)試下載器(速度比較快,而且wifi模塊默認115200bps,用單片機不能正確更改波特率,轉(zhuǎn)串口工具可以),設(shè)置指令,AT+UART=9600,8,1,0,0   在下載器連接模塊時更改波特率
程序
向單片機下載程序時先不接模塊,下載完成之后斷電之后再連接模塊
//此程序是手機連接ESP8266模塊以后向模塊發(fā)送字符a,控制單片機蜂鳴器的鳴與滅
#include<reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;
u8 dat;
sbit beep=P2^3;
void ConfigUART(u16 buad);//串口通信初始化函數(shù),buad為單片機設(shè)置的波特率。
void Delay_ms(u16 n);
void Uart_Send_String(u8 *string);//串口發(fā)送多個字節(jié)。
void Delay_Us(u8 us);
void Sent_UART(u8 dat);//串口發(fā)送一個字節(jié)
void ESP8266_Init();//ESP8266初始化
void main()
{
         EA = 1;
   ConfigUART(9600);
         ESP8266_Init();
        while(1);
}
void ConfigUART(u16 buad)
{
        SCON = 0x50;
        TMOD &= 0X0F;
        TMOD |= 0x20;
        TH1 = 256 - (11059200/12/32)/buad;
        TL1 = TH1;
        ET1 = 0;
        TR1 = 1;
}
void Sent_UART(u8 dat)
{
        ES = 0;
        TI=0;
        SBUF = dat;
        while(!TI);
TI = 0;
ES = 1;
}
void Delay_Us(u8 us)
{
while(us--);
}
void Delay_ms(u16 n)
{
        unsigned int  i,j;
        for(i=0;i<n;i++)
                for(j=0;j<123;j++);
}

void Uart_Send_String(u8 *string)
{
while(*string)
{
Sent_UART(*string++);
Delay_Us(5);
}

}
void ESP8266_Init()
{
        Uart_Send_String("AT\r\n");
        Delay_ms(2000);
        Delay_ms(1000);
        Uart_Send_String("AT\r\n");
        Delay_ms(2000);
        Delay_ms(1000);
  Uart_Send_String("AT+CIPMUX=1\r\n");
        Delay_ms(2000);
        Delay_ms(1000);
  Uart_Send_String("AT+CIPSERVER=1,8080\r\n");
}
void InterruptUART() interrupt 4
{
    if (RI)  //接收到字節(jié)
    {
        RI = 0;  //手動清零接收中斷標(biāo)志位
        dat = SBUF;  //接收到的數(shù)據(jù)保存到接收字節(jié)變量中
                if(dat=='a')
                        {
                                beep=~beep;
                        }                                         //接收到的數(shù)據(jù)又直接發(fā)回,叫作-"echo",
                         //用以提示用戶輸入的信息是否已正確接收
    }
    if (TI)  //字節(jié)發(fā)送完畢
    {
        TI = 0;  //手動清零發(fā)送中斷標(biāo)志位
    }

}
手機軟件

這兩個軟件均可使用
以netassist為例
打開后點擊tcp client
設(shè)置ip地址和端口號             ip地址看發(fā)送AT+CIFSR返回的IP值;
端口號看你發(fā)送的端口     AT+CIPSERVER=1,8080   這里是8080
然后連接  在發(fā)送框發(fā)送a即可控制蜂鳴器


作者: 寒門癡子    時間: 2018-4-29 06:36
要學(xué)習(xí),謝謝!
作者: aptx48694517    時間: 2018-5-4 17:51
發(fā)送AT指令沒有返回值,界面是空白的

作者: sanshisui    時間: 2018-5-5 23:08
單片機晶振是12M  波特率也是9600嗎還是更低?
作者: 李江勇    時間: 2018-5-6 20:34
sanshisui 發(fā)表于 2018-5-5 23:08
單片機晶振是12M  波特率也是9600嗎還是更低?

晶振11.0592  波特率9600
作者: sanshisui    時間: 2018-5-6 21:26
為什么全部弄好在手機發(fā)送a沒有反應(yīng)呢?樓主能回答一下嗎
作者: 李江勇    時間: 2018-5-7 18:51
sanshisui 發(fā)表于 2018-5-6 21:26
為什么全部弄好在手機發(fā)送a沒有反應(yīng)呢?樓主能回答一下嗎

模塊波特率改了嗎,模塊初始波特率為115200,需要改為和單片機一樣的波特率9600,我用的51單片機
作者: 李江勇    時間: 2018-5-7 18:52
aptx48694517 發(fā)表于 2018-5-4 17:51
發(fā)送AT指令沒有返回值,界面是空白的

看看波特率改了沒,按照上面方法應(yīng)該可以連上,親測可以
作者: duantui    時間: 2018-6-10 16:06
sanshisui 發(fā)表于 2018-5-6 21:26
為什么全部弄好在手機發(fā)送a沒有反應(yīng)呢?樓主能回答一下嗎

你解決了嗎?我也沒有反應(yīng)呢
作者: 郭薇    時間: 2018-6-11 15:35
單片機與8266之間需要電平轉(zhuǎn)換嗎?
作者: 小貓貓愛吃魚    時間: 2018-6-11 15:50
郭薇 發(fā)表于 2018-6-11 15:35
單片機與8266之間需要電平轉(zhuǎn)換嗎?

你好!這個不需要電平轉(zhuǎn)換的,單片機和8266串口交叉連接
作者: 小貓貓愛吃魚    時間: 2018-6-11 15:52
duantui 發(fā)表于 2018-6-10 16:06
你解決了嗎?我也沒有反應(yīng)呢

你好!沒有反應(yīng)的情況,著重檢查
1、單片機和模塊,串口是否交叉
2、單片機晶振和串口波特率是否匹配
3、程序是否配置好 8266
4、還是不行,看我頭像
作者: JamesGordan    時間: 2019-4-22 19:49
aptx48694517 發(fā)表于 2018-5-4 17:51
發(fā)送AT指令沒有返回值,界面是空白的

我也是這個情況
作者: 1942850641    時間: 2019-4-23 11:47
JamesGordan 發(fā)表于 2019-4-22 19:49
我也是這個情況

兄弟,我也是這個情況。通過串口助手直接給esp8266發(fā)送AT指令就可以,但中間連接個單片機,也下載了通信程序,然后再通過串口助手發(fā)送AT指令,esp8266就不響應(yīng)了。
方便的話加個聯(lián)系方式,一起討論一下,我的qq1499414490
作者: Kinarmy    時間: 2019-4-26 19:53
輸入IP和端口號,連接不上是什么原因,
作者: slaoliu    時間: 2021-9-20 10:32
這個好,必須學(xué)習(xí)一下。
作者: dzc3458    時間: 2021-10-13 15:56
esp8266可以用socket發(fā)送指令嗎




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1