• 大小: 11.93MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-27
  • 语言: 其他
  • 标签: STM32  ESP8266  

资源简介

乐鑫ESP8266是一款目前实用的物联网WiFi开发模块,并且它支持用户自己刷固件修改内部指令,本程序从智能农场项目的开发中具体讲解esp8266的使用,让大家学习起来没有那麽吃力,并且本程序能直接拿拿到某些具体的项目中用。

资源截图

代码片段和文件信息

/***
 * ESP8266 驱动库
 * 作者:zzh
 * 依赖资源:
 * 1. 串口1 ,波特率 115200 重映射为 printf 输出
 * 2. 定时器4 1ms中断  用于接收数据断句 ,键盘扫描 Client 心跳维持
 */
#include “ESP8266.h“
 
uint8_t ESP8266_BUFF[256];
char CMD_buff[64];
 
//把wifi设备基础参数分配在常量区,以便掉电保存新设置
const char WIFI_SSID [32]= _WIFI_SSID;
const char WIFI_PSSW[32]= _WIFI_PSSW;
const uint8_t IP_S [ 4]= _IPAdrr;
const int  PORT = _PORT;
uint8_t IP_LOCALHOST[ 4]={0000};
uint8_t IP_MAC [ 6]={0};



_F_u8 ESP8266NetMode=ESP8266_TCPService;//模块联网模式:c/s
uint8_t *pREC=ESP8266_BUFF; //定义通信内容的接收游标,ESP8266_BUFF是接收的内容
WIFI_Type  WIFI_MSG; //定义wifi结构体的对象

const voidType DataAdrr[5]={
(voidType)WIFI_SSID
(voidType)WIFI_PSSW
(voidType)IP_S
(voidType)PORT
(voidType)IP_LOCALHOST
};
/***
 *设置为热点
 */
 void ESP8266_AP(uint8_t Step)
{
switch(Step)
{
case 0:
WIFI_MSG.ESP8266_init=ESP8266_AP;//保存地址
WIFI_MSG.Context=1;
  WIFI_MSG.SSID=(char*)WIFI_SSID;//作为热点时,要自行定义wifi名和密码(热点参数)
WIFI_MSG.PSSW=(char*)WIFI_PSSW;
setCMD(“CWMODE=2“REC_OK);
break;
case 1://复位
setCMD(“RST“NREC_);//复位不收回响
delay_ms(1000);
WIFI_MSG.ESP8266_init(2); //递归执行
break;
case 2://连接 ------通过CWSAP控制热点参数
sprintf(CMD_buff“CWSAP=\“%s\“\“%s\“14“WIFI_SSIDWIFI_PSSW);//打印到串口
WIFI_MSG.Context=3;
setCMD(CMD_buffREC_OK);//发送指令
break;
case 3://获取IP:如果8266开热点服务,手机端连接需要输入ip
setCMD(“CIFSR“REC_IPv4);
break;
case 4://联网模式
ESP8266NetMode(0);
break;
}
}
/***
 *设置为终端
 */
 void ESP8266_STA(uint8_t Step)
{
switch(Step)
{
case 0:
WIFI_MSG.ESP8266_init=ESP8266_STA;//保存地址
WIFI_MSG.Context=1;
//目的是使初始化与其他任务同步进行,不需要在初始化里等待直至结束
setCMD(“CWMODE=1“REC_OK);//REC_OK()成功后调用WIFI_MSG.ESP8266_init(WIFI_MSG.Context);-->case 1
break;
case 1://复位
setCMD(“RST“NREC_);
delay_ms(1000);//复位不收回响
WIFI_MSG.ESP8266_init(2); //递归执行
break;
case 2://加入 WIFI 热点:WIFI_SSID,密码:WIFI_PSSW
WIFI_MSG.Context=3;
//将WIFI_SSIDWIFI_PSSW打印并存入buff数组,发送CWJAP加入热点
sprintf(CMD_buff“CWJAP=\“%s\“\“%s\““WIFI_SSIDWIFI_PSSW);
//delay_ms(2000);//复位不收回响
setCMD(CMD_buffREC_Connect);
break;
case 3://获取IP
setCMD(“CIFSR“REC_IPv4_);
break;
case 4://联网模式
ESP8266NetMode(0);
break;
}
}

 void ESP8266_TCPService(uint8_t Step)
{
switch(Step)
{
case 0:
WIFI_MSG.Context=1;//先索引,再次进case 1
WIFI_MSG.ESP8266_init=ESP8266_TCPService;//保存地址
setCMD(“CIPMUX=1“REC_OK);//开启多连接
break;
case 1:
WIFI_MSG.Context=2;
sprintf(CMD_buff“CIPSERVER=1%d“PORT);
setCMD(CMD_buffREC_OK);//开启 SERVER 模式,设置端口为 8886
break;
case 2:
WIFI_MSG.deal=REC_CONN;
break;
}
}

void ESP8266_TCPClient(uint8_t Step){
switch(Step)
{
case 0:
WIFI_MSG.Context=1;//先索引,再次进来case 1
setCMD(“CIPMUX=0“REC_OK);//开启单连接

WIFI_MSG.ESP8266_init=ESP8266_TCPClient;//保存地址
break;
case 1://建立 TCP 连接到IP_S PORT
WIFI_MSG.Context=2;
//把四段ip地址写buff

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

     文件    4072875  2019-02-25 08:25  ESP_8266\ATK-ESP8266 WIFI模块使用说明(探索者开发板)_AN1509B.pdf

     文件     109142  2014-07-17 21:52  ESP_8266\esp_8266_AP\CORE\core_cm4.h

     文件      22735  2014-07-17 21:52  ESP_8266\esp_8266_AP\CORE\core_cm4_simd.h

     文件      17146  2014-07-17 21:52  ESP_8266\esp_8266_AP\CORE\core_cmFunc.h

     文件      20513  2014-07-17 21:52  ESP_8266\esp_8266_AP\CORE\core_cmInstr.h

     文件      29605  2014-08-02 00:12  ESP_8266\esp_8266_AP\CORE\startup_stm32f40_41xxx.s

     文件       7467  2019-02-25 15:23  ESP_8266\esp_8266_AP\ESP8266\ESP266.c

     文件       1732  2019-02-25 14:52  ESP_8266\esp_8266_AP\ESP8266\ESP8266.h

     文件       1662  2019-02-18 20:58  ESP_8266\esp_8266_AP\ESP8266\TIM4.c

     文件        193  2019-01-27 13:35  ESP_8266\esp_8266_AP\ESP8266\TIM4.h

     文件     534987  2019-01-28 11:00  ESP_8266\esp_8266_AP\ESP8266配置1.4.pdf

     文件       6924  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\misc.h

     文件      32880  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_adc.h

     文件      27318  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_can.h

     文件       2416  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_crc.h

     文件      14481  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_cryp.h

     文件      14946  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_dac.h

     文件       4296  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_dbgmcu.h

     文件      12977  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_dcmi.h

     文件      28882  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_dma.h

     文件      19692  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_dma2d.h

     文件       8012  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_exti.h

     文件      24467  2014-08-04 22:05  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_flash.h

     文件       3275  2014-08-04 22:05  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_flash_ramfunc.h

     文件      44924  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_fmc.h

     文件      27181  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_fsmc.h

     文件      23548  2019-01-26 12:30  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_gpio.h

     文件      10084  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_hash.h

     文件      31939  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_i2c.h

     文件       4323  2014-08-01 23:18  ESP_8266\esp_8266_AP\FWLIB\inc\stm32f4xx_iwdg.h

............此处省略349个文件信息

评论

共有 条评论