본문으로 건너뛰기

TAL Wi-Fi API 참조

TAL Wi-Fi API(TAL Wi-Fi API)는tal_wifi.h)는 Wi-Fi 역과 AP 가동을 위한 플랫폼 독립적인 공용영역을 제공합니다. 그것은 플랫폼의 Wi-Fi 드라이버 (ESP-IDF, T5AI SDK, Linux 및 기타)를 호출하는 TKL Wi-Fi 어댑터를 포장합니다.

머리:#include "tal_wifi.h". 기능 반환OPERATE_RET (OPRT_OK성공에) 그렇지 않으면.

초기화

다운로드

Wi-Fi 서브시스템을 초기화하고 이벤트 콜백을 등록합니다.

OPERATE_RET tal_wifi_init(WIFI_EVENT_CB cb);
제품 설명제품정보제품정보이름 *
사이트맵내 계정WIFI_EVENT_CBWi-Fi 이벤트에 호출된 Callback (연결, 연결, IP 획득)

리턴:OPRT_OK성공에.

다른 Wi-Fi 가동의 앞에 시작에서 이것을 한 번 부르십시오.

검색하기

tal wifi all ap scan의 경우

모든 눈에 보이는 접근 점을 검사하십시오.

OPERATE_RET tal_wifi_all_ap_scan(AP_IF_S **ap_ary, uint32_t *num);
제품 설명제품정보제품정보이름 *
사이트맵내 계정AP_IF_S **AP 정보 배열에 Pointer (기능에 의해 할당 됨)
·내 계정uint32_t *찾을 수 없음

리턴:OPRT_OK성공에. Caller는 결과를 무료로해야합니다.tal_wifi_release_ap().

tal wifi assign ap scan의 경우

특정 SSID 검사.

OPERATE_RET tal_wifi_assign_ap_scan(int8_t *ssid, AP_IF_S **ap);

다운로드

스캔 기능에 의해 할당 된 메모리 무료.

OPERATE_RET tal_wifi_release_ap(AP_IF_S *ap);

역 연결

네트워크

액세스 포인트에 연결.

OPERATE_RET tal_wifi_station_connect(int8_t *ssid, int8_t *passwd);
제품 설명제품정보제품정보이름 *
사이트맵내 계정int8_t *SSID 연결
패스워드내 계정int8_t *비밀번호 (NULL 또는 오픈 네트워크에 빈)

파일 형식

현재 접속점에서 분리.

OPERATE_RET tal_wifi_station_disconnect(void);

tal fast station connect 연락처

스캔을 건너뛰기 위해 캐시 AP 정보 (채널, BSSID)를 사용하여 다시 연결하십시오.

OPERATE_RET tal_fast_station_connect(FAST_WF_CONNECTED_AP_INFO_T *fast_ap_info);

tal wifi get connected ap info에 대해

이후 빠른 연결에 대한 캐시 AP 정보를 가져옵니다.

OPERATE_RET tal_wifi_get_connected_ap_info(FAST_WF_CONNECTED_AP_INFO_T **fast_ap_info);

tal wifi station get status의 경우

현재 역 연결 상태를 가져옵니다.

OPERATE_RET tal_wifi_station_get_status(WF_STATION_STAT_E *stat);

상태 값은 다음과 같습니다:WSS_IDLE, WSS_CONNECTING, WSS_PASSWD_WRONG, WSS_NO_AP_FOUND, WSS_CONN_FAIL, WSS_CONN_SUCCESS, WSS_GOT_IP.

tal wifi station get conn ap rssi 의 확장 파일

연결된 AP의 신호 강도를 얻으십시오.

OPERATE_RET tal_wifi_station_get_conn_ap_rssi(int8_t *rssi);

dBm의 RSSI를 반환 (신호 값; 예를 들어, -45는 강한, -80은 약합니다).

tal wifi station get err stat의 경우

실패한 연결 시도 후 오류 상태를 가져옵니다.

OPERATE_RET tal_wifi_station_get_err_stat(WF_STATION_STAT_E *stat);

소프트 AP

다운로드

소프트 액세스 포인트를 시작합니다.

OPERATE_RET tal_wifi_ap_start(WF_AP_CFG_IF_S *cfg);

구성 구조에는 SSID, 암호, 채널, 암호화 유형 및 최대 역이 포함됩니다.

:::note ESP32 제한 tal_wifi_ap_stop()에 ESP32 현재 불완전 (returns)OPRT_OK그러나 완전히 AP를 찢지 않습니다. AP에서 STA 모드로 전환하면 장치 재시작이 필요할 수 있습니다. :::

