WiFi - 扫描周围的 WiFi 网路

材料准备

范例说明

这个范例里,我们使用Ameba来检测周围的WiFi讯号,并将检测到WiFi的名称,加密方式,信号强度等信息打印出来。

首先先确定天线已经接上,确保在 “Tools” -> “Board” 中选择了正确的Ameba开发板。

然后打开 Scan Networks 的范例, “File” -> “Examples” -> “WiFi” -> “ScanNetworks” :

wifi-1-2

上传程式码之后,按下Ameba的Reset按钮, 这时候会看到**Scan Networks**下会有搜索到WiFi的数目以及每一个WiFi的讯息。

wifi-1-2

程式码说明

首先使用的是显示Ameba自己的物理地址WiFi.macAddress(mac):
https://www.arduino.cc/en/Reference/WiFiMACAddress
然后开始搜索周围WiFi环境的WiFi.scanNetworks()
https://www.arduino.cc/en/Reference/WiFiScanNetworks
在打印WiFi具体讯息时使用到的有:
显示WiFi的名称WiFi.SSID(thisNet):
https://www.arduino.cc/en/Reference/WiFiSSID
显示WiFi的讯号强度WiFi.RSSI(thisNet):
https://www.arduino.cc/en/Reference/WiFiRSSI
显示WiFi的加密方式WiFi.encryptionType(thisNet):
https://www.arduino.cc/en/Reference/WiFiEncryptionType

与Arduino的差异

Arduino在完成WiFi的操作时,需要另外使用WiFi Shield来作为WiFi模块,因此在使用WiFi是需要#include 来使用SPI与WiFi模块进行通讯。
但是Ameba自身就具有WiFi模块的功能,因此,不需要#include 。若想要使用Arduino的范例,要先删掉这一项。
请先确认已安装QQ通讯软体