kkstun
发表于 2025-2-6 12:52:22
ahong 发表于 2025-1-22 11:41
不需要重写逻辑,只需要RTS和DTR设为开漏,RTS控制目标RST,DTR控制目标IO0,不需要两个三极管 ...
其实最初的电路确实是rts和dtr直接接的en和io0,只是因为有部分串口程序自动打开了硬件flow control,导致默认rts被拉低,esp会一直保持在复位状态。 所以两个二极管电路是最可靠。这里有国外友人的研究。https://www.esp32.com/viewtopic.php?t=5731#p24882
zzjsql
发表于 2025-4-19 08:59:25
ahong 发表于 2025-1-22 11:41
不需要重写逻辑,只需要RTS和DTR设为开漏,RTS控制目标RST,DTR控制目标IO0,不需要两个三极管 ...
高手
wx85105157
发表于 2025-6-12 23:03:00
kkstun 发表于 2025-2-6 12:52
其实最初的电路确实是rts和dtr直接接的en和io0,只是因为有部分串口程序自动打开了硬件flow control,导 ...
可以在这段代码里面按照自动变成的表来写io控制,就可以直连省三极管。
避免流控复位单片机了。
Interface = Setup.wIndexL;
if (Interface == 0)
{
P15=!(Setup.wValueL&0x01);//DTR1
P13=!(Setup.wValueL&0x02);//RTS1
}
else if (Interface == 2)
{
P14=!(Setup.wValueL&0x01);//DTR2
P34=!(Setup.wValueL&0x02);//RTS2
}
Auto Program自动程序
DTR RTS -> EN IO0
1 1 1 1
0 0 1 1
1 0 0 1
0 1 1 0