README_zh.md
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 ```