• 大小: 5KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: 其他
  • 标签: wifi  

资源简介

stm32-esp8266客户端驱动,用于其它模式,也比较容易修改。

资源截图

代码片段和文件信息

#include “esp8266wifi.h“

 u8 wifi_name[20] =“HES_WIFI“;
 u8 wifi_pass[20] =“yanjiaqiao1!“;

 u8 wifi_ip[32] =“192.168.0.105“;
 u8 wifi_port[6] =“8888“;

u8 esp8266_init()
{

//设置成配置模式
set_config_mode();

//测试AT
if(test_at())
{
#if ESP8266_LOG
printf(“esp8266硬件 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“esp8266硬件 异常\r\n“);
printf(“尝试关闭透传...\r\n“);
#endif

close_tran();

}
//关回显
if(close_huixian())
{
#if ESP8266_LOG
printf(“关闭esp8266回显 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“关闭esp8266回显 异常\r\n“);
#endif
}
//设置成客户端
if(set_client())
{
#if ESP8266_LOG
printf(“设置成客户端 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“设置成客户端 异常\r\n“);
#endif
}
//判断是否连接到路由器 is_connect_ap
if(is_connect_ap())
{
#if ESP8266_LOG
printf(“连接路由器 正常\r\n“);
#endif
}
else //如果没有连接路由器,则去连接
{
#if ESP8266_LOG
printf(“连接路由器 异常\r\n“);
printf(“尝试连接路由器...\r\n“);
#endif

if(connect_ap())
{
#if ESP8266_LOG
printf(“连接路由器 正常\r\n“);
#endif
aotu_connect_ap();
}
else
{
#if ESP8266_LOG
printf(“连接路由器 异常\r\n“);
#endif
}

}



//连接到服务器
if(connect_server())
{
#if ESP8266_LOG
printf(“连接服务器 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“连接服务器 异常\r\n“);
printf(“尝试关闭连接服务器,重新连接...\r\n“);
#endif

if(disconnect_server())
{
#if ESP8266_LOG
printf(“关闭连接服务器 正常\r\n“);
#endif
//连接到服务器
if(connect_server())
{
#if ESP8266_LOG
printf(“重新连接服务器 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“连接服务器 异常\r\n“);
#endif
}
}
else
{
#if ESP8266_LOG
printf(“关闭连接服务器 异常\r\n“);
#endif
}


}
//设置透传模式1
if(set_mode1())
{
#if ESP8266_LOG
printf(“设置透传模式1 正常\r\n“);
#endif
}
else
{
#if ESP8266_LOG
printf(“设置透传模式1 异常\r\n“);
#endif
}
//开始透传
if(start_tran())
{
#if ESP8266_LOG
printf(“开始透传 正常\r\n“);
#endif

//设置成配置模式
set_tran_mode();

}
else
{
#if ESP8266_LOG
printf(“开始透传 异常\r\n“);
#endif

return 0;

}

return 1;
}

//测试AT指令,确保连接和芯片正常
u8 test_at()
{

return  send_cmd_wait((u8*)“AT\r\n“45);
}

//关闭回显
u8 close_huixian()
{

return send_cmd_wait((u8*)“ATE0\r\n“65);
}

//设置成客户端
u8 set_client()
{

return send_cmd_wait((u8*)“AT+CWMODE=1\r\n“1310);
}

//判断是否连接路由器
u8 is_connect_ap()
{
serial2_sned_buff((u8*)“AT+CIPSTATUS\r\n“14);
delay_ms(10);

if(find_quq_del(AP2))
{

return 1;
}
if(find_quq_del(AP3))
{

return 1;
}
return 0;

}

//设置自动连接路由器
u8 aotu_connect_ap()
{

return send_cmd_wait((u8*)“AT+CWAUTOCONN=1\r\n“1710);
}

//连接到路由器
u8 connect_ap()
{
//AT+CWJAP=“HES_WIFI““yanjiaqiao1!“
u8 cmd[50];
sprintf((char*)cmd“AT+CWJAP=\“%s\“\“%s\“\r\n“wifi_namewifi_pass);

serial2_sned_buff(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5265  2018-09-20 10:23  wifi\esp8266wifi.c

     文件       1483  2018-09-18 12:51  wifi\esp8266wifi.h

     文件        895  2018-09-17 16:22  wifi\serial_config.c

     文件        610  2018-09-17 16:52  wifi\serial_config.h

     文件       1665  2018-09-19 16:37  wifi\uart.c

     文件        806  2018-09-18 17:34  wifi\uart.h

     目录          0  2018-09-20 10:23  wifi

----------- ---------  ---------- -----  ----

                10724                    7


评论

共有 条评论