다운로드

소프트 액세스 포인트를 중지합니다.

OPERATE_RET tal_wifi_ap_stop(void);

Network 구성

tal wifi get ip / tal wifi set ip에 대해

역 또는 AP 공용영역을 위한 IP 윤곽을 얻으십시오.

OPERATE_RET tal_wifi_get_ip(WF_IF_E wf, NW_IP_S *ip);
OPERATE_RET tal_wifi_set_ip(WF_IF_E wf, NW_IP_S *ip);

WF_IF_E이름 *WF_STATION또는WF_AP. NW_IP_S이름 *ip, mask, gw문자열로.

tal wifi get mac / tal wifi set mac의 경우

MAC 주소를 가져옵니다.

OPERATE_RET tal_wifi_get_mac(WF_IF_E wf, NW_MAC_S *mac);
OPERATE_RET tal_wifi_set_mac(WF_IF_E wf, NW_MAC_S *mac);

다운로드

연결된 AP의 BSSID를 가져옵니다.

OPERATE_RET tal_wifi_get_bssid(uint8_t *mac);

:::warning 사이트맵 ESP32에서, 이 기능은 돌려보낼 수 있습니다OPRT_OK버퍼를 채우지 않고. 출력을 검증합니다. :::

채널 및 모드

tal wifi set cur channel / tal wifi get cur channel 채널

OPERATE_RET tal_wifi_set_cur_channel(uint8_t chan);
OPERATE_RET tal_wifi_get_cur_channel(uint8_t *chan);

tal wifi set work mode / tal wifi get work mode에 대해

OPERATE_RET tal_wifi_set_work_mode(WF_WK_MD_E mode);
OPERATE_RET tal_wifi_get_work_mode(WF_WK_MD_E *mode);

형태:WWM_STATION, WWM_SOFTAP, WWM_STATIONAP.

tal wifi set country code의 경우

Wi-Fi 규제 국가 코드를 설정합니다.

OPERATE_RET tal_wifi_set_country_code(char *country_code);

지원되는:"CN", "US", "JP", "EU".

Sniffer 형태

다운로드

promiscuous (sniffer) 모드를 활성화하거나 비활성화합니다.

OPERATE_RET tal_wifi_sniffer_set(BOOL_T en, SNIFFER_CALLBACK cb);

활성화되면, Raw 802.11 프레임은 콜백에 전달됩니다. Tuya의 SmartConfig 프로비저닝에 사용됩니다.

관리 프레임

사이트맵

원료 관리 구조를 보내십시오.

OPERATE_RET tal_wifi_send_mgnt(uint8_t *buf, uint32_t len);

tal wifi register recv mgnt callback의 경우

수신 관리 프레임에 대한 콜백 등록.

OPERATE_RET tal_wifi_register_recv_mgnt_callback(BOOL_T enable, WIFI_REV_MGNT_CB recv_cb);

전력 관리

tal wifi lp enable / tal wifi lp disable의 경우

사용 가능한 Wi-Fi 저전력 모드.

OPERATE_RET tal_wifi_lp_enable(void);
OPERATE_RET tal_wifi_lp_disable(void);

tal wifi set lps dtim의 경우

낮은 힘 형태를 위한 DTIM 간격을 놓으십시오.

void tal_wifi_set_lps_dtim(uint32_t dtim);

저전력 모드를 입력하기 전에 호출합니다.

이름 *

tal wifi rf calibrated에 대해

Wi-Fi RF 캘리브레이션이 수행되었는지 확인하십시오.

BOOL_T tal_wifi_rf_calibrated(void);

다운로드

플랫폼 별 Wi-Fi 제어.

OPERATE_RET tal_wifi_ioctl(WF_IOCTL_CMD_E cmd, void *args);
노트

기타 제품OPRT_NOT_SUPPORTEDESP32에.

사용법 예

#include "tal_wifi.h"
#include "tal_log.h"

static void wifi_event_cb(WF_EVENT_E event, void *arg)
{
WF_STATION_STAT_E stat;
tal_wifi_station_get_status(&stat);
if (stat == WSS_GOT_IP) {
NW_IP_S ip;
tal_wifi_get_ip(WF_STATION, &ip);
TAL_PR_INFO("connected, IP: %s", ip.ip);
}
}

void connect(void)
{
tal_wifi_init(wifi_event_cb);
tal_wifi_station_connect((int8_t *)"MySSID", (int8_t *)"MyPassword");
}

더 보기