1# WLAN服务组件 2 3## 简介 4WLAN服务组件为设备提供接入与使用WLAN的相关接口,包括开启、关闭WLAN,监听WLAN状态等。 5 6## 目录 7 8``` 9foundation/communication/wifi_lite 10├── interfaces # 组件对外提供接口代码存放目录 11│ └── wifiservice # WLAN服务接口代码存放目录 12├── LICENSE # 版权声明文件 13 14``` 15 16## 约束 17WLAN服务组件使用C语言编写,目前支持wifi-iot开发板。 18 19## 使用 20- 设备需要完成以下开发步骤,以开启WLAN: 21 22 ``` 23 //开启WLAN 24 WifiErrorCode error = EnableWifi(); 25 if (error != WIFI_SUCCESS) { 26 return; 27 } 28 ``` 29 30- 设备需要完成以下开发步骤,以触发WLAN扫描: 31 32 ``` 33 //开启WLAN 34 WifiErrorCode error = Scan(); 35 if (error != WIFI_SUCCESS) { 36 return; 37 } 38 ``` 39 40- 设备需要完成以下开发步骤,以获取WLAN扫描结果: 41 42 ``` 43 WifiScanInfo* infoList = malloc(sizeof(WifiScanInfo) * WIFI_SCAN_HOTSPOT_LIMIT); 44 unsigned int size = WIFI_SCAN_HOTSPOT_LIMIT; 45 error = GetScanInfoList(infoList, &size); 46 if (error != WIFI_SUCCESS || size == 0) { 47 return; 48 } 49 ``` 50 51- 设备需要完成以下开发步骤,以配置接入点的接入方式: 52 53 ``` 54 int netId = 0; 55 WifiDeviceConfig config = {0}; 56 config.freq = 20; 57 config.securityType = WIFI_SEC_TYPE_PSK; 58 config.wapiPskType = WIFI_PSK_TYPE_ASCII; 59 memcpy_s(config.ssid, WIFI_MAX_SSID_LEN, "Sample", 10); //在这里输入待连接WLAN的名称 60 unsigned char bssid[WIFI_MAC_LEN] = {0xac, 0x75, 0x1d, 0xd8, 0x55, 0xc1}; //在这里输入待连接WLAN的BSSID 61 memcpy_s(config.bssid, WIFI_MAC_LEN, bssid, WIFI_MAC_LEN); 62 memcpy_s(config.preSharedKey, WIFI_MAX_KEY_LEN, "1234567890", 10); //在这里输入待连接WLAN的口令 63 WifiErrorCode error = AddDeviceConfig(&config, &netId); 64 if (error != WIFI_SUCCESS || netId == 0) { 65 return; 66 } 67 ``` 68 69- 设备需要完成以下开发步骤,以连接配置的WLAN: 70 71 ``` 72 error = ConnectTo(netId); //netId来自上一步 73 if (error != WIFI_SUCCESS) { 74 return; 75 } 76 ```