0

我正在使用 NodeMCU 板、V3 引脚分配和 Arduino IDE。我需要振荡其中一个输出引脚,并四处挖掘我发现了这个页面: https ://github.com/nodemcu/nodemcu-firmware/blob/master/docs/en/modules/gpio.md

非常有用,尤其是gpio.serout()功能,但我无法让它工作。这是我的代码:

#include <gpio.h>;
#define LED D5

void setup() {
  gpio.mode(LED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  Serial.write("Starting blinking.");
  gpio.serout(LED, HIGH, 1000000, 10);
  Serial.write("Done.");
}

#include <gpio.h>;是编译器抛出错误后我的猜测, 'gpio' was not declared in this scope但错误仍然存​​在。该文件gpio.h显然可以正常导入,否则会抱怨。我能找到的只是上面链接的手册页之类的代码片段,没有完整的草图。

有什么方法可以使用这些gpio功能吗?

4

3 回答 3

1

开始使用 NodeMCU 的快速方法是使用 Arduino IDE。您可以使用链接中描述的步骤顺序。完成此操作后,您可以使用 IDE 本身中的示例。首先,您可以使用 File->Examples->Basics->Blink 中的示例。这将使板载 LED 闪烁

于 2018-08-26T08:35:53.713 回答
0

尽管有几个板被命名NodeMCU(或称为NodeMCU),但这个名称NodeMCU实际上是指可以安装在基于 ESP8266 的芯片/开发板上的几种可能的固件之一。

NodeMCU 是 ESP8266 的流行 SDK,它为您提供 Lua 解释器和许多不同的模块,用于控制不同的功能和使用不同的通信协议。请参阅NodeMCU 文档,其中列出并记录了各种可用扩展,包括gpio您在问题中引用的模块。有关 Lua 编程语言的信息,请参见http://lua.org

我非常喜欢 Lua,我发现使用 NodeMCU SDK 非常有趣。但是,还有其他选项可以对这些板进行编程。

一个很好的替代方法是使用与 Arduino 兼容的 SDK,该 SDK 允许您使用 C 进行编程。如果您要使用 Arduino IDE,则需要安装此 SDK。有关安装说明和下载 SDK,请参阅esp8266/Arduino github 存储库。

digitalWrite安装此 SDK 后,您可以使用该功能以与编程任何其他 Arduino 完全相同的方式控制板上的引脚。因此,对于您的示例,您可以执行以下操作:

int pin = 12; // or whatever pin you want
for (int i = 0; i < 10000; i++) {
   digitalWrite(pin, HIGH);
   delay(10);
   digitalWrite(pin, LOW);
   delay(10);
}

你应该把它提取到一个函数中,我写的没有gpio.serout函数那么灵活,但是它给了你一个开始的地方。如果您需要更复杂的东西,您可以查看 gpio 模块(源代码)并调整它的功能实现。serout

于 2017-04-20T03:14:10.623 回答
0

无需使用“gpio.h”头文件。要振荡其中一个 I/O 引脚,您可以使用 arduino 代码对LED 进行简单的闪烁并将其直接烧入 NODEMCU 板。

对 NODEMCU 进行编程有两种不同的方法:

  1. Arduino IDE
  2. 刻录一些充当操作系统的固件,我们在其中编写代码文件。

只要我们使用 Arduino IDE 进行编程,我们就不必担心固件,因为 Arduino 代码会转换为在 NODEMCU 上烧录的*.bin格式,而我们正在讨论的固件可以帮助我们用不同的语言(如MicroPython)进行编程,卢亚。

一切都由Arduino IDE 处理。它创建自己的固件版本并将其刻录在板上。

于 2018-02-13T03:51:17.090 回答