ESP8266--WIFI热点扫描
//同步扫描
#include <ESP8266WiFi.h>
#define AP_SSID "jia"
#define AP_PSW "lm654321" void setup() {
Serial.begin();
delay();
WiFi.begin(AP_SSID, AP_PSW);
Serial.print(String("连接到:")+AP_SSID);
while (WiFi.status() != WL_CONNECTED){
delay();
Serial.print(".");
}
Serial.println("");
int n = WiFi.scanNetworks();//同步扫描,同步扫描,等待返回结果---不需要填任何参数
Serial.println("扫描完成");
if (n == ) {
Serial.println("没有找到热点网络");
}else {
Serial.printf("找到了%d个网络",n);
}
}
void loop() {
}
//异步扫描
#include <ESP8266WiFi.h>
#define AP_SSID "jia"
#define AP_PSW "lm654321" void setup() {
WiFi.mode(WIFI_STA);
WiFi.disconnect();//断开网络
Serial.begin();
delay();
WiFi.begin(AP_SSID, AP_PSW);
Serial.print(String("连接到:")+AP_SSID);
while (WiFi.status() != WL_CONNECTED){
delay();
Serial.print(".");
}
Serial.println("");
Serial.println("连接成功");
WiFi.scanNetworks(true);//异步扫描
delay(3000);//扫描需要一段时间,所以等待一会儿
int n = WiFi.scanComplete(); //返回异步扫描找到的个数
if(n >= ){
Serial.printf("%d个网络找到\n", n);
for (int i = ; i < n; i++){
Serial.printf("%d: %s, Ch:%d (%ddBm) %s\n", i+, WiFi.SSID(i).c_str(), WiFi.channel(i), WiFi.RSSI(i), WiFi.encryptionType(i) == ENC_TYPE_NONE ? "open" : "");
//WiFi.SSID(i) 返回账号 WiFi.channel(i) 返回通道
//WiFi.RSSI(i) 返回信号强度 WiFi.encryptionType(i) 返回加密类型 }
WiFi.scanDelete(); //从内存中删掉最近扫描结果
//注意点:如果不删除,将会叠加上次扫描的结果;
}else{
Serial.println("没有找到网络");
} }
void loop() { }
AUTH_OPEN ----> ENC_TYPE_WEP = 5
AUTH_WEP ----> ENC_TYPE_TKIP = 2
AUTH_WPA_PSK ----> ENC_TYPE_CCMP = 4
AUTH_WPA2_PSK ----> ENC_TYPE_NONE = 7
AUTH_WPA_WPA2_PSK ----> ENC_TYPE_AUTO = 8
//异步扫描
#include <ESP8266WiFi.h>
#define AP_SSID "jia"
#define AP_PSW "lm654321" void setup() {
WiFi.mode(WIFI_STA);
WiFi.disconnect();//断开网络
Serial.begin();
delay();
WiFi.begin(AP_SSID, AP_PSW);
Serial.print(String("连接到:")+AP_SSID);
while (WiFi.status() != WL_CONNECTED){
delay();
Serial.print(".");
}
Serial.println("");
Serial.println("连接成功");
WiFi.scanNetworksAsync(prinScanResult); //异步扫描周边wifi网络,并回调结果
//参数 回调函数
}
void loop() { } void prinScanResult(int networksFound){ //回调函数,参数找到网络的个数
Serial.printf("找到%d个网络\n", networksFound);
for (int i = ; i < networksFound; i++){
Serial.printf("%d: %s, Ch:%d (%ddBm) %s\n", i + , WiFi.SSID(i).c_str(), WiFi.channel(i), WiFi.RSSI(i), WiFi.encryptionType(i) == ENC_TYPE_NONE ? "open" : "");
}
}
ESP8266--WIFI热点扫描的更多相关文章
- DSAPI Wifi热点的扫描与连接
使用DSAPI扫描和连接Wifi热点,支持连接隐藏的SSID. 效果演示: 代码如下: Private Wifi As New DSAPI.网络.Wifi Private Sub Button1_Cl ...
- Android开发之扫描附近wifi热点并列表显示
近期项目中用到了wifi模块.今天做一个简单的总结. 參考:http://www.2cto.com/kf/201310/253617.html 1.如何获取wifi对象并进行操作 要操作WIFI设备, ...
- 49.Linux-wpa_cli使用之WIFI开启,扫描热点,连接热点,断开热点,WIFI关闭(49)
本章学习内容: 1.WIFI如何开启 2.扫描热点 3.连接热点 4. 断开热点 5.关闭WIFI 本节使用的是wpa_supplicant工具,它主要包含wpa_supplicant(命令行模式)与 ...
- 【移动开发】WIFI热点通信(一)
之前调查过Android中WIFI模块的使用,也写过两篇学习总结的文章(http://smallwoniu.blog.51cto.com/3911954/1334951),后来发现DEMO里面还是有许 ...
- Android 连接Wifi和创建Wifi热点 demo
android的热点功能不可见,用了反射的技术搞定之外. Eclipse设置语言为utf-8才能查看中文注释 上代码: MainActivity.java package com.widget.hot ...
- Android 开发 创建WiFi、WiFi热点 ---开发集合
WIFI 权限 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> < ...
- Win8共享wifi热点设置
Win8共享wifi热点如何设置?大家都知道win7系统可以实现wifi热点共享,那么win8应该也能实现wifi热点共享,那么如何设置win8不需要任何软件只需要对电脑进行设置就可以共享无线上网. ...
- Android WiFi/WiFi热点开发总结
首先看一下WiFi的自我介绍: Wi-Fi是一种允许电子设备连接到一个无线局域网(WLAN)的技术,通常使用2.4G UHF或5G SHF ISM 射频频段.连接到无线局域网通常是有密码保护的:但也可 ...
- wifi 热点配置最优信道
wifi热点服务hostapd启动需要配置hostad.conf文件,其中有一个参数channel是用来配置信道的,信道的可选参数如下: # channel 1-14 is 2.4 GHz ; cha ...
随机推荐
- Django模型的Field Types
Field Types 常用参数: null 如果设置为 True , Django 存放一个 NULL 到数据库字段.默认为 False. allow_null 如果设置为 True , 该字段将接 ...
- 【Java学习笔记】LinkedList JDK1.6
如下一段代码,在JDK1.6的LinkedList中,是下图这样存储的.有一个节点值为null的节点,叫做header,header的next是0,3的next是header,这是一个循环链表 Lin ...
- 关于JS的prototype详解
JavaScript面向对象 构造函数和原型链 首先,我们要先了解一下类的概念,JavaScript 本身是一种面向对象的语言,它所涉及的元素根据其属性的不同都依附于某一个特定的类.我们所常见的类包括 ...
- #Java学习之路——基础阶段二(第十二篇)
我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...
- 网格UV展开
原文链接 UV展开是什么 参数曲面的参数域变量一般用UV字母来表达,比如参数曲面F(u,v).所以一般叫的三维曲面本质上是二维的,它所嵌入的空间是三维的.凡是能通过F(u,v)来表达的曲面都是参数曲面 ...
- C++中内联函数的用法
程序带调用函数需要一定的时间\空间花销,这就要求在主程序进行过程中调用函数前几下执行指令的地址及其他相关信息,一边函数调用后能继续执行.函数调用后流程返回先前记下的地址处,并根据记录的相关信息回复,而 ...
- 【机器学习】HK算法(LMSE算法) LMS算法改进保证线性可分时均方误差标准能够找到线性可分的超平面
1.其实HK算法思想很朴实,就是在最小均方误差准则下求得权矢量. 他相对于感知器算法的优点在于,他适用于线性可分和非线性可分得情况,对于线性可分的情况,给出最优权矢量,对于非线性可分得情况,能够判别出 ...
- vue2 学习笔记
一.部署环境1.安装nodeJS -- 地址:https://nodejs.org/zh-cn/ 2.安装vue脚手架 (用于创建VUE项目的) 进入项目文件或者新建一个文件 npm install ...
- python——列表方法
L.append():追加一个元素到列表末尾 L = [] L.append('boy') L.insert() :将一个元素插入到指定位置 L.insert(1, 'girl') L.extend( ...
- 文件的三种打开方式及with管理文件上下文
文件的三种打开方式及with管理文件上下文 一.文件的三种打开方式 1.1 只读 f = open(r'D:\pycharm\yjy\上海python学习\456.txt','r',encoding= ...