问题标签 [esp8266]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3686 浏览

lua - nodemcu + esp8266 + hc-sr04 - tmr.now() 差异不正确

我已经开始在 esp8266 上使用 nodemcu。我已将 esp 与 hc-sr04(用于距离测量的超声波传感器)连接起来。hc-sr04 需要接收高电平触发引脚 10us。之后,hc 发送回显引脚的高电平状态。来自回波引脚的高状态时间可以不同(取决于距离)。时间在我们里面计算。问题是这次来自回显引脚的时间不正确(恕我直言)。我不确定,但这可能是 tmr. nodemcu 的精度不够高?为什么每个循环的时间差异如此之大?

我的代码和下面你会从代码中找到时间打印:

// ---------这部分已更改--------

// - - - - - - - - 至 - - - - - -

代码打印:

感谢您提供线索和解决方案。

0 投票
1 回答
1852 浏览

performance - 为什么 ESP8266 flash 写入有时需要很长时间?

我有这个博客引用的 ESP8266 Nodemcu v0.9 板。要编程 Arduino/ESP8266 草图,我使用命令行“ esptool.py ”:

有时闪存写入完成非常快(不到 10 秒),有时需要几分钟。图像大小约为 300KBytes。

有什么方法可以确保闪存写入始终如一地快速?这种差异的根本原因可能是什么?

更多信息:多次指出,如果在我将 8266 断电并断开一段时间后第一次将图像写入闪存,那么通常写入速度很快。我还没有确定这个时间是多少,但至少可以超过十分钟。第一次写入之后的所有后续写入都很慢。

更多信息:当我使用基于 Windows 的“Nodemcu Firmware Programmer”时,闪存写入速度一直很快。

0 投票
1 回答
210 浏览

json - 谷歌多行折线图

我有 5 个 ESP8266 传感器收集温度和湿度数据。将数据显示为每个传感器的温度和湿度的线的最佳方法是什么?传感器 ID 的值为 ESP

以下是数据示例:

0 投票
2 回答
3952 浏览

arduino - 将 ESP8266 与 Arduino Mega 连接时出现问题。它总是说“模块没有响应”。

将 ESP8266 与 Arduino Mega 连接时遇到问题。它总是说“模块没有响应”。

如果我在任何地方错了,请检查并纠正我。

我正在使用下面的代码,接线图是 在此处输入图像描述

我的代码:

0 投票
0 回答
764 浏览

arduino - 软件序列号不适用于我的 esp8266

我无法使用软件串行在 arduino uno 上使用 esp8266 wifi 模块,问题是我没有得到正确的输出。但我可以使用具有额外硬件串行 tx-rx 对的 Arduino mega。如何使它在 uno 上工作?

我为 esp8266 使用了 lm1117 分压器,尝试了其他分压器(1k + 2k),在 uno 和 nano 上似乎没有任何效果。

这是我得到的输出

0 投票
1 回答
1247 浏览

arduino - ESP8266 (Arduino) 使用大文件

ESP8266WebServer我正在使用该库在 ESP8266 上构建一个网页。问题在于较大的 html 文件,尽管有足够的程序空间和可用内存,但我无法加载页面。

我相信问题是内存溢出webserver.send(200,"text/html",htmlDoc);

有没有办法通过将网页分成更小的部分来将网页“缝合”在一起?

0 投票
2 回答
5336 浏览

jquery - 如何通过 ESP8266 模块将数据从网页发送到 Arduino UNO?

这是我的页面 HTML 代码。我在这里使用了 JQuery。ESP8266 LED 控制

当我将 PC 连接到 ESP8266 的 wifi 时,我可以控制连接在其上的 LED。但我想通过互联网控制它。ESP8266 模块已连接到我的调制解调器的 wifi,但我不知道如何$.get()在 HTML 页面中写入方法,以便通过网络将请求发送到 arduino。我试图将我的调制解调器的公共 IP 地址而不是 192.168.4.1(这是 ESP8266 的默认值)它没有工作。

0 投票
2 回答
526 浏览

lua - Lua报警不执行代码

我正在使用 LuaLoader 在 NodeMCU 中编程。我正在尝试读取节点的 ADC 并将其发送到我公共域中的 PHP 文件。

使用下一个代码,我得到了 adc 和节点的 IP 并通过 GET 发送它。

代码正常工作。如果我将其粘贴到我的 LuaLoader 中,它将返回:

但是,我想在警报中重复代码并每分钟发送一次数据,但它不起作用。

输出只是...

...没有有效载荷。它不发送数据。

我尝试将代码放在一个函数中,在另一个文件中,并使用dotfile将其调用到警报中,但它不起作用。我尝试给它更多时间来发送延长警报 2 分钟的数据,但没有。

0 投票
2 回答
1313 浏览

sockets - 将 ESP8266 连接到虚拟 IP 地址/网站

我正在使用 ESP8266 wifi 模块从我的微控制器在网络上发送/接收数据包。特别是我一直在使用

AT+CIPSTART="TCP",'xxx.xxx.xxx.xxx,80\r\n

命令来选择我将数据包发送到哪个端点。它目前适用于静态 IP(或具有静态 IP 的域);但我还没有找到说明这如何与虚拟 IP(或具有虚拟 IP 的域)一起使用的资源。

我的网站托管在共享服务器上,但每次执行此 CIPSTART 命令(使用 IP 或域)时,响应都是通用共享服务器 IP 地址页面。

如何让我的 ESP8266 连接到托管在具有虚拟地址的共享服务器上的特定站点?

我读过的资源:

0 投票
2 回答
2986 浏览

c++ - ESP8266WebServer 在类中设置值

我在使用 ESP8266WebServer 时遇到了一些问题。我的 WebServer{} 类包裹在 ESP8266WebServer 对象周围,如下所示:

头文件:

cp文件:

这个想法是从 http 请求中获取查询字符串,进行一些处理,然后返回响应。

从外部调用它的方式是:

我的问题是,从我的外部循环(在我的主草图中),“webServer.queryString”总是等于一个空字符串。如果我从 handleSomeData() 中打印出“queryString”,我可以从“handleSomeData()”中看到打印的结果(这是正确的),但它似乎无法将其设置为“外部”该方法。我确实检查了它是否能够访问和修改变量(这就是打印“aNumberHere”的原因)并且似乎没有问题;每次我转到相应的网址时,“aNumberHere”都会按预期递增。

我唯一的怀疑是“queryString”是一个 String 对象,由于某种原因无法设置,而“aNumberHere”是一个原始 int 很好。这是正确的还是这里发生了其他事情?

我也尝试过将“queryString”设为静态变量,但没有运气——要么我做错了,要么它也不能那样工作。

我是朋友函数的新手(好吧,实际上是 c/c++ 的新手——欢迎任何建议),尽管我读到它应该能够很好地访问类的私有属性,所以我不知道如何修复这。

有任何想法吗?