ESP8266模块介绍及简单应用

ESP8266芯片是一款串口转无线模芯片,内部自带固件,用户操作简单,无需编写时序信号等。本次实验我用的是ESP8266-01s系列。这款芯片使用了3.3V的直流电源,体积小,功耗低,支持透传,丢包现象不严重,价格低。ESP8266还允许用户自己编写rom,不仅可以实现数据传输功能,还可控制建立wifi热点,或者作为wifi客户端连接到某指定路由器,同时还可编程控制所以的gpio。
ESP8266模块介绍及简单应用_第1张图片ESP8266模块介绍及简单应用_第2张图片
需要用到网络调试助手NetAssist和AiThinker Seria Tool安信可串口调试助手。
STA+连接TCP Server:
,1.在串口调试助手里输入:AT+CWMODE_DEF=1 //作为设备。
2,AT+CWJAP_DEF=“wifi名称”,“wifi密码” //连接路由器,保存到flash(wifi名称不要加中文和特殊符号)
3.关闭网络防火墙,打开网络调试助手,协议选择Tcp Server并选择本机地址。
4,AT+CIPSTART=“TCP”,“192.168.99.217”,6001//作为客户端接入服务器
5,AT+CIPMODE=1 //进入透传模式发送数据
6,AT+CIPSEND //发送数据。在看到“>“后就可以发送数据了。之后写入代码就能利用ESP8266控制单片机等等。
#include"reg52.h”
#include"3.h"
#define SENDHELLO 1 //宏定义
#define SENDWORLD 0
#define DEFAULT -1
char command;
void main()
{
command = DEFAULT;
initstr(); //初始化寄存器
initESP8266(); //初始化网络

	  while(1){
	  	
	  	if(command == SENDHELLO){
		  sendString("hello\r\n");
	
		}
		else if(command == SENDWORLD){
			sendString("world\r\n");
		
			
		}
		command=DEFAULT;				
	   
	  }
}

#include"3.h"
#include"reg52.h"
extern char command;
void delay(unsigned long z)
{
int i;
int j;
for(i=0;i<40;i++)
for(j=0;j }
void initstr_115200()
{
SCON = 0x50;
T2CON = 0x34;
TH2 = 0xFF;
TL2 = 0xFD;
RCAP2H = 0xFF;
RCAP2L = 0xFD;
EA=1;
ES=1;
}
void printstr(char c)
{

    SBUF =c;
    while(TI!=1);
    TI =0; 
}

void sendString(char *str)

{
while(*str!=’\0’)
{
printstr(*str);
str++;
//delay();
}
}
void initESP8266()
{
delay(3000);
sendString(“AT+CWMODE_DEF=1\r\n”);
delay(1000);
sendString(“AT+CWJAP_DEF=“fools”,“11111111”\r\n”);
delay(3000);
sendString(“AT+CIPSTART=“TCP”,“172.20.10.2”,8080\r\n”);
delay(2000);
sendString(“AT+CIPMODE=1\r\n”);
delay(1000);
sendString(“AT+CIPSEND\r\n”);
delay(1000);
}
void zhongduan() interrupt 4
{
if(RI==1){
RI=0;
command = SBUF;
}
}
#ifndef __3_H
#define __3_H
extern char command;

void sendString(char *str);
void delay(unsigned long time);		
void initstr();
void printstr(char c);
void zhongduan();	
void initESP8266();

#endif

你可能感兴趣的:(ESP8266模块介绍及简单应用)