新闻  |   论坛  |   博客  |   在线研讨会
IRQ0中断应用
johnliuzk | 2009-11-25 21:14:11    阅读:2924   发布文章

本文是学习SH7125中断应用的编程实现的一些理解,记录下来备查和分享。

1.         HEW自动生成的跟中断相关文件的说明

HEW自动生成的跟中断相关的文件有三个:vect.hintprg.cvecttbl.c

Vect.h

声明中断函数。

Intprg.c

中断函数的实现,在该文件需要编程人员对所需要的中断对应的函数进行填充,实现中断处理功能。

Vecttbl.c

将中断函数指针定位到中断向量中。

详细说明请参考文档rcj10j0045_shcum。中文版的。

 

通过HEW自动生成的文件,中断处理的应用就简化为两个步骤:初始化和找到中断处理函数实现。再此感受到HEW自动生成文件的强大。兴奋中……,比起当初用汇编写51,真是感慨颇多啊!

2.         IRQ0中断初始化

IRQ0的初始化主要有三个过程,在初始化的过程中,又一次感受到iodefine.h的强大,简单直观的设定very exciting.

a)         IRQ0端口模式设定

PFC.PACRL1.BIT.PA2MD = 3;

设定PA2端口为IRQ0的中断输入。

b)        中断模式设定

INTC.IRQCR.BIT.IRQ0S=0;

IRQ0有四种中断模式,即低电平、下降沿、上升沿和下降上升沿同时出发,分别对应的值为0123

c)        中断优先级设定

INTC.IPRA.BIT._IRQ0 = 9;

根据需要设定优先级。

d)        允许中断,very important.

set_imask(0);

调用此函数需要包含machine.h

 

至此,初始化过程完成。

3.         中断应用——利用按键实现的流水灯控制

最后提供学习IRQ0中断应用的工程,通过按键依次点亮6LED灯。同时可修改中断模式理解不同触发方式。

 

很高兴能和大家分享,欢迎大家讨论,共同进步!谢谢!

 



INTCApp.rar

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
嵌入式相关工作博客
推荐文章
最近访客