ESP32学习-WIFI连接

教大家使用Arduino IDE开发让ESP32连接wifi 至于连接WIFI之后,ESP32就有无限的可能了,之后会教大家与阿里云的交互以及一些别的东西,这个是可以连接手机热点的,使用之前在代码里面把用户名...

教大家使用Arduino IDE开发让ESP32连接wifi

至于连接WIFI之后,ESP32就有无限的可能了,之后会教大家与阿里云的交互以及一些别的东西,这个是可以连接手机热点的,使用之前在代码里面把用户名和密码改了就行,然后有时候开机会出现移植连接不上的情况,重启一下即可。关于下载程序,点击IDE左上方那个指向右边的箭头即可,他会自动编译然后向检测到的ESP32 端口进行烧录 , 这时候会一直显示等待,你按下boot按钮然后等到开始下载后放开即可。

#include "WiFi.h"    //ESP32 wifi驱动库

#define ssid "b123"

#define password "cx123456" 

//***********************************************************************************************************************    wifi连接

String translateEncryptionType(wifi_auth_mode_t encryptionType) {   //获取wifi的特性

  switch (encryptionType){

    case (WIFI_AUTH_OPEN):

      return "Open";

    case (WIFI_AUTH_WEP):

      return "WEP";

    case (WIFI_AUTH_WPA_PSK):

      return "WPA_PSK";

    case (WIFI_AUTH_WPA2_PSK):

      return "WPA2_PSK";

    case (WIFI_AUTH_WPA_WPA2_PSK):

      return "WPA_WPA2_PSK";

    case (WIFI_AUTH_WPA2_ENTERPRISE):

      return "WPA2_ENTERPRISE";

  }

}  


void scanNetworks(){    //搜索附近的WIFI源并打印出来

  int numberOfNetworks= WiFi.scanNetworks();

  Serial.print("Numberof networks found: ");

  Serial.println(numberOfNetworks);

  for (int i = 0; i< numberOfNetworks; i++) {

    Serial.print("Networkname: ");

    Serial.println(WiFi.SSID(i));

    Serial.print("Signalstrength: ");

    Serial.println(WiFi.RSSI(i));

    Serial.print("MACaddress: ");

    Serial.println(WiFi.BSSIDstr(i));

    Serial.print("Encryptiontype: ");

    String encryptionTypeDescription = translateEncryptionType(WiFi.encryptionType(i));

    Serial.println(encryptionTypeDescription);

    Serial.println("-----------------------");

    }

  }

  

void connectToNetwork(){

  WiFi.begin(ssid,password);

  while (WiFi.status()!= WL_CONNECTED) {

    delay(1000);

    Serial.println("try to connecting ...");

  }

  Serial.println("Connected to network");

}

  

void wifi_connect(){

  scanNetworks();    //搜索附近的wifi信号并且打印出来

  connectToNetwork();    //链接到wifi

  Serial.println(WiFi.macAddress());    //打印出mac地址

  Serial.println(WiFi.localIP());    //打印出本地ip地址

  Serial.println("wifi连接成功");    //打印出本地ip地址

  //WiFi.disconnect(true);    //断开wifi

  Serial.println(WiFi.localIP());   //打印IP地址 

  }


void setup() {

  Serial.begin(115200);   //初始化调试串口

  wifi_connect();    //连接wifi,参数为预留参数   

}


void loop() {

}


  • 发表于 2020-09-23 14:14
  • 阅读 ( 99 )

0 条评论

请先 登录 后评论
淡若清风
淡若清风

35 篇文章

作家榜 »

  1. 淡若清风 35 文章
  2. 杨杨 2 文章
  3. seaky 0 文章
  4. 15139236712 0 文章
  5. selectcc 0 文章
  6. 温志亮 0 文章
  7. jamesfan007 0 文章
  8. Gavin 0 文章