stm32中的ISP一键下载原理分析
如果我们的开发板没有一键下载电路的话,我们下载程序时要把boot 0的跳冒从接GND变成接VCC,然后下载,按一下复位按键程序才能烧录,最后再把接VCC变成接GND,并且再按一下复位,这样单片机才能运行程序,每一次烧录程序都很麻烦。而当我们的单片机有了一键下载电路后,就不需要改变boot 0的值,直接烧录就可以运行。下面就我个人来分析一下一键下载电路。
- 三种工作模式
| BOOT 0 | BOOT 1 | 启动方式 |
| 0 | X | 内部FLASH |
| 1 | 0 | 系统存储器 |
| 1 | 1 | 内部SRAM |
- ISP一键下载电路
上面的图1是正点原子精英版的ISP一键下载原理图,图2是 mcuisp烧录软件。先看图2中我圈出来的序号1中的内容,DTR是低电平,RTS是高电平。再找到图1中对应点DTR#和RTS#,这里的DTR#和RTS#表示反向标志的的意思。因为我们的mcuisp软件使用的是232标准电平,而单片机是ttl电平,他们两者电平是相反的。所以原理图中DTR后面加了一个#表示我们CH340G芯片此时接收到的DTR是高电平(与我圈起来的序号1中的DTR低电平相反所以是高电平)。并不是说CH340G芯片会进行逻辑非运算,仅仅只是一个提醒标志而已。
- 一键下载的过程
首先,看我圈起来的序号1,mcuisp 控制 DTR 输出低电平,则 DTR_N 输出高,然后 RTS 置高,则 RTS_N输出低,这样原理图中三极管Q3 就导通了,BOOT 0 被拉高,此时三极管Q2 也会导通,STM32F1 的复位脚被拉低,即实现设置 BOOT 0 自动为1,并且复位键按下。单片机此时会重启并且进入ISP模式(也就是系统存储器模式)。进入ISP模式后,会锁存住BOOT 0的值(为1)。再看我圈起来的序号2中有一段信息,当我们点击开始编程后,mcuisp这个软件在延时100ms之后会自动令DTR变高,释放复位,RTS维持高电平不变。也就是说会让BOOT 0和RESET还原成原来的状态。当程序下载完成后,程序已经下载到内部FLASH了,需要按一下复位就会运行程序,如果不想手动按复位键,那么就可以勾选我圈起来的序号3,这样单片机就会自动复位运行。
- 总结
总结
以上是生活随笔为你收集整理的stm32中的ISP一键下载原理分析的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 广东高院驳回快播对深圳市场监管局2.6亿
- 下一篇: [react] 怎样在react中创建一