野火stm32f103的mcuisp设置与一键ISP下载原理分析总结

最近学习STM32遇到的一键ISP下载原理与MCUISP下载等问题总结:

1、mcuisp是stm32串口下载软件,在载入程序时,需要进行如下图所示操作:

其中注意设置第四步DTR低电平复位,RTS高电平进bootloader(mcuisp采用的RS-232电平逻辑,即负逻辑电平

2、ISP下载原理

ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 这里ISP就是通过单片机专用的编程接口(一般是串口)对单片机内部的Flash存储器进行在线编程。

ISP又分为普通ISP和一键ISP

STM32有三种启动方式,通过配置boot引脚不同电平即可设置不同启动方式,如下图

原理图如上图所示,ISP模式即要把BOOT0,BOOT1设置为1、0;BOOT1在板子默认为0,要想把BOOT0设置为0,三极管8550必须要导通,此处可理解为就是8550箭头方向PN结要导通,即RTS为低电平时导通,BOOT0引脚连接了10k电阻,所以BOOT0输出高电平1;此时进入ISP模式,对于普通ISP此时需要手动复位,这个电路是一键ISP电路自动复位,复位电路NRST引脚默认为高电平,stm32复位是低电平复位,所以一键下载电路中8050要导通,即同理按箭头PN结方向DTR输入为高电平,U18为模拟开关1脚2脚在使能状态下为导通状态,所以8050导通,NRST就被拉到与RST一样的电平,使系统重新进入ISP模式,此时boot状态被锁存了,然后通过上位机自动控制RTS和DTR引脚使BOOT0和NRST还原成原来的状态即BOOT0为0,NRST为1;重新进入ISP是为了实现从系统存储器启动BootLoader,BootLoader程序ST自带的引导程序,通过BootLoader将程序从串口下载到Flash中;这样程序实际上是通过串口最终下载到了FLASH中,程序从flash启动。其中DTR和RST与CH340连接,CH340是USB转TTL逻辑电平片,DTR与RTS电平由mcuisp上位机提供,这里有一个问题,mcuisp中设置DTR为低电平和RST为高电平与这里原理中的电平刚好相反,这是因为mcuisp是用的RS-232电平,这与TTL电平刚好相反,之前也一直纠结这个地方。加模拟开关是为了避免反复复位进入ISP模式,在刚上电时,系统电平不稳定,所以加模拟开关,通过延迟使能引脚EN使能时间,加入了RC充电电路,EN高电平复位,一般TTL大于2V认为是高电平,所以通过电容充电时间延迟EN到达高电平时间,跳过系统电平不稳定时间,避免重复复位。

最后如果有理解不准确错误的地方希望大家能多多指正。

  • 18
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 野火STM32F103开发板是一款基于STM32F103C8T6微控制器的开发板,其原理图用于描述开发板上各元器件的连接关系和工作原理原理图通常包括主控芯片、外设模块、电源模块和外部接口等几个主要部分。 首先,原理图中的主控芯片是STM32F103C8T6微控制器,该芯片是基于ARM Cortex-M3内核的32位微控制器,具有丰富的外设资源和强大的处理性能。它是整个开发板的核心部分,负责执行用户程序的运行和控制各个外设模块的工作。 其次,原理图中的外设模块包括串口模块、蜂鸣器模块、LCD模块、按键模块等,这些外设模块可以为开发者提供丰富的功能扩展和实验环境。串口模块可以实现与PC机的通信,蜂鸣器模块可以产生声音提示,LCD模块可以显示图形和文字,按键模块可以进行各种输入操作等。 此外,原理图中还包括电源模块,用于为整个开发板提供稳定的电源。电源模块通常由直流电源和稳压电路组成,可以将外部电源经过稳压电路稳定在正常工作电压范围内,以保障各个电子元器件的正常工作。 最后,在原理图中还可以看到一些外部接口,例如USB接口、SD卡接口、JTAG接口和蓝牙接口等。这些接口可以方便开发者连接外部设备和扩展模块,实现更多功能和应用需求。 综上所述,野火STM32F103开发板的原理图是用于描述开发板上各个模块和电路的连接关系和工作原理的图纸,通过原理图可以清晰地了解开发板的硬件构造和工作方式,为开发者提供便利,以便开展相应的嵌入式软件开发和实验。 ### 回答2: 野火STM32F103开发板的原理图是一种用于STM32F103系列微控制器的硬件设计图纸。原理图描述了开发板上各个组件和元件的连接方式和电气联系。通过原理图,我们可以清晰地了解开发板的电路结构和设计。 在野火STM32F103开发板的原理图中,主要包括微控制器、外部时钟源、电源管理电路、各种外设和连接接口等。微控制器是整个系统的核心部件,它执行程序逻辑并控制外部设备的操作。外部时钟源提供系统时钟,确保微控制器运行的稳定性和准确性。电源管理电路用于稳定供电,保护各个电路模块的工作。 开发板上还包括了一些常见的外设模块,例如LED指示灯、按键、LCD显示屏、EEPROM等,这些外设可以用来进行功能拓展和开发实验。此外,开发板上还提供了多种连接接口,如USB接口、串口接口、I2C接口、SPI接口等,方便与外部设备和计算机进行通信。 通过查阅野火STM32F103开发板的原理图,我们可以了解到开发板上各个模块的电路连接方式、电源电压、信号引脚定义等信息,这对于开发者进行硬件调试和二次开发非常重要。同时,原理图也可以作为学习STM32F103微控制器硬件设计的参考,帮助我们更好地理解和掌握STM32F103系列微控制器的工作原理和应用。 ### 回答3: 野火STM32F103开发板是一款基于STM32F103C8T6芯片的开发板,原理图详细描述了板上各个元件之间的连接关系和电路设计。 在原理图中,首先可以看到STM32F103C8T6芯片,它是开发板的核心部分,负责处理器与外设之间的通信和控制。接下来,原理图详细展示了芯片的引脚连接,如电源引脚、GPIO引脚、串口引脚等,这些引脚将与开发板上的外部元件进行连接。 原理图还展示了开发板上的其他外设,如LED灯、按键、连接器等。这些外设的连接方式和接口也在原理图中详细标注,包括其引脚的连接关系和电路设计。 此外, 原理图还包括了电源电路的设计,包括稳压器、电容器等,用于提供稳定的电源供应给开发板和芯片。 通过查看原理图,我们可以了解到开发板上各个元件之间的连接方式和电路设计,从而更好地理解和使用开发板。同时,原理图也方便用户在开发过程中进行扩展,可以根据需求进行电路的调整和改进。 总之,野火STM32F103开发板原理图是设计者根据电路连接原则和外设要求设计的一张图纸,能够清晰展示出开发板上各个元件之间的连接关系和电路设计。通过查看和理解原理图,用户能够更好地使用这款开发板进行STM32F103C8T6芯片的开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值