首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Arduino盾牌上打开Sigfox UART

无法在Arduino盾牌上打开Sigfox UART
EN

Stack Overflow用户
提问于 2016-10-15 09:57:22
回答 2查看 215关注 0票数 0

我想让阿迪诺·尤诺通过西格福克斯发送数据。使用Libelium Xbee盾牌和Sigfox模块进行Arduino (烹饪黑客)。我尝试使用Arduino库中的示例发送一个字符串。Arduino的素描很简单:

代码语言:javascript
复制
   #include <Wire.h>

   // Cooking API libraries
   #include <arduinoClasses.h>
   #include <arduinoUART.h>
   #include <arduinoUtils.h>

   #include <arduinoSigfox.h>
   // Pin definition for Sigfox module error LED:
   const int error_led = 13;

   //////////////////////////////////////////////
   uint8_t socket = SOCKET0; //Asign to UART0
   //////////////////////////////////////////////

   uint8_t error;

   void setup()
   {
   Serial.begin(9600);
   pinMode(error_led, OUTPUT);

   //////////////////////////////////////////////
   // 1. switch on
   //////////////////////////////////////////////
   error = Sigfox.ON(socket);

   // Check status
   if( error == 0 )
   {
   //"Switch ON OK"
   digitalWrite(error_led, LOW);
   Serial.println("Sigfox Switch ON -> SUCCES");
   }
   else
   {
   //"Switch ON ERROR"
   digitalWrite(error_led, HIGH);
   Serial.println("Switch Switch ON -> FAILED");
   }

   //////////////////////////////////////////////
   // 2. send data
   //////////////////////////////////////////////

   // Send 12 bytes at most
   error = Sigfox.send("000102030405060708090A0B");

   // Check sending status
   if( error == 0 )
   {
   //"Sigfox sending -> SUCCES"
   digitalWrite(error_led, LOW);
   Serial.println("Sigfox sending -> FAILED");
   }
   else
   {
   //"Sigfox packet sent ERROR"
   digitalWrite(error_led, LOW);
   Serial.println("Sigfox packet sent ERROR");
   }
   }


   void loop()
   {
   //////////////////////////////////////////////
   // 3. sleep
   //////////////////////////////////////////////
   }

串行端口上的输出如下:

代码语言:javascript
复制
AT
   Sigfox Switch ON -> FAILED
   AT$SF=000102030405060708090A0B
   Sigfox sending -> FAILED

Sigfox模块与板之间的连接似乎没有问题,因为Sigfox.getID()正在工作,并且检索到了正确的ID。同时,在Sigfox平台上订阅设备似乎也是可以的。

我如何调试这个?我不知道如何开始诊断:图书馆里的东西?在发送什么东西吗?硬件里有什么东西?在这方面的所有帮助是非常感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-05 07:35:53

这个问题相对容易解决。事实证明,不可能运行连接了串行电缆的Arduino/Xbee/Sigfox组合(我用它来供电,并将调试信息发送到我的计算机)。我要做的就是:

  • 把开关转到USB上
  • 通过串行电缆上传新代码
  • 拔掉串行电缆
  • 把开关转到Xbee
  • 通过12V外壳(或其他电源输入)为arduino供电

那就成功了。

票数 0
EN

Stack Overflow用户

发布于 2016-11-12 07:02:10

请再次检查Arduino TX是否连接到Sigfox RX,Arduino RX也连接到Sigfox TX检查,模块在pin 1上有VCC,GND在第9引脚上。如果它仍然不工作,可能是因为RX和TX线路上还有其他连接。把它移开。个人而言,我在这些行上放置了一个逻辑分析器来检查对话框。对于"ON":AT\r\n被发送,并回答"OK\r\n“。

希望这能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40057597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档