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

本文介绍了参与飞思卡尔智能车竞赛时遇到的单片机中断处理问题。重点讲解了中断函数的声明方式,包括#pragma指令用于将中断函数置于非分页区,以及如何使用中断号和中断函数名。同时,文中提到了中断向量表及其在MC9S12XS128.h头文件中的定义。
摘要由CSDN通过智能技术生成

  参加飞思卡尔比赛。

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

 

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

 

 我得累了。

 

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

 

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

  

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


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

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

 

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值