历史上的今天
今天是:2024年08月22日(星期四)
2018年08月22日 | stm32下载方式之串口ISP\swd(JLink)
2018-08-22 来源:eefocus
1.首先看一下stm32启动模式
stm32的启动模式由32芯片的boot0与boot1引脚决定。分为内嵌flash启动模式(正常启动模式)、内存启动模式、rom启动模式
启动方式与引脚高低电平的对应关系如下,芯片复位的四个时钟周期内会去读取boot0和boot1引脚的电平情况确定芯片的运行
模式。
boot0=0,boot1=x ----------------内嵌flash启动模式
boot0=1,boot1=1 ----------------内存启动模式
boot0=1,boot1=0----------------rom启动模式(串口isp下载程序)
2.串口isp下载方式
isp串口下载HEX程序步骤
1)设置boot0=1,boot1=0
2)使用mcuisp或者flashloader下载程序到内嵌flash
3)设置boot0=0,boot1=0即可实现程序的运行
3. jtag-swd下载方式
用到的引脚 JTMS、JTCK、VCC、GND实现程序的下载与调试,具体的设置有待研究|
这是个引脚与jlink的接线对应如下
JTMS--TMS/SWDIO
JTCK--TCK/SWCLK
VCC GND为整个板子提供电源
------------------------------------------华丽的分割线------------------------------
STM32的三种编程下载方式
J-link几乎可以调试所有的arm芯片,不得不说是个好东东。这里记录三种stm32的下载程序方式:
1.J-Flash下载(需要用到J-link)
2.MDK配置下载(需要用到J-link)
3.ISP下载(串口下载,需要用到官配http://www.segger.com/cms/jlink.html下载最新驱动。
打开运行,首先配置cpu对应开发板的cpu,
将开发板与J-link连接到电脑上,然后连接
连接成功如下图所示:
然后选择要下载的hex文件,快捷键ctrl+O(或者file/open)打开,选择文件。
然后选择Target/Auto自动烧录。(有时候比较奇怪,一次不能成功,这时候需要手动重新烧录,Target/Erase chip-->Target/Erase sectors-->Target/Program && verify).
OK,烧录成功。
----------------------------------------------------------------------------------------------
2.MDK配置下载,即在MDK中在线调试下载。首先确保j-link驱动已经安装成功。剩下的工作只是设置一下MDK即可。
其实也可以选择J-LINK/J-TRACE的。
点击setting开始设置。
点击add,选择cpu。
OK,可以在线调试and下载了:
----------------------------------------------------------------------------------------------
3.ISP下载(串口下载)
(1)下载软件Flash_Loader_Demonstrator_V1.3_Setup.exe,一路next安装即可。注意:版本为1.3版本的,我试了2.1版本的,无法连接成功。
根据提示:设置启动模式,设置BOOT0=1,BOOT1=0,然后重启系统。在连接。下面不说话,直接看图。
(2)用STMISP.EXE下载,STMISP.EXE是一个STM32的ISP应用程序
STMISP.rar
接着不说话,直接上图。
上一篇:STM32串口一键下载电路
下一篇:STM32的ISP升级详解
史海拾趣
|
SystemC一套将C++扩展为硬件描述语言的Class Library 注:转牛人04年的贴 这几日接接触SystemC,有些感触: 1. SystemC 是一套C++ Class Library,将C++扩展成了一门硬件描述语言(HDL)。我感觉,学习SystemC至少要懂两样东西:C++、一门硬件描述语言。我熟悉C++,并且熟悉Verilog,因此学SystemC能举一反三、触类旁通。 ...… 查看全部问答> |
|
在公共场合如卫生间内,你很少会见到有提供肥皂洗手的,毕竟与多人共用一块肥皂那是件很让人难以接受的事情。设计师WooJae Lee等想了个办法,带来了这个液体肥皂机:Re-Bubble。只需将肥皂从顶部像投币一样投进去,经过机器操作,管道里就存满了泡 ...… 查看全部问答> |
|
使用V5时将一个普通的IO当作全局时钟使用了,结果在MAP时,发生错误:ERROR:Place:645 - A clock IOB clock component is not placed at an optimal clock,改了系统的环境变量,加BUFG都无法解决,请问该如何解决?主程序如下: module ad_uart ...… 查看全部问答> |
|
上周就已经把CAN通讯调通了,不管是查询模式还是中断模式都跑的很好,这周给板子加了个UCOS,2.86版本的。然后把CAN通讯加上去,CAN数据死活发不出来。用lookback模式自测,发现可以收到自己发出去的数据,但是用示波器测试发送脚,就是没见到 ...… 查看全部问答> |






























