用KL05-SC文件夹下的自动生成工程工具的问题
我用它提供的工具,生成了很多文件,单片机是mkl05z32vfm4,打开生成的文件夹,将我的程序写了进去,配置中选择了单片机用j-link下载,进去,进行在线仿真,但是我发现在线仿真的这个指针在crt0.s文档下移动,并且是/*
* File: crt0.s
* Purpose: Lowest level routines for Kinetis.
*
* Notes:
*
*/
; AREA Crt0, CODE, READONLY ; name this block of code
SECTION .noinit : CODE
EXPORT__startup
__startup
LDR r0,=0 ; Initialize the GPRs
LDR r1,=0
LDR r2,=0
LDR r3,=0
LDR r4,=0
LDR r5,=0
LDR r6,=0
LDR r7,=0
CPSIE i ; Unmask interrupts
import start
BL start ; call the C code
__done
B __done
END
这个内容,当把所有的drive文件,和其他的文件都从工程中删除了后,就是做的一个led灯闪烁的程序,发现没问题,我想问问这是个什么问题。是在设置中需要改什么吗?
还有个问题是在配置中的Debugger中setup相的Run to main勾上后发生这个问题在各个文件中乱走,就是不执行main的函数,问题是我在main中并没有调用其他的函数,是我下进去的东西的路径错了,还是没有生成正确的文件来更新原来的文件??{:dizzy:} Henjay724 发表于 2013-11-21 12:40 static/image/common/back.gif
先不要勾选Run to main,调试看断点是不是停在crt0.s里,然后F11一步步走,跑到start()函数内,那里面最后 ...
这么说,你看是不是这样,我就想运行个led的闪烁的主函数,是不是还要改动下start.c里的内容?或者说每次建个新工程,还需要改动start.c中的内容? 本帖最后由 qqliyunpeng 于 2013-11-21 13:35 编辑
Henjay724 发表于 2013-11-21 13:22 static/image/common/back.gif
一般情况不需要改啊
、
start函数内一般如下:里面其实也没做什么事情。实质就是关了看门狗,配置系统时 ...
确实有问题呀,单步调试的时候出现http://www.amobbs.com/forum.php?mod=image&aid=153724&size=300x300&key=4e48d57bc65124f4ac2fb396a5ed5ae9&nocache=yes&type=fixnone,实在是想不明白,你说是不是可能我的这个自动生成的文件下载的有问题呢,本身他就不能顺畅的走到main函数中呢,还有我发现,我的start.c是这样的,跟你的稍有不同。
void start(void)
{
/* Disable the watchdog timer */
SIM_COPC = 0x00;
/* Copy any vector or data sections that need to be in RAM */
#ifndef CMSIS // If conforming to CMSIS, we do not need to perform this code
#ifndef BOOTLOADER
/* Copy any vector or data sections that need to be in RAM */
common_startup();
#endif
#endif
/* Perform processor initialization */
sysinit();
#ifndef BRIDGE_BOARD
#ifndef BOOTLOADER
//printf(" \r\n");
/* Determine the last cause(s) of reset */
outSRS();
/* Determine specific Kinetis device and revision */
cpu_identify();
#endif
#endif
#ifndef CMSIS // If conforming to CMSIS, we do not need to perform this code
/* Jump to main process */
main();
/* No actions to perform after this so wait forever */
while(1);
#endif
} 本帖最后由 qqliyunpeng 于 2013-11-21 14:02 编辑
Henjay724 发表于 2013-11-21 13:22 static/image/common/back.gif
一般情况不需要改啊
、
start函数内一般如下:里面其实也没做什么事情。实质就是关了看门狗,配置系统时 ...
我还想看看你的自动生成的sysinit.c的文件,我现在认为,可能这个有问题
在cpu文件夹下 经过一步一步的调试,我把串口uart0和貌似是是一些个外部中断什么的,给屏蔽掉了,调试成功了,只是我想可能如果加上别的一些,像uart或者i2c或者spi的时候可能就会有问题,还有生成的sysinit中的一些语句比如设置pin引脚的时钟打开什么的语句,我认为还是没有必要的,毕竟,如果我们开发,通常也是在外部设置的,只是,可能对于熟悉了这些个文件的人来说,用起来可能会方便些,但是如果这都熟悉了,可能自己建立个文件什么的,也就比阅读给的文件,然后去用它方便了些,或者,这是给我们提供了一种思路吧。谢谢楼上的回复,很专业,很给力,一下子知道了iar的使用方法和调试的步骤。。 qqliyunpeng 发表于 2013-11-21 14:22
经过一步一步的调试,我把串口uart0和貌似是是一些个外部中断什么的,给屏蔽掉了,调试成功了,只是我想可 ...
飞思卡尔的芯片要慢慢去跟他沟通,争不来,呵呵! wangpengcheng 发表于 2014-5-9 12:54
飞思卡尔的芯片要慢慢去跟他沟通,争不来,呵呵!
奥,飞思卡尔的服务到是挺耐心的,我还得到了一本书,看样子是真的在大力推广呢。
页:
[1]