NodeMCU搭配Arduino使用问题:程序上传成功但LED不闪烁
NodeMCU烧录Blink程序后LED不闪烁的解决思路
刚拿到NodeMCU就遇到这种问题太正常了,我帮你一步步排查可能的原因:
首先先明确你的情况:首次使用NodeMCU,安装CH340G驱动无报错,Arduino官方Blink程序显示上传完成,但板载LED不闪烁,使用GoPro线缆,设备设置截图如下:
最可能的原因:引脚定义不对
Arduino Uno的板载LED接在GPIO13,但NodeMCU(ESP8266)的板载LED默认接在D4(对应GPIO2),而且是低电平触发——也就是输出LOW时LED亮,HIGH时灭。
你需要修改Blink程序:
// 把原来的13改成D4 const int ledPin = D4; void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin, LOW); // 点亮LED(低电平有效) delay(1000); digitalWrite(ledPin, HIGH); // 熄灭LED delay(1000); }
修改后重新上传,这大概率能解决问题!
其他排查方向
1. 上传时的刷机操作是否正确
有些NodeMCU需要在上传开始时按住FLASH按钮,直到Arduino IDE显示上传进度条后再松开。如果没按这个按钮,可能会出现“上传完成”但实际程序没刷进去的情况,重启设备再试一次。
2. 线缆是否真的支持数据传输
虽然是GoPro线缆,但部分GoPro线是仅充电的,没有数据传输功能。你可以:
- 在电脑的设备管理器(Windows)或系统报告(Mac)里,确认插上NodeMCU后,串口设备是否稳定存在
- 换一个已知能传数据的USB线试试,或者换电脑的后置USB口(供电更稳定)
3. 验证串口通信是否正常
打开Arduino IDE的串口监视器(右上角放大镜图标),设置波特率为115200,然后重启NodeMCU。如果能看到ESP8266的启动日志,说明串口通信正常;如果没有任何输出,可能还是驱动或线缆的问题。
内容的提问来源于stack exchange,提问作者sameera207
相关产品推荐
相关产品推荐

