您当前的位置:JZ5U绿色下载站文章中心设计学院Photoshop → 文章内容
  • stm32 isp软件使用说明

STM32 主动ISP工具使用阐明:

1.本工具参阅意法半导体使用手册AN2060“STM32F101xx and STM32F103xx system memory boot mode”制造,STM32 ISP的发动办法以及相关指令在该手册中都有具体阐明;
2.本东西使用了HotComm串口组件的初级版别,终究解释权归hotpower一切;
3.使用本东西不需要手动复位操作或手动调理boot1和boot0的状况,因而需要对电路进行相应改造:《若要进入STM32 ISP状况,有必要使 boot0 = 1 boot1 = 0,并使体系从头复位》
本东西在Embest和力源的开发板进步行了测验,改造步骤以这两块板为例,咱们使用串口的DTR信号来操作STM32芯片的复位,使用RTS信号完成对boot0的操作(boot1一直置低电平!);因为DTR/RTS是232电平,即-15V~+15V, 一般在+-10V左右,所以需要对电平进行转化,能够使用max3232之类的芯片或许直接用二极管加电阻的办法;


以下是hotpower在21ic论坛里的一些阐明,这儿引证一下:
仔细分析STM32ISP的数据流向,能够找到很规则的联系。
不外乎你攻我守,你守我攻。
但假如攻守失衡,必定带来死机的成果~~~
现在做到的是怎样摆脱死机(死锁)???---只要Reset!!!
现在看到主动ISP的优点和威力了吧---不怕死,就怕死了救不活!!!
主动ISP电路很简单,俺和小朋友先在EK...忘了板名和厂家了~~~便是那个199的~~~
LPCARM选用DTR->Reset,RTS->ISP. 所以俺就抄袭这个风俗吧~~~希望NXP的大鼻子别告俺~~~
因为DTR/RTS是232电平,即-15V~+15V, 一般在+-10V左右。
一般选用ST3232芯片完成232/TTL电平转化,也可用二极管、三极管
但要留意电平的钳位及限流问题。
ST3232内部有2入2出。
而作为主机,信号方向有3出1入.
即TX(STM32的RXD),DTR(RST),RTS(BOOT0)为输出信号, RX(STM32的TXD)为输入信号.
RS232芯片一般只衔接RXD/TXD这2个信号,故还剩1入1出未用.
将DTR接入RS232电平转化芯片,那么STM32的RST就得到了正常的电平操控。
考虑硬件存在线与问题,故:RS232的TTL输出加一只二极管D1到RST.
再考虑Boot0的衔接问题:
因为RTS是232的+-10V,那么必定不能直接和Boot0衔接。
因为Boot0咱们能够把它成果100K电阻(厂家标示)上拉至VCC.(STM32的运转状况)
所以咱们只需在Boot0上施加低电平即可设定ISP形式.
故可用二极管D2单向取-10V即可,考虑STM32不能接受负电压,故可在接二极管D3到地GND(VSS)
来将RTS钳位在-0.7V.
因为D3的钳位导致了RTS信号过流,故有必要用串接10K左右的电阻R1来限流。
到此主动ISP硬件电路的改造步骤以支付D1,D2,D3和R1的“价值”轻松搞定~~~
若搞产品可持续:在Boot0端再串接二极管D4来消除D3钳位形成的负压-0.7V.
在Boot0,RST上各接102(或103,104)电容避免信号误触发.
一般DTR/RTS未接PC时都为-10V左右,所以拔掉也不能影响STM32的正常作业.
因为RS232内部实践为反向器,故:
DTR = -10V时RS232输出高电平到RST,即STM32正常运转状况.
RTS = -10V时经过二极管的单向导电特性,Boot0为0进入ISP状况.
可是留意: 假如PC未介入,RTS上不会有电压信号,故Boot0仍然为1
所以RTS的作业重点仅仅怎样拉低Boot0上的电压!!!
若无PC谈何拉低Boot0???
所以PC脱机后该电路也不会影响STM32的原作业状况的~~~
相反PC ISP完成后(倘若还在ISP状况)再脱机,STM32会主动回到运转状况~~~
这-----便是主动ISP的"真理"地点~~~”
<-------------------------------------分割线--------------------------------------------->
4.关于本东西的使用:
根本没有太多要说的,打开本软件并衔接好板子后,点击“衔接设备”即可,程序会主动完成对芯片相关信息的读取,假如线路有问题则会报错。串口调试软件的使用和其他同类东西类似,这儿就不多烦琐了。

我是在板子上留VCC、RX、TX、GND四针插口,经过RS232适配器与电脑衔接,所以板子上MAX232的芯片和DB9的插座都省了,移到RS232适配器上了,我做了几个适配器,发现ISP成功与否好像与ISP程序与适配器硬件的调配联系极大,我这几个适配器在与AVR芯片通讯是都没有一点问题,可是用在STM32的ISP上表现就各不相同了,相同的条件下,或许A适配器能很好的在力源的ISP程序下作业,却不能在ST的ISP程序下作业,而B适配器能很好的在ST的ISP程序下作业,却不能在力源的ISP程序下作业,把万利和MXCHIP板子上的232适配器信号引出来用成果也类似,能否与ISP程序合作好用好像是在掷骰子相同找不出规则,还有ISP时挑选通讯波特率也有联系,我的一个适配器在ST的ISP程序下用57600时怎样也连不上,用115200后就很好用了,别的ISP与软(USB转的)硬COM口、芯片自身好像联系都不大。


  • 作者:互联网  来源:本站整理  发布时间:2019-11-18 09:52:44


------------------------------- · 相关文档浏览 · --------------------------------------------------------------------- · 热门文档浏览 · -------------------------------------