使用esp8266在stm32上实现以太网通信,需要的拿去,WIFI模块
全部资料下载:
WIFI—ESP8266.7z
(2.08 MB, 下载次数: 159)
当程序烧写到开发板之后,且 WIFI信号配置成功之后,现在可以用手机搜索
ESP8266发射出的 WIFI信号,信号名称是:BinghuoLink,无需密码即可连接。WIFI信号
默认的 IP是:192.168.123.169,端口是:8080。连接好 WIFI之后,运行安装好的手机
APP—秉火物联,APP上的 IP和端口已经初始化好,直接点击连接即可,连接成功之后会
有提示,然后就可以控制开发板中 LED的亮灭了。
APP有两个界面,第一面是控制开发板硬件的界面,第二面是 WIFI透传界面,即
APP给开发板发信息,然后开发板把信息发回给 APP。
向电脑网络助手上传DHT11温湿度:
- #include "test.h"
- #include "bsp_esp8266.h"
- #include "bsp_SysTick.h"
- #include <stdio.h>
- #include <string.h>
- #include <stdbool.h>
- #include "bsp_dht11.h"
- volatile uint8_t ucTcpClosedFlag = 0;
- /**
- * @brief ESP8266 (Sta Tcp Client)透传
- * @param 无
- * @retval 无
- */
- void ESP8266_StaTcpClient_UnvarnishTest ( void )
- {
- uint8_t ucStatus;
-
- char cStr [ 100 ] = { 0 };
- DHT11_Data_TypeDef DHT11_Data;
-
-
- printf ( "\r\n正在配置 ESP8266 ......\r\n" );
- macESP8266_CH_ENABLE();
-
- ESP8266_AT_Test ();
-
- ESP8266_Net_Mode_Choose ( STA );
- while ( ! ESP8266_JoinAP ( macUser_ESP8266_ApSsid, macUser_ESP8266_ApPwd ) );
-
- ESP8266_Enable_MultipleId ( DISABLE );
-
- while ( ! ESP8266_Link_Server ( enumTCP, macUser_ESP8266_TcpServer_IP, macUser_ESP8266_TcpServer_Port, Single_ID_0 ) );
-
- while ( ! ESP8266_UnvarnishSend () );
-
- printf ( "\r\n配置 ESP8266 完毕\r\n" );
-
-
- while ( 1 )
- {
- if ( DHT11_Read_TempAndHumidity ( & DHT11_Data ) == SUCCESS ) //读取 DHT11 温湿度信息
- sprintf ( cStr, "\r\n读取DHT11成功!\r\n\r\n湿度为%d.%d %RH ,温度为 %d.%d℃ \r\n",
- DHT11_Data .humi_int, DHT11_Data .humi_deci, DHT11_Data .temp_int, DHT11_Data.temp_deci );
-
- else
- sprintf ( cStr, "Read DHT11 ERROR!\r\n" );
- printf ( "%s", cStr ); //打印读取 DHT11 温湿度信息
-
- ESP8266_SendString ( ENABLE, cStr, 0, Single_ID_0 ); //发送 DHT11 温湿度信息到网络调试助手
-
- Delay_ms ( 1000 );
-
- if ( ucTcpClosedFlag ) //检测是否失去连接
- {
- ESP8266_ExitUnvarnishSend (); //退出透传模式
-
- do ucStatus = ESP8266_Get_LinkStatus (); //获取连接状态
- while ( ! ucStatus );
-
- if ( ucStatus == 4 ) //确认失去连接后重连
- {
- printf ( "\r\n正在重连热点和服务器 ......\r\n" );
-
- while ( ! ESP8266_JoinAP ( macUser_ESP8266_ApSsid, macUser_ESP8266_ApPwd ) );
-
- while ( ! ESP8266_Link_Server ( enumTCP, macUser_ESP8266_TcpServer_IP, macUser_ESP8266_TcpServer_Port, Single_ID_0 ) );
-
- printf ( "\r\n重连热点和服务器成功\r\n" );
- }
-
- while ( ! ESP8266_UnvarnishSend () );
-
- }
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
|