CODEDRAGON ㆍDevelopment/IoT
WiFi
WiFi는 ESP8266을 위한 와이파이 클래스인 'ESP8266WiFiClass'의 유일한 객체에 해당하며 이 객체를 통해 다양한 와이파이 관련 동작을 수행합니다.
ESP8266 모드
ESP8266은 스테이션 모드, 소프트 AP 모드, 소프트 AP+스테이션 모드 등 3가지 동작 모드를 지원합니다.
ESP8266WiFi 라이브러리 함수
mode()
모드 변경 성공 여부의 성공여부를 반환합니다.
bool mode(WiFiMode_t m) |
매개변수 |
설명 |
m |
ESP8266의 모드 WIFI_OFF, WIFI_STA, WIFI_AP, WIFI_AP_STA 중 하나를 지정합니다. |
disconnect()
모드가 변경된 후에는 기존에 연결되어 있던 AP와의 연결을 종료하기 위해 사용합니다.
AP 연결 끊기 성공 여부를 반환합니다.
bool disconnect(bool wifioff = false) |
매개변수 |
설명 |
wifioff |
스테이션 기능 활성화 여부 |
scanNetworks()
AP 스캔을 하는 함수입니다.
scanNetworks 함수는 스캔된 AP의 개수를 반환하지만 이전 스캔이 종료되지 않은 경우에는
WIFI_SCAN_RUNNING(-1) 오류를, 스캔에 실패한 경우에는 WIFI_SCAN_FAILED(-2) 오류를 반환합니다.
int8_t scanNetworks(bool async = false, bool show_hidden = false) |
매개변수 |
설명 |
async |
비동기 모드, 즉, 백그라운드 스캔 수행 여부 |
show_hidden |
숨겨진 AP 스캔 여부 |
SSID()
AP에서 흔히 참조되는 정보는 SSID와 RSSI 입니다.
스캔된 AP의 SSID는 SSID()함수로 알아낼 수 있습니다.
선택된 AP의 인덱스를 인자로 주면 선택된 AP의 SSID를 반환합니다.
매개변수 없이 사용하면 현재 연결된 AP의 정보를 반환합니다.
String SSID(uint8_t i) |
매개변수 |
설명 |
i |
스캔된 AP 목록에서의 인덱스 |
RSSI()
AP에서 흔히 참조되는 정보는 SSID와 RSSI입니다.
스캔된 AP의 SSID와 RSSI는 RSSI() 함수로 알아낼 수 있습니다.
선택된 AP의 SSID 를 반환합니다.
매개변수 없이 사용하면 현재 연결된 AP의 정보를 반환합닏.
int32_t RSSI(uint8_t i) |
매개변수 |
설명 |
i |
스캔된 AP 목록에서의 인덱스 |
begin()
지정한 AP로 연결을 시작하기 위해 사용합니다.
begin() 함수는 연결하고 자 하는 AP의 SSID와 패스워드를 매개변수로 가지며 AP 상태를 반환합니다.
wl_status_t begin(char* ssid, char *passphrase = NULL, int32_t channel = 0, uint8_t* bssid = NULL, bool connect = true) |
매개변수 |
설명 |
ssid |
접속할 AP의 SSID |
passphrase |
접속할 AP의 패스워드 |
channel |
접속할 AP의 채널 |
bssid |
접속할 AP의 MAC 주소 |
connect |
연결 여부 |
wl_status_t
begin() 함수가 반환하는 AP 상태는 열거형 wl_status_t에 정의된 값 중 하나를 가집니다.
WL_NO_SHIELD = 255는 아두이노 WiFi 라이브러리와의 호환성을 위한 값입니다.
typedef enum { WL_NO_SHIELD = 255, WL_IDLE_STATUS = 0, WL_NO_SSID_AVAIL = 1, WL_SCAN_COMPLETED = 2, WL_CONNECTED = 3, WL_CONNECT_FAILED = 4, WL_CONNECTION_LOST = 5, WL_DISCONNECTED = 6 } wl_status_t; |
BSSID()
BSSID 함수는 ESP8266과 연결된 AP 쪽의 MAC 주소를 반환합니다.
BSSID() 함수의 반환값은 6바이트의 정수로 이루어져 있습니다.
uint8_t *BSSID() |
subnetMask()
현재 AP에 설정된 서브넷 마스크 정보를 반환합니다.
IPAddress subnetMask() |
gatewayIP()
현재 AP에 설정된 게이트웨이 IP 주소 정보를 반환합니다.
IPAddress gatewayIP() |
dnsIP()
현재 AP에 설정된 DNS 서버 IP 주소 정보를 반환합니다.
IPAddress dnsIP(uint8_t dns_no = 0) |
매개변수 |
설명 |
dns_no |
DNS 서버 인덱스 |
IPAddress 클래스 - arduino
http://codedragon.tistory.com/7073
'Development > IoT' 카테고리의 다른 글
NodeMCU Lua development board (0) | 2018.06.17 |
---|---|
국내 오픈마켓 (0) | 2018.06.17 |
Flame Sensor(불꽃 감지 센서) (0) | 2018.06.11 |
블루투스 모듈 설정 - 블루투스 정상 연결 확인, 보드 레이트 설정, line ending 없음 설정 (0) | 2018.06.05 |
메카솔루션에서 제공하는 pdf 교제 (0) | 2018.05.31 |