STM32学习记录ISP一键下载电路

1. ISP的基本简介

ISP概念:ISP(In System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程。

ISP下载的操作:ISP通过芯片内部的自举程序(即Bootloader,由芯片厂家烧写好,不得更改)来选定一种串行的外设,对芯片内部的FLASH进行编程。

常用的ISP下载方式:最常用的ISP方式就是通过串口下载,最主要的优点就是成本低,缺点是只能用于下载程序,不能硬件仿真。

普通ISP和一键下载ISP对比:普通ISP在下载程序的时候需要手动配置BOOT的启动方式,而一键ISP则通过独特的硬件电路和上位机配合使用来达到一键下载的功能。

2. ISP一键下载电路原理

要了解ISP下载,首先了解BOOT的启动方式

STM32上电后的BOOT1/0的电平状态会决定它的运行模式。很明显,我们如果上电后要进入自己写的程序并运行,那么BOOT0就要为0,BOOT1此时高低无所谓;而要进入下载模式就需要BOOT0为1而BOOT1为0;为此我们可以在电路上先将BOOT1直接拉低,然后单纯控制BOOT0。

 从外部下载程序的过程就可以表示为以下四个步骤:

        (1)改变BOOT0引脚的电平       0→1

        (2)复位(重新读取BOOT0、BOOT1的电平情况)

        (3)恢复BOOT0的电平             1→0

        (4)复位  (重新读取BOOT0、BOOT1的电平情况)
 如果从外部引脚方面切换跳帽会使得下载程序的过程过于繁琐,因此有如下的一键下载电路,电路如下图所示。

ISP一键下载具体过程如下:

 1. 电路工作时先通过上位机使RTS输出低电平,从而导通S8550,BOOT0经上拉电阻得到高电平。
2. C65充电至1.8V后,使能74HC1G66GW的EN引脚,导通1和2脚,并通过上位机给DTR置高电平,导通S8050,形成将NRST接低电平的通路,复位完成。
3. 通过上位机控制RTS和DTR恢复状态,关断两个晶体管,BOOT0状态恢复。
4. 下载程序完毕后,程序自动开始运行,该步骤由上位机软件完成。
 

3.上位机设置

特别注意的是:在软件中选择“DTR的低电平复位,RST高电平进BootLoader

为什么特意强调“在软件中”呢?这里需要特别注意,实际上上位机需要给出的信号是“RTS低电平进入BootLoader,DTR高电平进入复位”。但由于开发板和烧录软件的电平标准相反,所以设置时也恰好相反。烧录软件的电平标准为232标准,开发板的电平标准为TTL标准,具体如下:

232标准 (mcuisp软件的电平标准):
逻辑1:-3~-15V         低电平
逻辑0:+3~+15V       高电平
TTL标准(开发板的电平标准):
逻辑1:3.3V              高电平
逻辑0:0V                 低电平
 

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值