FSL_TICS_ZP 发表于 2014-1-10 15:09:24

【经验交流】KE02中断函数设置

本帖最后由 FSL_TICS_Robin 于 2014-7-18 14:15 编辑

      论坛中有个客户在KE02的官方例基础上,使用PIT模块且设置PIT定时器溢出中断,但当程序运行时,
发现程序并没有进入到PIT的中断程序中,通过代码跟踪得到程序一直运行vectors.c中的void default_isr(void);
不知道小伙伴们在使用中断时,有没有碰到相同的问题?其实问题发生的原因很简单,我们需要将中断函数与中断向量关联起来,
不然发生中断时就无法找到定义好的中断函数啊。
以IAR例程为例:





PS:本帖可从飞思卡尔版块置顶帖:飞思卡尔Kinetis资料大本营的飞思卡尔论坛支持小组【经验分享】帖汇总链接进入。

FSL_TICS_ZJJ 发表于 2014-1-10 15:46:01

来自飞思卡尔工程师的经验之贴,欢迎大家踊跃参与交流!

FSL_TICS_ZJJ 发表于 2014-2-17 21:39:24

顶起,供大家学习!

yuanbuqi 发表于 2015-9-17 20:41:22

楼主您好,我用官方的驱动库,移植到Keil平台的时候,vectors.c文件里面那个栈指针的向量的定义说没有标识,编译不通过。将vectors.c文件删除可以正常通过,不需要这个文件,自己写中断函数是否可以?

FSL_TICS_ZP 发表于 2015-9-18 09:33:29

yuanbuqi 发表于 2015-9-17 20:41
楼主您好,我用官方的驱动库,移植到Keil平台的时候,vectors.c文件里面那个栈指针的向量的定义说没有标识 ...

不可以啊,vectors.c中定义了中断向量的,如果没有,在isr.h中,重定义的中断向量如何找的到呢?
你是不是动了什么地方,一般来说很少有报错说跟中断向量有关的啊。

yuanbuqi 发表于 2015-9-19 21:55:37

没有,我重新定义中断函数是根据启动代码里面的定义的,测试过是可以跳到我定义的中断函数的,已经将vectors.c文件删除。我是自己新建一个工程的,将官方驱动库里历程的所有的代码复制到我自己新建的工程里面,编译显示有错误。

FSL_TICS_ZP 发表于 2015-9-22 08:59:10

yuanbuqi 发表于 2015-9-19 21:55
没有,我重新定义中断函数是根据启动代码里面的定义的,测试过是可以跳到我定义的中断函数的,已经将vector ...

如果你是采用官方的启动文件及步骤的话,里面有将vctor.c定义的中断拷贝到ram中的过程,我不知道你是怎么实现的。

yuanbuqi 发表于 2015-9-22 15:21:00

FSL_TICS_ZP 发表于 2015-9-22 08:59
如果你是采用官方的启动文件及步骤的话,里面有将vctor.c定义的中断拷贝到ram中的过程,我不知道你是怎么 ...


这个是有有vctor.c文件是编译的错误

yuanbuqi 发表于 2015-9-22 15:23:31

FSL_TICS_ZP 发表于 2015-9-22 08:59
如果你是采用官方的启动文件及步骤的话,里面有将vctor.c定义的中断拷贝到ram中的过程,我不知道你是怎么 ...


我自己新建工程包含的文件

我自己根据启动代码写的中断入口的函数
页: [1]
查看完整版本: 【经验交流】KE02中断函数设置