智能车制作

标题: K60中断向量表 [打印本页]

作者: 风456    时间: 2015-3-15 20:12
标题: K60中断向量表
[attach]75119[/attach]
请问各位大神,这中断向量表要怎么使用?比如UART4的中断函数只能选69号或70号,还是可以随便选?

作者: sky兰    时间: 2015-3-15 20:41
中断向量表有对应的中断!里面有其对应的文件,你好好找找,应该能找到!  K60定义了中断向量和中断函数,要是开了中断,它就自己进入中断向量函数里面去执行了!
作者: zhou1994    时间: 2015-3-15 23:14
如果可以随便选,这个表存在的意义是什么?
作者: 素衣叹风尘    时间: 2015-3-16 08:55
可以改
作者: 青龙00    时间: 2015-3-16 13:02
这个是将所有的中断都指向default_isr,即:默认所有的中断发生都去void default_isr()函数中去执行。
中断发生肯定是有中断事件的,比如你说的VECTOR_069 串口的状态中断事件入口,VECTOR_070是串口传输错误事件入口。
你要写中断函数的话,需要先将你用到的中断向量取消指向default_isr,让它指到你写的中断函数名
作者: 暗光    时间: 2015-3-16 13:29
青龙00 发表于 2015-3-16 13:02
这个是将所有的中断都指向default_isr,即:默认所有的中断发生都去void default_isr()函数中去执行。
中断 ...

直接把后面的名字替换成我的中断函数就可以了吗?

作者: 青龙00    时间: 2015-3-16 17:51
暗光 发表于 2015-3-16 13:29
直接把后面的名字替换成我的中断函数就可以了吗?

1.取消中断向量指向,让它指到你需要的中断函数2.外部声明
3.写中断函数
例如:
就像你说的可以在vectors.h文件中替代,并且在前面extern声明,最后在.c文件中写你的中断函数
也可以用下面方法:
在isr.h文件中修改:
  一:
  #undef  VECTOR_084
  #define VECTOR_084    Pit0_Interrupt

  二:
extern void Pit0_Interrupt();
三:
在isr.c或者main.c文件中写你的中断函数
void Pit0_Interrupt()
{
     ;
}


作者: 暗光    时间: 2015-3-16 18:39
青龙00 发表于 2015-3-16 17:51
1.取消中断向量指向,让它指到你需要的中断函数2.外部声明
3.写中断函数
例如:

谢谢,原来一直不懂他们的对应关系。现在明白了
作者: 雨钓    时间: 2015-3-16 22:29
学习了:lol
作者: O.T.W    时间: 2015-3-17 11:10
:victory::victory:
作者: sky兰    时间: 2015-3-17 11:53
青龙00 发表于 2015-3-16 17:51
1.取消中断向量指向,让它指到你需要的中断函数2.外部声明
3.写中断函数
例如:

赞一个!   以前只会用,现在也知道为什么了!

作者: 成哥带你飞    时间: 2016-3-30 18:01
这么调用啊
作者: 青龍月    时间: 2016-6-6 19:10
长知识了





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2