zoukankan      html  css  js  c++  java
  • 正点原子stm32f103mini版串口下载BOOT0引脚与与CH340G芯片引脚RTS、DTR、的关系原理

            在做串口实验时,一直搞不明白一键下载是怎么回事,于是自己就去捉摸CH340G这块芯片,那么这里我将详细的讲解一下这块芯片怎么与stm32配合使用的。

    1、由CH340G芯片资料可以知道这两个引脚的功能都为输出

    RTS#:信号输出,初始状态为高电平,表示芯片接收数据已经准备就绪,下载程序时会变成低电平。

    DTR#:信号输出,初始状态为高电平,下载程序时会变成低电平(但是,是在RTS变为低电平之后才为低)。

    2、stm32BOOT

    根据BOOT参考资料的配置可知


    可以先把BOOT1直接接地,单独控制BOOT0来调节启动模式;

    当BOOT0为低电平时,系统执行flash中的代码,当BOOT0为高时,可用串口下载程序到flash(且系统必须复位才可以)

    当程序下载完成后CH340G的引脚RTS、DTR都变为高电平,使得BOOT0恢复原来的低电平状态,之后系统开始读取存储器flash的地址的程序,执行代码。

    3、下面由通过这张图来说明电路设计的思路




    上电;首先BOOT1接地先。BOOT0下拉10K电阻,保证开始为低电平(在stm32f103板子上电的时候,保证能直接读取flash中的程序),且RTS、DTR都为高,所以BOOT0初始为低电平,reset初始为高电平(低有效),那么重点来了。

            当串口开始传输数据前(打开串口软件时mcu),”DTR为高,RTS为低“,这样图中Q1导通reset为低开始复位,Q2导通BOOT0变为高,开始写程序准备。之后DTR变为低,复位结束,开始写程序。写完 后BOOT0自动恢复到低电平读取flash的状态,或者可手动复位。stm32就可以执行flash中下好的程序了。

            这里需要说明一点BOOT0非常敏感,在下载程序时仅仅需要一点点时间的高电平就可以下载程序,,且不需要保持到下载程序结束。



  • 相关阅读:
    hadoop测试题目每天5题,总35题,第一天
    hadoop测试题目每天5题,总35题,第四天
    hadoop测试题目每天5题,总35题,第五天
    SP_EXECUTESQL 的用法
    元数据函数的使用 快速定位数据相关过程,表,函数
    javascript 層的拖動
    如何求得一个月的最后一个工作日
    利用ASP.NET实现分页管理器(高级篇)轉
    Asp.Net页面输出到EXCEL
    .net相关专题汇总
  • 原文地址:https://www.cnblogs.com/wandashuai/p/10741071.html
Copyright © 2011-2022 走看看