0代码,不用app esp32cam 视频小车 后续升级:开灯,微信配网

本文介绍了如何为ESP32Cam添加微信配网功能,使其能根据需要更换WiFi热点,并实现设备重启后的自动重新连接。通过引入SmartConfig库,实现了微信扫码配网,并提供了代码示例。此外,还提到了小车的开灯功能以适应不同环境,以及后续版本将加入拍照存储到TF卡的计划。
摘要由CSDN通过智能技术生成

第一版只支持固定配网,不支持更换wifi热点,增加此功能以方便换地点使用。

微信配网引用链接中代码ESP32 SmartConfig 微信扫码配网https://blog.csdn.net/qq_23347759/article/details/108416240

使用巴风云“一键配网”小程序(直接微信搜名称)

挺好用的支持多种方式配网。

1.引入头文件
ESP8266使用:

#include <ESP8266WiFi.h>

ESP32使用:

#include <WiFi.h>
1
2.WIFI配置核心代码
SmartConfig的配置: 如下代码会一直循环,直到我们通过微信公众号完成配置。

void SmartConfig()
{
   WiFi.mode(WIFI_STA);
   Serial.println("\r\n wait for smartconfig....");
   WiFi.beginSmartConfig();
   while(1)
   {
    Serial.print(".");
    delay(500);
    if ( WiFi.smartConfigDone())
    {
      Serial.println("SmartConfig Success");
      Serial.printf("SSID:%s\r\n",WiFi.SSID().c_str());
      Serial.printf("PSW:%s\r\n",WiFi.psk().c_str());
      break;      
    }
   }  
}

3. 设备重启后的自动重新连接功能
bool AutoConfig()
{
  WiFi.begin();
  for (int i=0; i<20; i++)
  {
    int wstatus = WiFi.status();
    if (wstatus == WL_CONNECTED )  
       {
          Serial.println("wifi smartConfig success");
          Serial.printf("SSID:%s",WiFi.SSID().c_str());
          Serial.printf(",PWS:%s\r\n",WiFi.psk().c_str());
          Serial.print("localIP:");
          Serial.println(WiFi.localIP());
          Serial.print(",GateIP:");
          Serial.println(WiFi.gatewayIP());
          return true;
          
       }
       else
       {
          Serial.print("WIFI AutoConfig Waiting ....");
          Serial.println(wstatus);
          delay(1000);
        
       }
    
  }
  Serial.println("Wifi autoconfig faild!");
  return false;
  
  
}

WiFi 的配置默认是会存储在 NVS 的,具体参看 esp_wifi_set_storage 的 API 介绍,如果希望不存储,可以调用该接口,参数为 WIFI_STORAGE_RAM。
有以下两种方式清除参数:

如果想清除 NVS 中的数据,可以用命令 make erase_flash 做整片擦除。
如果想在应用中清除 WiFi 配置,如通过按键触发恢复参数,可调用 esp_wifi_restore 接口,会清除相关 WiFi 配置,具体请看 API 介绍。

4.入口函数
Arduino 默认启动函数,启动时只调用一次,本次实验 loop函数放空。

void setup() {
  Serial.begin(115200);
  delay(100);
  if (!AutoConfig())
  {
      SmartConfig();
  }
}


微信配网二维码
断开IO0 的低电平 ,重启ESP32 ,然后打开(搜索)微信小程序“一键配网”进行配置
 

使用小车会探索未知黑暗领域,增加开灯功能,以便观察。

 代码:代码下载(2积分支持)

/*********
  Rui Santos
  Complete instructions at https://RandomNerdTutorials.com/esp32-cam-projects-ebook/

  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files.
  The above copyright notice and this
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值