2618|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

DSP 中断配置的简单实例 [复制链接]

中断的配置是与PIE模块的响应机制完全对应的。
对外部中断 XINT1进行配置。
第一步:
基础的初始化之后,对PIE模块进行指定,一般在InitPieVectTable();PIE模块初始化之后进行指定。

void main(void)
{
 InitSysCtrl();
 DINT;
 InitPieCtrl();
 IER = 0x0000;
 IFR = 0x0000;
 InitPieVectTable();
 EALLOW;
 PieVectTable.XINT1 = &xint1_isr;
 EDIS;
}

第二步:
打开PIE模块的时钟,经过查询中断向量表知道,外部中断XINT1在使能在INT1.4,打开这个中断使能。

void main(void)
{
 InitSysCtrl();
 DINT;
 InitPieCtrl();
 IER = 0x0000;
 IFR = 0x0000;
 InitPieVectTable();

EALLOW;
PieVectTable.XINT1 = &xint1_isr;   //赋予中断地址
EDIS;
 
IER |= M_INT1;                                   //全局使能INT1
PieCtrlRegs.PIEIER1.bit.INTx4 = 1;     //使能INT1.4
EINT;
ERTM;
 
}

当时我疑惑这个PIEIFR标志位置1去哪里了,其实中断响应的时候它是自动置1的。我们只要开使能使他能够顺利通过就好。
第三步:
就是在我们的中断里面写函数,并在中断里面清楚中断响应标志位PIEACK。

interrupt void xint1_isr(void)
  {
 Xint1Count++;
 GpioDataRegs.GPACLEAR.all = 0x4; 
 PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
  }

 

点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表