今天调程序调了一个通宵。错误的提示是这个,
Fri Oct 21 07:18:35 2011: Target reset (没错,错误提示就是这么短,程序一烧进单片机里面,程序就跑飞了,一直没找到原因)
一直在找问题。
后来,通过一行一行地对照代码,发现几乎全部都是一样的。只是别人的程序是所有的设置都一股脑地放在一个函数里面。
而我把里面的设置分了类,然后分成几个函数,然后这几个函数再放进一个总的函数里面,这样程序比较有条理一点。
但是,这样居然就错误了。然后我也像别人一样把函数里面的东西都拿出来全部放进一个函数里面,然后就可以通过了。
我想可能是哪里有一点点不同吧,然后又认真看了很久,试了很久,还是没发现什么,反正是拿出函数外面就可以正常执行,
而放进一个比较小的函数里面就提示出错。后来甚至是以为编译器没做好。
然后就想将就一下好了,还是早点睡觉吧,所以我把所有函数都拆了堆在一起,然后就可以了。
后来想上网放松一下的时候,搜了一下这个错误,然后发现出现这个错误的人挺多的,但都是伴随着很多别的的错误。
后来发现有人说解决了问题。其实就是把设置好你的STM32的flash的位置和SRAM的位置
比如我的是RB型号的单片机,所以就设置为ROM 0x08000000~ 0x0801FFFF RAM 0x20000000 ~ 0x20004FFF
然后我再把我原来的函数慢慢地组装回去,然后就一点问题都没有了。
唉!最后总结就是,其实很多问题可能就会出现在你觉得没什么大不了的地方。以前觉得那个地方的参数设不设都一样能够写程序并烧进去,
等到遇到问题了居然调了一个晚上,唉,真狼狈啊!!~~
关键字:IAR JLINK STM32程序 Target reset
引用地址:
关于IAR 里面用JLINK烧写STM32程序的Target reset 错误
推荐阅读最新更新时间:2024-03-16 16:20
全新 IAR Embedded Workbench for RISC-V 支持 Andes CoDense™扩展
IAR Embedded Workbench for RISC-V 3.11 版支持 AndeStar™ V5 RISC-V 处理器的 Andes CoDense™ 扩展,以帮助嵌入式开发人员缩减代码尺寸、提高应用性能 瑞典乌普萨拉 - 2022 年 11 月 17 日 - 嵌入式开发软件和服务的全球领导者 IAR Systems® 宣布其最新版本的 IAR Embedded Workbench for RISC-V 3.11版现已完全支持 Andes Technology(晶心科技)旗下 AndeStar™ V5 RISC-V 处理器的 CoDense™ 扩展。CoDense™ 是处理器 ISA(指令集架构)的专利扩展,能够
[嵌入式]
如何解决STM32芯片Flash写保护导致无法下载程序,无法在线调试的问题
本文介绍了如何解决STM32芯片Flash写保护导致无法下载程序,无法在线调试的问题;如果您遇到相同的问题,希望本文可以带来一些帮助; 1 FLASH的写保护 如果对Flash设置了写保护,那就无法对Flash进行编程和擦除。 在开发STM32的时候,如果出现这种情况,通常仿真器都支持对Flash进行解锁,像jlink,stlink等仿真器都支持这个功能。 2 错误提示 在使用MDK进行调试的时候,出现报错 ==Flash Timeout.Reset Target and try it again==,具体如下图所示; 折腾了一番之后,并没有解决问题,因为使用的仿真器是stlink,因此下载了stlink utilit
[单片机]
AVR单片机IAR AVR C语言中断编程
一、AVRmega16中断向量表 向量号 程序地址 中断源 描述 IAR AVR中的定义 1 000 RESET 外部引脚电平引发的复位,上电复位,掉电检测复位,看门狗复位,以及JTAG AVR 复位 RESET_vect 2 002 INT0 外部中断请求0 INT0_vect 3 004 INT1 外部中断请求1 INT1_vect 4 006 TIMER2 COMP 定时器/计数 2 比较匹配 TIMER2_COMP_vect 5 008 TIMER2 OVF 定时器/计数 2 溢出 TIMER2_OVF_vect 6 00A TIMER1 CAPT 定时器/计数 1事件捕捉 TIMER_ CAPT_vect 7 00C T
[单片机]
STM32 SST25VF016B驱动程序
///** // ****************************************************************************** // * @file stm32f10x_SST25VF016B.c // * @brief SST25VF10B驱动程序 // ****************************************************************************** // * @ // * 接口定义(STM32 SPI1) // * CE--PA4 SO--PA6 SCK--PA5 SI--PA7 // * // *
[单片机]
STM32开发笔记41: 移植FreeRTOS程序后,编译报错的解决方法
单片机型号:STM32F070F6P6 项目希望使用FreeRTOS操作系统,将其移植到自己的工程中后,编译保存,如下图所示。 这个问题,我在https://blog.csdn.net/qingwufeiyang12346/article/details/79782075日志中已经介绍过,在这次移植的开始时,也希望仍然采用原先的方法加以解决,但是涉及到的语句非常多,更改起来非常麻烦。解决这个问题的另外一种方法是,去除CPP11编译,但如果这样就不能使用C++语言。所以还需使用静态库的方法加以解决,具体的就是将FreeRTOS涉及到的所有源文件,去除CPP11编译后,用C99编译为静态库,与其它C++写的程序进行链接使
[单片机]
如何利用IAR For MSP430自带的库建立属于自己的工程
1、在D盘建立一个LEDTest的文件夹,找到“..430examplesdriverlibdriverlib”路径下的“MSP430FR5xx_6xx”库文件夹。“MSP430FR5xx_6xx”文件夹就是MSP430FR5xx_6xx系列的库文件了,IAR For MSP430上是有的,如果找不到可以参考“如何利用官方例程进行MSP430FR5969快速开发”帖子建立并保存一个库例程,在这个库例程里面就可以找到“MSP430FR5xx_6xx”文件夹了。 把“MSP430FR5xx_6xx”整个文件夹拷贝到D盘的LEDTest文件夹里面。 2、双击桌面的 IAR 6.10.7图标,打开IAR 软件,依次点击“File
[单片机]
STM32开发笔记11: 在Keil中使用C++进行程序设计
单片机型号:STM32F030R8 希望在Keil中使用C++进行程序设计,开始时,总是报错,经过仔细分析,原因时Keil在默认情况下不支持C++进行程序设计。本文将介绍在Keil中使用C++进行程序设计的方法。 1、在Keil中使用C++进行程序设计,首先需要系统支持,如下图所示。 2、建立类,需要2个文件,cpp和hpp,在hpp中对类进行描述,在cpp中完成函数实现。 依循上述方法就可以使用C++进行程序设计了。
[单片机]