时间:2023-06-16 07:18
人气:
作者:admin
NodeMCU是一个开源的IoT(物联网)平台,包括在乐鑫的ESP8266 Wi-Fi SoC上运行的固件和基于ESP-12模块的硬件。它是由一乐鑫在2014年创建的,他们希望为物联网项目提供低成本和灵活的平台。ESP32是低成本的微芯片,具有Wi-Fi和蓝牙功能,由乐鑫开发,是一家中国的微控制器和集成电路制造商。它于2016年发布,作为ESP8266的继任者,由于其改进的性能和额外的蓝牙连接,它已成为物联网项目的流行选择。

乐鑫司成立于2008年,由一群对为新兴物联网市场开发低成本、高性能微控制器感兴趣的中国工程师组成。除了ESP8266和ESP32之外,该公司还发布了一系列用于物联网应用的其他微芯片和模块。
ESP8266和ESP32都是低成本的微芯片,具有Wi-Fi和微控制器功能,使它们非常适合于物联网(IoT)应用。两种芯片都有自己的优势,根据你的需要,可能更适合某些项目。

下面是ESP8266和ESP32之间的一些关键区别:
总的来说,ESP32通常被认为比ESP8266更强大,功能更全面,但它也更昂贵。如果你需要具有更多处理能力和内存的芯片,或者你需要蓝牙连接,ESP32可能是更好的选择。如果你的预算有限,而且不需要那么多的处理能力或蓝牙连接,ESP8266可能是更合适的选择。
在物联网(IoT)领域,NodeMCU和ESP32有许多实时应用。下面是几个例子:
总的来说,NodeMCU和ESP32非常适合物联网领域的实时应用,因为它们成本低,可用性广,而且易于使用。它们可以用来建立广泛的连接设备和系统,可以实时监测和控制各种过程。
下面是一些开始使用NodeMCU和ESP32的简短步骤:
void setup() {
// Set pin D1 as an output
pinMode(D1, OUTPUT);
}
void loop() {
// Turn the LED on
digitalWrite(D1, HIGH);
// Wait for 1 second
delay(1000);
// Turn the LED off
digitalWrite(D1, LOW);
// Wait for 1 second
delay(1000);
}
如果一切设置正确,LED应该每秒钟打开和关闭。
要开始使用ESP8266或ESP32,你将需要以下组件:
ESP32和NodeMCU都有类似的引脚配置,可以使用相同的工具进行编程。ESP32和NodeMCU上的引脚都标有字母和数字,如 "D0 "或 "A5"。字母指的是引脚的功能,而数字指的是微控制器上的具体引脚。

下面是ESP32和NodeMCU的主要引脚类型的总结:
具体来说,因为有以下特点:

