就在前一段时间,有人突然问我SysTick_Handler(void)这个定时器中断处理函数是怎么定义的?根据以往的经验,我感觉在底层应该会有一个类似于函数声明的东西的存在,但是往下跟程序的话,一直都没有找到相应的定义或者声明,那么究竟SysTick_Handler这个函数怎么来的呢?是不是可以人为的做修改呢?给我的第一感觉是,肯定是可以做修改的,毕竟只是一个 函数 的名字而已,于是就翻看LPC1114的数据手册,结合网上的一些参考文件,去理清楚到底是怎么回事。
那么还是非常容易找到SysTick_Handler()这个函数的位置的,如下图所示:
我们会发现,几乎所有的中断函数的名字都已经在这里写好了,所以我们有的时候在程序中使用的一些中断,都可以在这个地方进行查找。
那么,我们如果想要改变一个中断的名字,那么只需要在这里做下修改就可以了,在程序中再使用我们自己定义的中断的名字,但是结合实际的情况来考虑问题,如果我们修改了这些中断函数的名字的话,那么就会降低我们代码的可移植性,所以基本上我们在这里不建议大家做修改。