飞思卡尔智能车总结 之中断的处理方法

  参加飞思卡尔比赛。

  对于我这个学计算机软件的人,来写单片机的程序,还真的是由不少困难。最近一直在看freescale的程序规范,真的是很纠结。我全部的硬件编程经验不过是去年硬件小学期的vhdl程序,在试验箱上捣鼓捣鼓程序逻辑,就这点。本来就忘的差不多了,况且它与单片机的模式还有很多区别。所以啊``忍之,忍之,全当自我挑战了。

 

 机械部分和电路部分完成,接下来该做的软件调试和综合测试。

 

 我得累了。

 

  今天遇到了一个关于中断怎么写的问题,纠结了很久,总结一下:

 

    标准的程序段是这样的格式:

  

    一般是用上述方式声明中断函数。


   由于飞思卡尔16位单片机的中断向量是16位,所以中断函数只有被置于非分页区内才能被寻址到,这就是第一行的作用。
第二行中“VectorNumber_Vtimch7”是中断号,它是由文件“MC9S12XS128.h”中定义的宏,这个中断号在它的技术手册中找到,但是我建议你采用这种宏的形式,因为这个宏不容易出错,可读性较高,比如“VectorNumber_Vtimch7”即为定时器(TIM)通道7(CH7)所对应的中断号。中断函数名“ICU_Ch7Int”可任意取,没有影响。

由于单片机内部非分页区大小有限,非中断函数一般置于分页区内,最后一行即为此作用。

 

令:MC9S12XS128.h中的宏定义是这样的:

 


 

阅读更多

更多精彩内容