标题: 中断函数为什么不用声明 [打印本页]

作者: 萤火之光    时间: 2018-8-17 09:48
标题: 中断函数为什么不用声明
中断函数为什么不用声明就直接使用了,是不是和void main() 一个地位了


作者: 726434632    时间: 2018-8-17 10:40
因为中断向量表里面已经声明了
作者: mrhan1992    时间: 2018-8-17 11:14
如果是STM32,那么中断函数的名称在启动文件中已经做了定义,在使用时,复制相应的中断函数名称,设置NVIC级别,然后实现中断内的操作就行了,中断发生的时候NVIC会自动把CPU拉到中断中去执行任务。
作者: naughty    时间: 2018-8-17 15:29
void init(); 是函数声明,和面的init();是调用该函数。
作者: CrlikenNN    时间: 2018-8-26 09:54
中断函数的名称在启动文件中已经做了定义
作者: sxhwdz    时间: 2018-8-26 12:16
函数声明也不是必须的,如果被调用的函数在前,调用的函数在后,编译时系统编译被调用函数时已有记录,后面调用时可以定位。反过来调用的函数在前,系统编译时不知道该函数,无法定位,所以必须在前面声明。中断函数除了中断向量外,不会被调用,系统只需根据函数后面的中断向量号,最后把定位填入该中断的中断向量表就可以了。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1