c++ - 无法将 Wifly 连接到 Arduino

标签 c++ connection embedded wifi arduino

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

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

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

我怎么知道我买的Wifly Shield没有问题? 我将听到的 ping 焊接到 Wifly Shield 并将其堆叠到 Aurduino Uno,我可以看到 Wifly Shield 上的 LED 灯在闪烁。

我需要重置 Wifly Shield 吗?如何重置它?

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

最佳答案

盾牌我也买了,入手很费劲。

如果您已将引脚焊接到屏蔽罩上,那应该没问题,但请确保您检查它们是否都有连接,并且它们没有焊料沿着引脚的腿流下,因为这会导致屏蔽罩不稳定。

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

一旦您看到屏蔽已连接,它将要求输入,键入 $$$ 并按回车键...您现在已进入命令行,将显示 CMD。

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

然后键入 set wlan phrase YourPharsePhrase(将 YourPharsePhrase 更改为您的 WPA key ) 然后输入 join YourSSIDName(将 YourSSIDName 更改为您的网络名称)

你会看到这样的东西: 加入你的 SSID 名称 Auto-Assoc YourSSIDName chan=1 mode=MIXED SCAN OK 现在加入 YourSSIDName.. <2.15>关联! DHCP:开始 1234 毫秒内的 DHCP,租约 = 86400 秒 如果=向上 DHCP=开 IP=10.0.0.116:2000 海里=255.255.255.0 GW=10.0.0.1 收听 2000

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

希望这能让您启动并运行。 注意请记住仔细检查您的密码!我的遇到了很大的麻烦,因为只需要少量的焊料,但足以获得良好的连接,平衡是微小的,但足以使它无法工作。最后我用放大镜检查了我的。

#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());
  }
}

关于c++ - 无法将 Wifly 连接到 Arduino,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9956145/

相关文章:

c++ - 断言 desc 在 src/libswscale/swscale_internal.h :668 失败

c++ - 将 GDB 与 Eigen C++ 库一起使用

ruby-on-rails-3 - resque 不再启动 "Can' t 分配请求的地址 - connect(2)”

c++ - 如何在 C/C++ 中做 TCP 连接池

c++ - 从 C++ 文件中读取整数和字符

C++继承公共(public)和私有(private)?

c - 使用 POSIX 消息队列而不是 TCP 套接字 - 如何建立 "connection"?

gcc 可以生成不同大小的目标代码吗?

c - 包含 .c 文件的副作用

c - 登录 ISR、sprintf()、printk() 等等?