2016-05-14 13 views
-1

Der Fehler war 'invalid conversion from 'char*' to 'uint8_t {aka unsigned char}' [-fpermissive]'. Ich versuche, rssi von einem Netzwerk mit SSID zu bekommen, ohne direkt mit ihm zu verbinden. wifi.Rssi - Konvertierung von char * nach uint8_t

char ssid[]="GreenNET"; 
void updateRSSI(){ 
    rssi = WiFi.RSSI(ssid); 
    Serial.print(rssi); 
    Serial.print(" dBm"); 
    Serial.println(); 
} 

https://www.arduino.cc/en/Reference/WiFiRSSI

+0

Also, was ist die Frage? –

+0

@SouravGhosh wie man char * in uint8_t konvertiert – hig

+0

[Lassen Sie mich das für Sie googeln] (https://www.google.com/search?q=how+to+convert+char+to+uint8_t&oq=how+to + konvertieren + char * + zu + uint8_t & aqs = chrome..69i57 & sourceid = chrome & ie = UTF-8) –

Antwort

1

WiFi.RSSI nimmt ein Netzwerk Index, nicht eine SSID-Zeichenfolge:

char ssid[] = "GreenNET" 
uint8_t available_networks = WiFi.scanNetworks(); 
for (uint8_t net = 0; net < available_networks; ++net) 
{ 
    if (strcmp(WiFi.SSID(net), ssid) == 0) 
    { 
    rssi = WiFi.RSSI(net); 
    Serial.print(rssi); 
    Serial.print(" dBm"); 
    Serial.println(); 
    break; 
} 
} 
+0

außer es sollte rssi = WiFi.SSID (net); aber es funktioniert, danke! – hig

+0

@hig: 'rssi = WiFi.SSID (net);' - bist du sicher? Ich folge nicht. – isedev

Verwandte Themen