历史上的今天
返回首页

历史上的今天

今天是:2024年09月17日(星期二)

2021年09月17日 | 原子的串口ISP一键下载研究

2021-09-17 来源:eefocus

把我弄晕了,CH340的DTR和RTS。。。


原子的原ISP一键下载图:


这里写图片描述

《STM32F1开发指南-库函数版本_V3.1 》中对下载电路的解释:

这里写图片描述

更直观的解释应该上张图:

这里写图片描述

总而言之,就是对BOOT0和BOOT1的赋值,为了简化电路,把BOOT1下拉到地,只需要控制BOOT0即可。


有个问题,不容忽视,复位完之后,进入ISP下载程序,下载完之后,并没有再用上位机控制BOOT0,反而也可以直接执行程序。


网上有人这样解释,

这里写图片描述

说实话不太能懂。


下载完之后,两个三极管断开,BOOT0,BOOT1全部被硬件上的电阻拉低,然后自动进入了运行模式?!~


附一张今天刚列的直观理解图,注意了,刚看的时候,一直有个误区,我以为DTR和RTS的变化是自动的,但是实际上是可以由上位机控制的!

这里写图片描述

但是参考《STM32库开发实战指南》P15页,有提到:


“单片机上电瞬间,CH340的DTR和RTS引脚是变化的。”


那刚上电的时候,CH340DTR和RTS的输出电平是什么样的呢?


这个还没实测过,但是看这本书里介绍,“当RTS为低电平的时候,DTR也是低电平”,那也意味着,会处于ISP的边缘,它离ISP只差一个复位脉冲。这两个IO还存在竞争冒险,也有可能出现一个RST的复位情况,此时也会进入ISP模式,但是想着,稳定后RTS和DTR都为高,又定会从程序开始执行。而我们软件控制肯定是等电平稳定之后。似乎这样分析起来没毛病,但是实践才是检验真理的唯一标准。


后期补上DTR和RTS的上电瞬间实测信号,这个应该多测几遍,避免偶然性。(说给自己听)


当然,直观上想避免这种上电的意外不可控情况,我们不想碰到,可以把它给隔过去,如何隔呢?延时。


不然DTR和RTS的变化影响到系统复位,换句话来讲就是,复位在1s后再受ch340的变化为变化不就可以了呢!


具体方案也有很多了,延时电路。。。。


参考资料


1、http://www.openedv.com/forum-2-1.html


2、http://www.cnblogs.com/einstein-2014731/p/4885300.html


3、《STM32F1开发指南-库函数版本_V3.1 》

推荐阅读

史海拾趣

Advanced Semiconductor, Inc.公司的发展小趣事

为了进一步扩大市场份额,ASI积极寻求与全球各大电子企业的合作。通过与这些企业的战略合作,ASI不仅获得了更多的订单和市场份额,还进一步提升了自身的技术水平和创新能力。同时,ASI也积极参与国际半导体行业的交流和合作,与全球同行共同推动半导体技术的发展。

Consolidated Wire公司的发展小趣事

面对不断变化的市场需求和技术趋势,Consolidated Wire公司始终保持创新精神。公司不断研发新产品、新技术,满足客户的多样化需求。同时,公司还注重与其他行业的合作与交流,通过跨界合作推动产品创新和技术升级。这种创新驱动的发展模式使得Consolidated Wire公司能够持续保持竞争优势,实现持续稳健的发展。

Arduino公司的发展小趣事

随着Arduino电路板的成功推出,Arduino平台在2005年发布了第一款主板——Arduino NG。这款主板采用了Atmel公司的AVR单片机作为核心处理器,并结合了简单易用的开发环境。这一创新使得普通人也能够轻松地进行单片机编程和硬件开发,大大降低了电子制作的门槛。Arduino NG的发布标志着Arduino平台开始受到开发者和爱好者的广泛关注。

法思特(FAST)公司的发展小趣事
定期对控制电路进行检查和维护,确保各元件性能良好、连接可靠。
Amprobe公司的发展小趣事
在操作过程中应遵守相关安全规定,确保人员和设备的安全。
晶群科技(Gem-micro)公司的发展小趣事
有序启动可以确保每个热水器都有足够的时间来加热和稳定水温,从而保证水温的均匀性。

问答坊 | AI 解惑

汽车电子面临的挑战

挑战一 新的传感需求 两项即将引入的传感器技术是雷达和摄像机系统。飞思卡尔对这两种技术的研究包括传感器和相应的计算机信号处理部分,目前的技术可以让成本减少4倍。没有哪种传感器是万能的,例如雷达可以精确测距,却无法进行物体识别,必 ...…

查看全部问答>

在发个4AD的,原理图需要的请回帖我在上传

这个板子采用了STC的2052AD,可以支持8路8位分辨率的AD输入,我设计的这个用了其中4路,其他的IO口作为现实和驱动继电器用,支持1路继电器输出,4位数码管,1路报警蜂鸣器,所有单片机的引脚全部引出可以为外部扩展使用。…

查看全部问答>

电子工程师:改变了人们的生活体验,却降低了自己的社会地位

娱乐界的颁奖晚会、红地毯炒的沸沸扬扬,吸引N多媒体的目光,而为什么没有专门为科学家和工程师举办多一些这种活动? 美国《纽约时报》专栏作家Thomas L. Friedman提出建议,认为应该大力宣传像是“英特尔科学奖”颁奖晚会这样的活动,让其现场 ...…

查看全部问答>

TD-SCDMA模块网速测试的疑问

    我想用中国移动的TD-SCDMA模块传输视频,开发板是ARM平台。ARM将视频采集压缩之后通过USB口传给TD模块,现在正确配置之后,能成功拨号并传输视频。     但是,目前传输效果很差,分辨率为352*288的CIF格式视频每秒只能传 ...…

查看全部问答>

128x64液晶KS0108驱动程序

里面少几个 #include \".\\inc\\ASCII816.h\" //标准ASCII库 #include \".\\inc\\HZTable.h\" //汉字点阵库(自做) #include \".\\inc\\Menu.h\" //菜单库(自做) 这些文件我去那里找,怎么做请高手回答…

查看全部问答>

请教大虾。。。基于s3c2440的wince下的GPS接收系统

小弟目前正在做毕业设计,题目rt。 ============================================================ 目前硬件已经搭建了,rs232 gps模块+mini2440开发板,在wince 5.0下用串口调试助手和GPSViewer等软件调试过,可以收到6颗星左右,功能还行。 = ...…

查看全部问答>

(公司项目笔记及源码) QTOpia最新版本及Linux内核的arm移植

http://item.taobao.com/auction/item_detail.jhtml?x_id=0db2&item_id=fc0e4ae6d2507c66f0782f153aa43d4e…

查看全部问答>

evc模拟器恢复到最初的状态

不知道动了什么东东,我在模拟器的startup中加了些文件并保存了改变,然后在evc中重新编译程序,就发现再也连接不上模拟器了,不知道怎么恢复到先前的状态,重装模拟器问题依然存在,请各位英雄帮帮忙?谢谢…

查看全部问答>

指令周期和存储周期的关系

指令周期和存储周期的关系?…

查看全部问答>

求助:EVC的安装问题

我装的是evc4套件,顺序是:activesync--evc4--sp4--pocketpc2003.能装上,能打开编程环境和运行仿真器,可就是不能把程序下载到仿真器上运行,老是超时,提示:download failed.安装和运行时防火墙全是关闭的。总是出现这样的问题,不知道是怎么回事, ...…

查看全部问答>