goblin 发表于 2006-4-4 09:59:32

IAR4.12A,好象是堆栈不够了,不知道为什么?高人帮看看。谢谢!!

今天做好了实验板,JTAG MKII连接正常。但是发现个怪事,下载进去程序后,128自己就开始运行了。在CSPY里必须点STOP才可以停下来。停下来后出现下面的提示:



Tue Apr 04 09:50:26 2006: AVR JTAGICE mkII, H/W version: 0x0000, S/W version: 0x0407 0x0414, Device id: 158863423

Tue Apr 04 09:50:26 2006: JTAG clock (approx): 98 KHz, Target voltage: 5.58 V, CPU: AT90CAN128

Tue Apr 04 09:50:28 2006: Loaded debugee: D:\AVR-09CAN\程序\Debug\Exe\CAN-USART.d90

Tue Apr 04 09:50:29 2006: Target reset

Tue Apr 04 09:50:34 2006: The stack 'CStack' is filled to 100% (32 bytes used out of 32). The warning threshold is set to 90%.

Tue Apr 04 09:50:34 2006: The stack 'RStack' is filled to 100% (320 bytes used out of 320). The warning threshold is set to 90%.

Tue Apr 04 09:50:34 2006: Failed to read one or more register values (busy).



然后,不可以进行单步跟踪调试。可是原先程序都很正常!怎么到实验板上好象堆栈就不够了呢?

跟硬件设置、RESET、或熔丝是不是有关系?同一块MCU啊!没有改什么东西,只是焊到了实验板上就这样了。高人帮看看。谢谢

goblin 发表于 2006-4-4 10:24:04

把D90文件用AVTSTUDIO掉入来调试,也跟上面一样,把RSTACK,CSTACK扩大了问题依然存在。是不是有可能把外部RAM跟激活了?

laoma 发表于 2006-4-4 10:32:48

在MKII的dowmload control只选择None项就可以了,不懂的不要乱选

这种问题可能是Allow download to RAM项引起的

goblin 发表于 2006-4-4 11:58:41

我没选哪个,基本是按照默认的设置做的。也没动什么环境!

开始我的板子没到货,我就自己搭了几根线(JTAG必须的4跟、电源、地),下载没问题,运行也正常,跑过流水灯之类的和USART1通讯程序。

    昨天板子来了,就把128焊到了板子上,下载也正常。但是,今天调试程序从C 的IDE点CSPY进DEBUG环境。一进就发现程序在运行了。要点BREAK终止。并且还不能单步运行。BREAK后就出现上面提示。



    多多指教!!谢谢

cnpollux 发表于 2006-11-17 01:57:40

表示关注!

zhoupxa 发表于 2006-11-17 16:51:29

请仔细设置项目的options。

weiyiqingdao 发表于 2008-4-29 16:46:49

Tue Apr 29 16:33:05 2008: AVR JTAG ICE, H/W version: 0xC0, S/W version: 0x7E, Device id: 3379568703
Tue Apr 29 16:33:05 2008: JTAG clock (approx): 99 KHz, Target voltage: 6.2 V, CPU: ATmega128
Tue Apr 29 16:33:08 2008: Loaded debugee: E:\11\新的程序\Debug\Exe\bao.d90
Tue Apr 29 16:33:08 2008: Target reset
Tue Apr 29 16:33:14 2008: Failed to read one or more register values (busy).
Tue Apr 29 16:33:18 2008: The maximum number of 4 OP-fetch breakpoints has been exceeded
Tue Apr 29 16:33:18 2008: Performance warning: Lack of breakpoints forces single-stepping.
Tue Apr 29 16:34:46 2008: The stack 'CStack' is filled to 90% (29 bytes used out of 32). The warning threshold is set to 90%.
Tue Apr 29 16:34:46 2008: The stack 'CStack' is filled to 90% (29 bytes used out of 32). The warning threshold is set to 90%.
我也遇到这样的情况了,不知哪位大侠指点一下啊!!!设置的都没问题,可是程序执行的时候就出这样的警告。我的外部SRAM数据无法读出来……

efengzu 发表于 2012-9-21 11:37:50

我的也是那样
不知道究竟是什么原因?
页: [1]
查看完整版本: IAR4.12A,好象是堆栈不够了,不知道为什么?高人帮看看。谢谢!!