无法将Wifly连接到Arduino

时间:2012-03-31 13:09:12

标签: c++ connection embedded wifi arduino

我只是一名Arduino初学者。昨天我买了一个Arduino Uno和一个Wifly盾牌,我无法运行带有WiFlySerial库的Wifly_Test示例程序。

当我查看串行监视器时,我只看到打印出2行

1.Starting WiFly Tester.
2.Free memory:XXXX

我怎么知道我买的Wifly Sheild没有错? 我把听到的声音焊接到了Wifly Shield并将它堆叠到了Aurduino Uno,我可以看到Wifly Shield上的LED闪烁。

我需要重置Wifly Sheild吗?我该如何重置它?

请指出关于如何连接路由器的最简单示例。

3 个答案:

答案 0 :(得分:2)

我还买了盾牌,开始时遇到了麻烦。

如果你已将引脚焊接到屏蔽层上,那应该没问题,但要确保检查它们是否都有连接,并且它们没有焊料从引脚的支脚向下流动,因为这会使屏蔽层变得不稳定。

运行下面的代码,该代码来自WiFly库(alpha 2版本),可在此处找到: http://forum.sparkfun.com/viewtopic.php?f=32&t=25216&start=30

一旦你看到盾牌已连接,它就会要求输入,输入$$$并按回车键......你现在已经进入命令行并显示CMD。

如果您不知道您的网络设置类型扫描,则会显示它们。 然后通过键入set wlan auth 3(混合WPA1和WPA2-PSK)或设置wlan auth 4(WPA2-PSK)来设置您的身份验证,这取决于您的身份验证类型,因此请选择您的网络写入。

然后输入set wlan短语YourPharsePhrase(将YourPharsePhrase更改为您的WPA密钥) 然后键入join YourSSIDName(将YourSSIDName更改为您的网络名称)

你看到这样的事情:     加入YourSSIDName     自动关联YourSSIDName chan = 1 mode = MIXED SCAN OK     现在加入YourSSIDName ..     < 2.15>相关!     DHCP:开始     DHCP在1234ms,租约= 86400s     IF = UP     DHCP = ON     IP = 10.0.0.116:2000     NM = 255.255.255.0     GW = 10.0.0.1     听2000年

您现在已连接到您的网络。

希望这会让你开始运转。 的 N.B。请记住仔细检查你的密码!我遇到了很大的麻烦,因为只需要少量的焊料,但足以获得良好的连接,这种平衡很小但足以使它不起作用。我最后用放大镜来检查我的。

#include "WiFly.h" // We use this for the preinstantiated SpiSerial object.


void setup() {

  Serial.begin(9600);
  Serial.println("SPI UART on WiFly Shield terminal tool");
  Serial.println("--------------------------------------");  
  Serial.println();
  Serial.println("This is a tool to help you troubleshoot problems with the WiFly shield.");
  Serial.println("For consistent results unplug & replug power to your Arduino and WiFly shield.");
  Serial.println("(Ensure the serial monitor is not open when you remove power.)");  
  Serial.println();

  Serial.println("Attempting to connect to SPI UART...");
  SpiSerial.begin();
  Serial.println("Connected to SPI UART.");
  Serial.println();

  Serial.println(" * Use $$$ (with no line ending) to enter WiFly command mode. (\"CMD\")");
  Serial.println(" * Then send each command followed by a carriage return.");
  Serial.println();

  Serial.println("Waiting for input.");
  Serial.println();    

}


void loop() {
  // Terminal routine

  // Always display a response uninterrupted by typing
  // but note that this makes the terminal unresponsive
  // while a response is being received.
  while(SpiSerial.available() > 0) {
    Serial.write(SpiSerial.read());
  }

  if(Serial.available()) { // Outgoing data
    //SpiSerial.print(Serial.read(), BYTE);
    SpiSerial.write(Serial.read());
  }
}

答案 1 :(得分:1)

抱歉,我忘了提及,您通过转到WiFly库重置屏蔽并转到:WiFly / tools / HardwareFactoryReset

然后打开串行监视器并键入任何字符,这将开始重置。

答案 2 :(得分:0)

感谢所有试图回答我的人。我终于通过使用Arduino 0023而不是1.0解决了我的问题。