0°

(二)Arduino系列:NodeMCU GPIO使用

目录

介绍

通用输入/输出(GPIO)是IC(集成电路)上的引脚。它可以是输入引脚或输出引脚,其行为可以在运行时控制。

NodeMCU开发套件提供对ESP8266的这些GPIO的访问。唯一需要注意的是NodeMCU Dev kit引脚的编号与ESP8266的内部GPIO符号不同,如下图和表所示。例如,NodeMCU开发套件上的D0引脚映射到ESP8266的内部GPIO引脚16。

(三)Arduino系列:NodeMCU GPIO使用

NodeMCU DevKit GPIO

下表给出了NodeMCU Dev Kit IO引脚和ESP8266内部GPIO引脚映射

(三)Arduino系列:NodeMCU GPIO使用

 蓝色框(1,3,9,10)中显示的GPIO大部分不用于开发套件中的GPIO用途

ESP8266是一种片上系统(SoC)设计,具有处理器芯片等组件。处理器有大约16条GPIO线,其中一些用于内部与SoC的其他组件接口,如闪存。

由于ESP8266 SoC内部使用了几条线路,因此我们还有大约11个GPIO引脚用于GPIO。

现在,11个中的2个引脚通常被保留用于RX和TX,以便与从中下载编译的目标代码的主机PC通信。

因此,最后,这只留下了9个通用I / O引脚,即D0到D8。

如NodeMCU Dev Kit的上图所示。我们可以看到RX,TX,SD2,SD3引脚并不主要用作GPIO,因为它们用于其他内部处理。但我们可以尝试使用SD3(D12)引脚,它主要用于响应GPIO / PWM /中断等功能。

注意,D0 / GPIO16引脚只能用作GPIO读/写,不支持特殊功能。

让我们为NodeMCU Dev Kit的D4脚上的LED写一个闪烁的Arduino程序。

 用于LED闪烁的Arduino程序

uint8_t LED_Pin = D4;       // declare LED pin on NodeMCU Dev Kit

void setup() {
  pinMode(LED_Pin, OUTPUT);   // Initialize the LED pin as an output
}
  
void loop() {
  digitalWrite(LED_Pin, LOW); // Turn the LED on
  delay(1000);                // Wait for a second
  digitalWrite(LED_Pin, HIGH);// Turn the LED off
  delay(1000);                // Wait for a second
  }

本教程完整程序下载:

限制以下用户组阅读此隐藏内容

请先登录

您的用户组:
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论