iar for arm 用jlink下程序 复位或掉电后为啥程序就不跑了 怎样设置才能让他掉电后可以再次运行程序???

iar for arm 用jlink下程序 复位或掉电后为啥程序就不跑了 怎样设置才能让他掉电后可以再次运行程序???,第1张

哪款ARM芯片?复位和掉电后不跑程序,估计是你的启动模式没有设置好。STM32启动模式 收藏

我们玩ARM9,一般都是在内存里调试程序,速度飞快。STM32下也可以这样,虽说现在的flash寿命已经很长了,但flash中调试烧录程序还是一个很慢的过程,有时候程序上一个小小的改动要花上几倍的时间下载代码,这确实是不能忍受的。

我们也可以在开发STM32时,在内存中调试程序。

{

STM32这颗Cortex-M3控制器,与其他许多ARM一样,提供了BOOT0和BOOT1两个管脚用于启动选择。

BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。

BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。(用于串口ISP)

BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试。

在芯片上电复位时,BOOT0和BOOT1两个管脚的状态将决定芯片从何处启动。

1.当BOOT0和BOOT1均设置为逻辑1时,系统将从内置SRAM中启动,这是代码内存调试的第一个条件。

}

经多次确认,BOOT0和BOOT1状态与内存中调试无直接联系

2.然后,我们需要在代码中设置正确的中断向量表位置。中断向量表通常被放置在用户程序的开始,所以flash中运行时,向量表位于0x08000000处,而当代码被放置在SRAM中运行时,他的位置就成了0x20000000。在初始化NVIC时,我们可以放置如下代码,定义向量表的位置

NVIC_SetVectorTable(0x20000000 , 0x0)

NVIC_SetVectorTable(0x08000000 , 0x0)

3. 在编译器中,要进行正确的设置。这里以IAR 5.4为例说明。

3.1. 工程选项中Linker项,Config选项卡中,指定Linker Configuration File为stm32f10x_ram.icf, 该文件在FWLIB安装包中可以获得,IAR4和5分别有不同的配置文件。

3.2. 同样是工程选项中Debug项,Download选项卡中,去掉所有钩子,不下载代码到flash

经过以上步骤,代码就可以在内存中调试,下载速度飞快,调试速度也比flash中快了不少!

软件:IAR 8.3

单片机:NXP的MK66FX1M0xxx18

下载器:ST-Link V2

如果你知道怎么配置只想看如何下载到flash直接跳转到“下载程序到Flash(发布用断电再上电不会丢程序:release)”

感谢浏览,本人第一篇博客,纪念 2020.8.14

下载前配置(config)

Project->options 或者 Alt+F7

提示:tools -> option 是配置软件的设置不是该工程的注意别弄错了

配置芯片型号:

点击右侧按钮更改具体芯片型号

设置下载器类型

点击红框标记的位置更改下载器类型

更改下载方式

点选

use flash loader(s)

选择正常的.board文件,因为k66和IAR自带的board文件已经不一样了所以要去下载另一个。

这里给出百度网盘地址: https://pan.baidu.com/s/1PV-m7DiJ5MQuy3-TzAQbKQ

 提取码:voiq

不要问为什么写的是K65。

配置下载器设置

在左侧找到你的下载器,点击,设置

因为我的是ST-Link/V2所以在选项改为…/V2然后为SWD

至此基本的东西设置完成,点ok确定设置。

这里给出讲swd和JTAG等的区别的文章https://blog.csdn.net/LEON1741/article/details/72846434

下载程序到ROM(调试用:debug)

配置完成后就可以看到菜单栏里有对应的下载器类别

在工程列表上显示的是–Debug 即调试模式,即下载到rom断电后程序会丢失

在工具栏看到六边形中间带向下的箭头的是–make 即生成(下载到单片机的程序文件)

检查完无错误后点红框中的绿色按钮(download and debug)可以下载到 rom并开始调试

tip:在debug模式下不能用project->download->download active application

正常配置完成后就是这个状态

下载程序到Flash(发布用断电再上电不会丢程序:release)

点击红框位置更改为–Release 即为发布模式 即下载到flash 断电程序不会丢失

tip:问题是要重新进行下载配置等等

配置完成后即可用那个download and debug 绿色按钮调试下载

或者用 Project ->Download ->Download active application 直接下载不调试

此时下载的文件断电后不会丢失,相比于下载到flash,debug模式下载速度更快,且可无限次下载,下载到flash,会对flash进行擦写,而flash会有擦写次数,且下载过程慢。

单片机

一体机电脑是什么意思

精选推荐

广告

IAR-8051-8.3破解文件(已测试,可用)

100下载·7评论

2015年2月6日

IAR 8.3以后的版本编译TI BLE Stack会报类似如下的错误

1296阅读·0评论·0点赞

2014年4月3日

IAR FLASH

41阅读·1评论·0点赞

2022年11月22日

【STM32F429开发板用户手册】第1章 初学STM32F429的准备工作

1754阅读·0评论·2点赞

2020年6月1日

Eclipse+IAR使用经验总结(持续更新)

1598阅读·1评论·2点赞

2020年7月10日

IAR8.3 STM8安装过程

273阅读·1评论·0点赞

2021年12月7日

长治月薪三四千,不如学理财,每天1小时,限时免费学

00:44

启牛学堂-0元学理财

广告

IAR(For STM32) 安装,配置,工程创建,下载,调试

7089阅读·0评论·9点赞

2020年7月21日

IAR下连仿真器可以正常运行,程序下载到flash部分功能异常

343阅读·0评论·0点赞

2021年7月5日

在IAR下通过Jlink将程序直接下载到Flash指定地址

573阅读·0评论·0点赞

2012年10月16日

IAR报错:FlashK60Fxxx128K.board丢失 K60断电丢程序

556阅读·0评论·0点赞

2019年10月17日

IAR8.3.2破解说明

9415阅读·0评论·8点赞

2019年5月30日

IAR8.3安装步骤

4890阅读·9评论·8点赞

2020年10月20日

IAR仿真失败:Execution failure in flash loader

2257阅读·0评论·0点赞

2020年12月4日

IAR一些配置

1358阅读·0评论·2点赞

2018年6月3日

IAR使用笔记

491阅读·0评论·0点赞

2018年12月22日

IAR 设置问题

4379阅读·0评论·5点赞

2018年11月30日

IAR的编译过程

1.7W阅读·0评论·1点赞

2012年3月2日

【STM32H7教程】第7章 STM32H7下载和调试方法(IAR8)

2013阅读·0评论·0点赞

2019年4月18日

IAR教程之IAR下载和调试

1.5W阅读·3评论·20点赞

2020年5月20日

去首页

看看更多热门内容

评论1

ctotalk

不错。

备用电池正常的话是不会丢失,但前提是电池电量未报警,但不要时间太长,以免电池亏电,而导致用户程序丢失,

建议不要把程序只保留在内存中,自然会丢失,如果写入了flashrom就不会出现丢失啦 。

另外断电程序里的数据丢失。若是数据丢失你可以设置断电保持功能,断电后程序自动停在断电时的状态,恢复后从断电出开始。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11196002.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存