很多时候,我们并不想通过专用的下载器来给单片机烧录程序,而是希望通过串口来给单片机下载程序。下面以IAP下载时的情况为例。
利用CH340G实现程序的下载时,我们往往会遇到这样一个问题,那就是每次下载时都需要手动复位,非常麻烦,尤其是当板子离操作者有一定距离时。也有人遇到无法正常下载的情况。下面我给出一种解决方案。

图为给AVR单片机一键下载用的电路。在TXD引脚串联一个二极管是为了防止CH340G给单片机供电而使单片机不能正常断电,从而导致程序下载失败。网络标号PE0连接的是单片机的RXD。这里着重说一下DTR引脚通过一个10uF的电容连接到单片机RESET的作用。

当不加电容时或加的电容很小时(如0.1uF):
CH340G的RTS,DTR,DCD,RI,SDR,CTS都是MODEM联络信号。我没学过通信,对此一点也不了解。但是,这些引脚的电平变化肯定是有规律的,于是我用示波器测试了下载时DTR引脚电平变化情况,结果如下:

我的单片机下载bootloader后,第一次IAP下载是不需要手动复位的,第二次开始每次都要手动复位才能正常下载,原因未知。上图为第一次下载时DTR引脚的波形。在开始下载的一瞬间,波形出现一个负脉冲,并在持续一小段高电平后保持为低电平,同时程序开始下载,下载完成后DTR电平回到高电平。
下面再说说第二次下载而不手动复位时的情况。我没有截图,这里就直接描述了。从开始下载时刻起,DTR从高电平跳变为低电平并一直保持下去,等待单片机复位。如果你及时按下了复位键,程序将正常下载。如果你错过了时机,之后再按复位键,程序也不会正常下载。

所以我们现在的目标是,在下载的时间点,让单片机自动复位。故我们引入了10uF电容。电容对于上升沿和下降沿来说,由于充电需要时间,在跳变的瞬间相当于导线,而在充满电后相当于断路。电感和他相反。充电时间由时间常数决定,电容的时间常数为RC,R这里基本是固定不变的(导线及芯片内部电阻),故我们可以通过改变C来改变充电时间,从而改变低电平的时间。我的单片机是低电平复位。在下载一瞬间,DTR为低电平,VCC开始给电容充电(单片机正常工作室reset脚接的就是VCC),RESET脚的电压将随着电容充电的程度而改变。我们希望这个电压维持在低电平范围内的时间能足够大,使得单片机能完成复位。故我们希望充电时间能足够长,于是我们选择较大的电容。考虑到单片机的复位电路常用的电容就是10uF,这里我们选择10uF电容,如果还不行的话就选择更大的电容。加了10uF电容后,单片机实现了一键下载,不需要手动复位,RESET脚波形如下:

充电过程很明显,不过下载完毕后出现了一个高达8v的正脉冲,原因未知,没有对下载造成影响。

基于CH340G的一键下载相关推荐

  1. 基于CH340的一键下载电路

    阅读目录 一.CH340简介 二.CH340G在Arduino上的下载电路应用 三.CH340G在STM32上的下载电路应用 四.CH340驱动程序下载 回到顶部 一.CH340简介 CH340 是一 ...

  2. 基于CentOS7系统一键配置Aria2 实现服务器离线下载工具

    我们有些网友购买的海外VPS主机并不是用来做网站的,而是用来作为下载资源工具使用的.确实用这样的工具搭建之后是比本地下载速度快,因为有些资源.软件等是海外资源,而且挂载在服务器上不占用本地的资源.在这 ...

  3. CH340在STM32实现一键下载电路的理解

    转自http://www.cnblogs.com/einstein-2014731/p/4885300.html 在做基于STM32的多功能MP3播放器的课题时,在程序下载这部分时借鉴了正点原子开发板 ...

  4. 【STM32】关于BOOT引脚和一键下载电路下载的一些事

    文章目录 前言 1.BOOT0和BOOT1的作用 2.一键下载电路 2.1.洋桃1号开发板 2.2.正点原子战舰版 参考资料 前言   之前在STM32的程序下载方面一直不求甚解,现在是时候回来仔细研 ...

  5. 刘德华开抖音了,一键下载华仔所有无水印视频

    苏生不惑第229 篇原创文章,将本公众号设为星标,第一时间看最新文章. 不老男人刘德华最近开通抖音了,我也是在微博上看到才发现的,为了看他的抖音我再次下载了抖音APP(如果有网站就好了,上次也是为了写 ...

  6. ESP8266_21基于ESP8266的一键配网

    ESP8266_01搭建开发环境 ESP8266_02程序的编译与下载 ESP8266_03SDK与Makefile的基本用法 ESP8266_04管脚控制与软件定时器 ESP8266_05 ESP8 ...

  7. 免外围电路ESP32/ESP8266系列单片机串口一键下载方案

    一.概述 CH340X.CH343.CH342等USB转串口芯片支持免外围电路ESP32/ESP8266等单片机串口一键下载功能,对此类支持多模式启动的单片机,无需外围三极管等逻辑控制电路,将芯片提供 ...

  8. 免外围电路CH32F/CH32V/STM32F系列单片机串口一键下载方案(CH340)

    一.概述 CH340X和CH340C等USB转串口芯片提供专用下载模式,可实现免外围电路CH32F/CH32V/STM32F等单片机串口一键下载功能,对此类支持多模式启动的单片机,无需外围三极管等逻辑 ...

  9. ESP01S CH340 一键下载电路设计

    ESP01S BOOT 选择 从图中可以看到,只要在下载模式将 GPIO0 拉低,运行模式拉高就可以实现一键下载. 对于 CH340G 这款 USB 转串口,可以利用 DTR 在下载程序是为低电平,程 ...

最新文章

  1. php面向对象静态常量,浅谈PHP面向对象编程(四、类常量和静态成员)
  2. 微软年度研究大盘点:ML突破将到来,人机交互更真实,惜别沈向洋
  3. GP通过外部表装载数据时遇到ERROR:extra data after last expected column解决方法
  4. 再次分享一个多选文件上传方案“.NET研究”
  5. 【LeetCode从零单排】No15 3Sum
  6. zigbee 初识zigbee,ieee802,论坛
  7. 逻辑漏洞小结之SRC篇
  8. Element Select多选选中项溢出选项框
  9. vue实现侧边折叠菜单栏手风琴效果
  10. STL sector 应用
  11. 训练日志 2018.12.26
  12. 【算法导论】第24章迪杰斯特拉算法
  13. python有哪些好的学习资料或者博客
  14. JavaWeb — 请求响应流程图
  15. 服务器lsass系统错误,电脑开机提示lsass.exe系统错误,安全帐户管理器初始化失败该怎么办?...
  16. Camera Tuning-高通平台总结
  17. Ubuntu调整缩放
  18. Python一些常用的网站
  19. linux 蓝牙打印机
  20. mysql时间相减得到天数保留两位_[转]Mysql日期函数-日期相减返回天数

热门文章

  1. 信息管理毕设项目推荐
  2. GandCrab v2.0 勒索病毒分析
  3. Github每日Rank推荐:网易云音乐API
  4. python关系图谱_python 绘制三国人物关系图
  5. DApp 很热,DApp 很弱,DApp 怎么办?
  6. Group_concat()函数使用介绍
  7. 同样line-height下ios和Android显示不一致的问题
  8. VIM 的 commentary 插件
  9. Teamcity NuGet Installer
  10. LINE FRIENDS举办“为布朗熊庆生”系列主题活动