2016-03-05 3 views
0

Так что я недавно купил Arduino Wifi Shield 101. Я прошел начальные шаги и просто скопировал и вставил их код «сканировать сети». Код, который я использовал, ниже. Поэтому, чтобы помочь вам, ребята, помогите мне, я должен сказать, что wifi моей школы wpa2 зашифрован. Тем не менее, код просто ищет возможные сети для подключения. Код работает нормально, пока не дойдет до строки «Wifi.macAddress (mac)». Я не понимаю, почему код перестает работать здесь. В компиляции или загрузке ошибок нет, код, похоже, не работает. Я, очевидно, новичок в arduino wifi board, поэтому любая помощь вообще была бы замечательной.Arduino Wifi Shield 101 Проблемы с подключением

Вот код:

`#include <SPI.h> 
#include <WiFi101.h> 

void setup() { 
// initialize serial and wait for the port to open: 
Serial.begin(9600); 

while(!Serial); 

// attempt to connect using WEP encryption: 
Serial.println("Initializing Wifi..."); 
printMacAddress(); 

// scan for existing networks: 
Serial.println("Scanning available networks..."); 
listNetworks(); 
} 

void loop() { 
    delay(10000); 
    // scan for existing networks: 
    Serial.println("Scanning available networks..."); 
    listNetworks(); 
} 

void printMacAddress() { 
// the MAC address of your Wifi shield 
byte mac[6];      

// print your MAC address: 
Serial.print("The code got to here"); 
WiFi.macAddress(mac); //why won't this method work? 
Serial.print("The code never reaches this point ... Why?!?!?"); 
Serial.print("MAC: "); 
Serial.print(mac[5],HEX); 
Serial.print(":"); 
Serial.print(mac[4],HEX); 
Serial.print(":"); 
Serial.print(mac[3],HEX); 
Serial.print(":"); 
Serial.print(mac[2],HEX); 
Serial.print(":"); 
Serial.print(mac[1],HEX); 
Serial.print(":"); 
Serial.println(mac[0],HEX); 
} 

void listNetworks() { 
// scan for nearby networks: 
Serial.println("** Scan Networks **"); 
byte numSsid = WiFi.scanNetworks(); 

// print the list of networks seen: 
Serial.print("number of available networks:"); 
Serial.println(numSsid); 

// print the network number and name for each network found: 
for (int thisNet = 0; thisNet<numSsid; thisNet++) { 
    Serial.print(thisNet); 
    Serial.print(") "); 
    Serial.print(WiFi.SSID(thisNet)); 
    Serial.print("\tSignal: "); 
    Serial.print(WiFi.RSSI(thisNet)); 
    Serial.print(" dBm"); 
    Serial.print("\tEncryption: "); 
    Serial.println(WiFi.encryptionType(thisNet)); 
    } 
}` 

ответ

1

Вы питания платы через USB? Если это так, вы, вероятно, испытываете проблему с недостаточной властью.

Мой первоначальный ответ был удален (так что я не знаю, что вы можете и не увидеть), но ссылка на ошибку Arduino я поданном здесь: Arduino 101 + Wifi 101 Shield board freeze. #50

Как оказалось, мой совет был просто под напряжением, поскольку я использовал порт USB, а не стенную розетку. Я фактически закончил использование другого USB-порта, и пример scanNetworks теперь работает для меня.

EDIT На самом деле, как оказалось, это был USB-кабель. В любом случае, власть была проблемой.

Я бы рекомендовал включить питание через стенную бородавку или выбрать другой порт USB и повторить попытку.

Смежные вопросы