Arduino|ESP8266化身USB2TTL串口模块

2017-04-082.2万
AI 快速预览详细 收起
本文介绍了如何通过简单的Arduino代码将ESP8266变成一个USB2TTL串口模块。适用于Wemos D1 Mini等Arduino兼容板,可以用于调试和上传程序。通过设置Tx和Rx引脚为输入模式,确保串行连接不受干扰。此外,还提到了ESPLink固件,可以实现WiFi转串口功能,但无法同时使用其他引脚。


ESP8266也能当USB2TTL串口模块使用
日常都会用到USB转串口模块,用来调试、登录以及为各种开发板上传程序。虽然这个模块并不贵,但是有时候手头木有咋么办?如果你手头有一块Arduino兼容板,那问题就迎刃而解了,借助ArduinoSerialBypass.ino小程序,可以很方便地将Arduino兼容板变成一个USB2TTL调试模块使用,而现在,网友Zoobab发现,这同样适用于烧录了Arduino固件的ESP8266。
【Wemos D1 Mini】国产的小板子,产品介绍见此,板载CH340G串口模块,兼容Arduino和NodeMCU。
让我们看看这个神奇的小程序是什么:
[mw_shl_code=cpp,true]void setup()
{
  pinMode(0,INPUT);
  pinMode(1,INPUT);
}
void loop()
{

}[/mw_shl_code]
啊哈,两行不能再简单的代码,实现了Tx和Rx引脚(0和1)设置为输入以确保串行连接不会受到干扰,详细解释如下:

This code makes the Arduino not interfere with pins 0 and 1 which are connected to RX and TX on the FTDI chip. This allows the data coming from the FTDI USB 2 Serial chip to flow directly to another device. Since RX and TX are labeled from the Arduino’s point of view, don’t cross the wires, but plug the device’s RX wire into the RX pin 0 and the TX wire into the TX pin 0.
使板载USB转串口模块(FTDI/CH340G/PL2303/Atmega)的数据直接流转到其他设备,也因此Rx-Rx,Tx-Tx连接,无需像往常那样交叉连接。

上述方案适用于板载有USB2TTL模块的Arduino兼容板,并且也适用于使用ESP8266方案的Wemos D1 Mini(烧录Arduino固件),注意,标准Arduino使用5v电平,ESP8266使用3.3v电平
如果想要使用wifi转串口功能,则可以借助 ESPLink 固件,缺点是无法像Arduino固件那样还能同时使用其他引脚。当然由于ESPLink固件是开源的,你可以进行二次开发。
PS:建议访问原文以查看更多精彩评论;ZooBaB好像是个大触啊!
更多关于ESP8266的入门进阶可以看我的文章:http://www.cnblogs.com/sjqlwy/p/smart_all_in_1.html (图多杀猫预警)

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(3)
漫步者
漫步者
麻烦能否详细介绍下Wemos D1 Mini 这块开发板,使用和NodeMCU一样的程序可否?(除了引脚不同外)
漫步者
漫步者回复pATAq
非常 感谢 谢谢
yywudao
yywudao回复漫步者
D1 Mini与NodeMCU区别主要是
1、D1 MiNi板子上有5V和3.3V的电源输出引脚,NodeMCU只有3.3V的电源输出引脚
2、NodeMCU板子上有颗LED指示灯(不是ESP8266主芯片的那颗LED),有个FLASH按钮,这两样D1 MiNi板子上没有
3、D1 MiNi板子有配套的传感器扩展板,可以直接插上使用,避免了接线的麻烦。
共3条回复,已加载2条,点击查看更多共3条回复,已加载全部
nicho
nicho
pinMode(0,INPUT);不会干扰电平,所以才能直接用吧..
nicho
nicho回复pATAq
嗯嗯~
pATAq
pATAq
作者
回复nicho
你说这个?
“This code makes the Arduino not interfere with pins 0 and 1”
gada888
gada888
顶起来
- 没有更多了 -