目录
一、UART
1、硬件选择
2、电路设计
3、IO分配
4、其他设计
二、RS232
1、硬件选择
2、电路设计
3、IO分配
4、其他设计
三、RS485
1、硬件选择
2、电路设计
3、IO分配
4、其他设计
四、ISP下载
一、UART
1、硬件选择
一般选择CH340完成STM32的IO电平与USB的转换。现在也出现了CP2102也不错。
2、电路设计
3、IO分配
TXD与RXD,选择UART的任意一组即可。记得最好不要和下面的共用了。
4、其他设计
如果串口不用频繁与电脑沟通,仅作为调试输出使用,则无需将UART设计到板卡上,通过引出UART引脚。
通过焊接排针以及杜邦线相连USB-TTL模块即可实现和电脑通信,缺点就是外挂线材容易接触不良等。
二、RS232
1、硬件选择
选择3232芯片,MAX SP等均可。
2、电路设计
3、IO分配
TXD与RXD,选择UART的任意一组即可。记得最好不要和下面的共用了。
4、其他设计
如果串口不用频繁与电脑沟通,仅作为调试输出使用,则无需将RS232设计到板卡上,通过引出UART引脚。
通过焊接排针以及杜邦线相连RS232-UART模块即可实现和电脑通信,缺点就是外挂线材容易接触不良等。
三、RS485
1、硬件选择
3485芯片,例如MAX SP等,
2、电路设计
3、IO分配
TXD与RXD,选择UART的任意一组即可。记得最好不要和下面的共用了。
4、其他设计
如果串口不用频繁与电脑沟通,仅作为调试输出使用,则无需将RS485设计到板卡上,通过引出UART引脚。
通过焊接排针以及杜邦线相连RS485-UART模块即可实现和电脑通信,缺点就是外挂线材容易接触不良等。
上述均为串口的通信,网上也具有通用模块,例如
四、ISP下载
几乎所有支持串口下载的MCU都可以通用电路,无非是RESET、BOOT0的IO分配不一样,例如ESP32也可以通过此类进行下载。
本质原理:
当我们让DTR为高电平,RTS为低电平,那么Q1三极管导通,所以EN的电平会被RTS的低电平拉低。此刻BOOT和EN的电平分别为1和0。
当我们让RTS为高电平,DTR为低电平,那么Q2导通,同理,BOOT会被DTR拉低,此刻BOOT和EN的电平分别为0和1。
通过这个自动下载电路,我们就可以通过控制DTR和RTS来控制BOOT和EN的电平情况了。
DTR | RTS | EN | BOOT |
0 | 0 | 1 | 1 |
0 | 1 | 1 | 0 |
1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 |