wifi信號值偶爾出現跳變

發布於 2022-05-18 08:15:03

獲取WiFi信號值,有時候出現信號跳變
QQ圖片20220518080729.png
Wifi_Connect(my_ssid, my_password);

struct tls_curr_bss_t rssi_1;
u8 auto_reconnect1 = WIFI_AUTO_CNT_ON;
while(1)
{
    tls_os_time_delay(1 * 250);
    if(tls_wifi_get_state() == 3)
    {
        
        tls_wifi_get_current_bss(&rssi_1);
        printf("DBSignal = %d\n",rssi_1.rssi);
    }
    else
    {
        tls_wifi_auto_connect_flag(WIFI_AUTO_CNT_FLAG_SET,&auto_reconnect1);
        printf("auto connect\n");
    }
}

查看更多

關注者
0
被浏覽
2.1k
2 個回答
大信
大信 認證專家 2022-05-19
硬件開發,軟件開發,系統開發,工程架構,方案設計

這個是信號的強度檢測,不知你是檢測的是什麼信號的強度,一般的在 掃描周邊AP時,會返回每個AP的信號強度,而且幾乎都是 小於0的。
如下圖紅色部分,就是每個熱點的信號強度,數字越小信號越弱 :
w801ss.png

isme
isme 認證專家 2022-05-19
冰鎮大西瓜

參考這個demo程序。

/***************************************************************************** 
* 
* File Name : main.c
* 
* Description: main 
* 
* Copyright (c) 2014 Winner Micro Electronic Design Co., Ltd. 
* All rights reserved. 
* 
* Author : dave
* 
* Date : 2014-6-14
*****************************************************************************/ 
#include "wm_include.h"
#include "string.h"

void UserMain(void)
{
    printf("\n user task \n");    
    struct tls_curr_bss_t rssi;
    u8 auto_reconnect = 0xff;
    if(auto_reconnect != WIFI_AUTO_CNT_ON)
    {
        auto_reconnect = WIFI_AUTO_CNT_ON;
        tls_wifi_auto_connect_flag(WIFI_AUTO_CNT_FLAG_SET, &auto_reconnect); 
        tls_wifi_connect((u8 *)"w600", strlen("w600"), (u8 *)"12345678", strlen("12345678"));
        printf("--->WIFI_AUTO_CNT_FLAG_SET ON\n");
    }
    
    while(1)
    {
        tls_os_time_delay(HZ*1); 
        tls_wifi_get_current_bss(&rssi);
        printf("--->rssi = -%d\n",rssi.rssi);
    }

#if DEMO_CONSOLE
    CreateDemoTask();
#endif
//用戶自己的task
}

image.png

撰寫答案

請登錄後再發布答案,點擊登錄

發布
問題

分享
好友

手機
浏覽

掃碼手機浏覽