在做串口实验时,一直搞不明白一键下载是怎么回事于是自己就去捉摸CH340G这块芯片,那么这里我将详细的讲解一下这块芯片怎么与stm32配合使用的
1、由CH340Gch340g芯片资料料可以知道这两个引脚的功能都为输出
RTS#:信号输出,初始状态為高电平表示芯片接收数据已经准备就绪,下载程序时会变成低电平
DTR#:信号输出,初始状态为高电平下载程序时会变成低电平(但昰,是在RTS变为低电平之后才为低)
根据BOOT参考资料的配置可知
可以先把BOOT1直接接地,单独控制BOOT0来调节启动模式;
当BOOT0为低电平时系统执行flash中嘚代码,当BOOT0为高时可用串口下载程序到flash(且系统必须复位才可以)
当程序下载完成后CH340G的引脚RTS、DTR都变为高电平,使得BOOT0恢复原来的低电平状態之后系统开始读取存储器flash的地址的程序,执行代码
3、下面由通过这张图来说明电路设计的思路
上电;首先BOOT1接地先。BOOT0下拉10K电阻保证開始为低电平(在stm32f103板子上电的时候,保证能直接读取flash中的程序)且RTS、DTR都为高,所以BOOT0初始为低电平reset初始为高电平(低有效),那么重点來了
后BOOT0自动恢复到低电平读取flash的状态,或者可手动复位stm32就可以执行flash中下好的程序了。
这里需要说明一点BOOT0非常敏感在下载程序时仅仅需要一点点时间的高电平就可以下载程序,且不需要保持到下载程序结束。
发布了21 篇原创文章 · 获赞 13 · 访问量 4万+