对于那些喜欢更多技术和细节的人,可以考虑以下方法ESP32的详细规格(来源:http://esp32.net/)
150.0 Mbps的数据速率,使用HT40
在ESP32-D2WD和ESP32-PICO-D4上通过IO16、IO17、SD_CMD、SD_CLK、SD_DATA_0和SD_DATA_1内部连接闪存。
确保你仍然可以使用ADC转换,例如,当你处于深度睡眠状态。
ESP32一词指的是ESP32芯片的整体。然而,术语 "ESP32 "也可以指ESP32开发板。使用ESP32裸芯片是很困难和不方便的,特别是在学习、测试和制作原型时。大多数时候,一个ESP32开发板就足够了。

这些开发板有你开始工作所需的一切,包括给芯片供电和编程的电路、与电脑的连接、连接外设的引脚、电源和控制LED、Wi-Fi天线等等。有些,如ESP32-CAM,甚至包括板上的补充硬件,如内置摄像头或各种传感器和模块。
当你开始在网上寻找ESP32板时,你会看到来自不同供应商的大量板子。虽然它们的功能都差不多,但有些板子可能比其他的更适合某些任务。在选购ESP32开发板时,有各种因素需要考虑:
USB到UART接口和稳压电路。这两个功能在大多数全功能的开发板上都有。这是必要的,以便简单地将ESP32连接到你的计算机,以便上传代码和应用电源。
BOOT和RESET/EN按钮可以使板子处于闪烁模式或重置(重启)板子。并非所有的板子都有BOOT按钮。通常情况下,这些板子会自己进入闪烁模式。
引脚配置和引脚数量。 你需要获得板子的引脚配置,以便以适合你的应用的方式使用ESP32(比如一张显示哪个引脚对应哪个GPIO及其功能的地图)。因此,请确保你能够获得你将要购买的电路板的引脚分布。否则,你有可能误用ESP32,给自己带来麻烦。
天线连接器。大多数板子都包括一个内置的Wi-Fi天线。有些板子包括一个天线连接器,如果需要的话,可以连接一个外部天线。增加一个额外的天线可以扩大你的Wi-Fi范围。
电池接口。如果你想使用电池为你的ESP32供电,有一些开发板带有锂电池的插头。这可能更方便。你也可以用电池通过电源引脚为 "普通 "ESP32供电。
额外的硬件功能。有一些ESP32开发板具有额外的硬件功能。有些可能包括OLED显示屏,LoRa模块,SIM800模块(用于GSM和GPRS),电池座,摄像头,或其他功能。
对于初学者来说,我们推荐一个ESP32板,它有大量可访问的GPIO,没有额外的硬件功能。同样关键的是,它要有标准的电压输入,以及一个用于供电和代码上传的USB输入。我们在大多数ESP32项目中使用ESP32 DEVKIT DOIT板,它是我们推荐给初学者的。这个板子有三种不同的配置,每种配置都有不同数量的可访问引脚(30、36和38)--所有板子的功能都差不多。其他具有前面所述功能的类似板子,如Adafruit ESP32 Feather、Sparkfun ESP32 Thing、NodeMCU-32S、Wemos LoLin32等,也可能是一个不错的选择。
它有微型USB接口,可以让你把板子连接到电脑上,这样你就可以上传代码或给它供电。它使用CP2102芯片(USB转UART),通过COM端口的串行接口与你的计算机对话。CH340是另一个著名的芯片。找出你的板子有什么样的USB-to-UART芯片转换器,因为你需要为你的计算机安装正确的驱动程序,以便能够与板子对话(本指南后面会有更多相关信息)。这个板子还有一个RESET(或EN)按钮,用来关闭和重新开启板子,还有一个BOOT按钮,用来将板子置于闪动模式(可用于接收代码)。请记住,并不是所有的板子都有一个BOOT按钮。

它还内置了一个蓝色的LED,从内部接线到GPIO 2。这个LED对调试很有帮助,因为它可以提供某种可以看到的物理输出。板子上还有红色的LED,当你给它供电时,它会亮起来。
ESP32芯片有48个引脚,都做不同的事情。并非所有的ESP32开发板都有所有的引脚暴露,有些引脚不应该被使用。大多数时候,ESP32 DEVKIT V1 DOIT板有36个GPIO,这些GPIO是暴露的,可以用来连接外设。
电源引脚
在大多数情况下,电源引脚3V3、GND和VIN已经安装在电路板上。如果你不通过USB端口给电路板供电,你可以使用这些引脚给电路板供电。如果你通过USB端口给板子供电,你可以用这些引脚给其他设备供电。
通用输入输出引脚(GPIOS)
大多数的GPIO都被赋予了一个编号,因此你应该总是用这个编号来指代它们。你可以通过在代码中设置这些信息来选择哪些ESP32引脚用于UART、I2C或SPI。ESP32芯片的多路复用功能使之成为可能,它可以将许多功能分配给一个引脚。
如果你没有在代码中指定这些引脚,那么这些引脚将被默认设置为下图所示(引脚的位置可能会根据制造商的不同而改变)。此外,一些引脚具有特殊的特性,决定了它们是否适合于一个特定的项目。根据你的开发板的型号,GPIO的位置可能有所不同。然而,无论你使用的是哪种开发板,每个单一的GPIO通常以相同的方式工作(有一些例外)。例如,GPIO 5通常总是VSPI CS0引脚,GPIO 23通常是用于SPI通信的VSPI MOSI引脚,等等,与板子无关。