CH340下载程序时DTR和RTS的电平变化分析

CH340下载程序时DTR和RTS的电平变化分析


  • ✨本文仅针对STC-ISP上位机软件下载时,DTR和RTS引脚的电平信号的变化予以说明。其他串口下载烧录软件不在讨论范围内。

*🌿 逻辑分析仪捕捉到的DTR和RTS引脚整个下载过程的电平变化。
在这里插入图片描述

下载和电平变化顺序

  1. 当按下下载按钮时,DTR引脚先被拉低,然后紧跟着RTS也被拉低。
    在这里插入图片描述

间隔时间:
在这里插入图片描述

  1. 一直到程序下载完,然后电平再拉高。
  • DTR拉低的时间,这个时间和程序下载波特率和程序大小有关系。
    在这里插入图片描述
  • RTS拉低的时间,这个时间和程序下载波特率和程序大小有关系。
    在这里插入图片描述
  1. 程序下载结束后,DTR先拉高,然后就是RTS拉高。
    在这里插入图片描述

DTR引脚和RTS引脚作为下载时的MODEM联络输出信号

在这里插入图片描述

总结整个下载过程:

  1. 当没有下载的时候,DTR和RTS为高电平。
  2. 当打开串口时间或下载程序的时候,DTR和RTS为低电平。

自动下载器就是根据DTR和RTS任意一个引脚信号跳变的原理实现给单片机复位和冷启动,从而实现免手动去复位单片机,从而实现自动下载的目的。对于使用自动下载器作为串口通讯时为什么不会触发电平,因为没有对应的联络信号指令,所以不会触发DTR和RTS动作。

  • 25
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
要在Python中设置DTRRTS,您可以使用pyserial库。该库提供了Serial类,可以用于与串口进行通信,并且可以设置DTRRTS线的状态。要设置DTRRTS的状态,您可以将相应的参数设置为True或False。例如,要设置DTR为高电平并设置RTS为低电平,您可以使用以下代码: import serial # 打开串口 ser = serial.Serial('/dev/ttyUSB0', 115200) # 设置DTRRTS ser.setDTR(True) ser.setRTS(False) # 关闭串口 ser.close() 通过将相应的参数设置为True或False,您可以在Python中设置DTRRTS线的状态。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [kiengremsy:stm32flash_bootloader_dtr_rts](https://download.csdn.net/download/weixin_42131367/15845027)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [python实现CH340串口通信(超详细)](https://blog.csdn.net/qq_20550447/article/details/108304841)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值