Arduino& ESP8266 - 响应中的奇怪字符

时间:2017-04-08 09:56:44

标签: arduino httprequest at-command esp8266

我正在开发Arduino Uno + ESP8266项目。

我尝试将它们用作Wi-Fi网络上的Web服务器来控制连接到Arduino的电机 - 基本上是通过Wi-Fi接收信号的触发系统。目前,我已经通过从Arduino发送AT命令成功将ESP8266连接到我的接入点。同一网络上的另一个客户端可以静态访问ESP8266分配的IP地址。

但是,当我尝试捕获一些HTTP查询时(我想将它们用作控制电机的条件)我偶尔遇到HTTP请求中的非ASCII字符。我使用serial comm进行调试,请查看以下链接中的屏幕截图:

Arduino - Computer serial communication for debugging

该行",519:POST ..."应该包含" /?"之后的完整数字,但是有一些奇怪的字符。所以我无法确定控制电机的输入数据。一旦进入蓝色月亮,预期的请求格式将显示如下:

The correct data received

HTTP响应部分没有问题,即使我收到无法解释的请求,我仍然可以将JSON错误消息发送回客户端。

尝试注意: Arduino使用不同的串口与计算机和ESP8266通信。由于可以建立连接,并且正在发送数据,我相信波特率在两边都是正确的。 (ESP8266为115200,计算机为9600,两者均为115200,得到的结果相同)

我使用Arduino的V3.3作为ESP8266的电源。但我也使用电压调节器来平滑电流,正如许多人所说的那样。问题仍然存在。

我在这个问题上挣扎了几天,只是想知道是否有人有类似的经历,或者可以为下一步提供一些线索。

1 个答案:

答案 0 :(得分:0)

经过相当大的努力来稳定电路后,我切换到NodeMCU并使系统完美运行。我假设ESP8266在某种程度上不够强大而没有其他组件,遗憾的是我不知道。 因此,我想通过一个简短的建议来关闭这个线程,以便任何挣扎于同一问题的人切换到NodeMCU(它将取代Arduino和ESP8266);如果那可以支持这个要求。