ESP8266 MicroPython环境下UART1的RX/TX引脚对应关系咨询
ESP8266 MicroPython 环境下UART1引脚对应关系
直接给明确结论:
- 官方标准MicroPython ESP8266固件中,UART1的默认可用引脚只有TX=GPIO2,RX对应的复用引脚为GPIO8,该引脚在绝大多数量产ESP8266开发板上直连板载外置Flash,没有对外引出,也无法作为普通串口引脚使用,强行配置会导致系统无法读取Flash、反复重启,因此默认初始化UART1时RX引脚为未启用状态(值为-1)。
- 网传的GPIO7、GPIO8对应UART1收发引脚的说法,来自ESP8266芯片裸片的datasheet全功能复用定义,这两个引脚和GPIO6、GPIO9、GPIO10、GPIO11同属Flash专用通信引脚,普通开发板不会开放给用户使用,仅在自行设计硬件、重新调整Flash接线的特殊场景下才有可能用到,日常开发完全不需要考虑。
你可以直接在开发板上运行以下代码自行验证默认引脚配置:
from machine import UART # 初始化UART1,波特率115200 uart1 = UART(1, 115200) # 打印串口实例信息,会直接输出当前绑定的TX、RX引脚号 print(uart1)
正常输出会类似如下内容,明确标注tx=2、rx=-1(RX未启用):
UART(1, baudrate=115200, bits=8, parity=None, stop=1, tx=2, rx=-1)
补充提示:如果需要全双工串口功能,优先使用UART0,对应引脚为TX=GPIO1、RX=GPIO3,注意使用时拔掉串口下载器即可避免冲突,不需要强行折腾不可用的UART1 RX引脚。
内容的提问来源于stack exchange,提问作者masterc ccc
相关产品推荐
相关产品推荐

