C6748中断配置 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3986|回复: 1
打印 上一主题 下一主题

C6748中断配置

[复制链接]

13

主题

30

帖子

190

积分

注册会员

Rank: 2

积分
190
跳转到指定楼层
楼主
发表于 2015-7-22 09:31:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在在使用c6748,发现程序一直在中断服务程序里面,没有跳出来,不知道中断配置是不是有问题????请工程师指点

中断配置如下:
void InterruptInit(void)
{
    // 初始化 DSP 中断控制器
    IntDSPINTCInit();

    IntGlobalEnable();

    GPIOIntTypeSet(SOC_GPIO_0_REGS, 8, 1);//设置0[7]为下降沿触发
    GPIOIntTypeSet(SOC_GPIO_0_REGS, 61, 1);//设置3[12]为下降沿触发


    // 使能 GPIO BANK 中断
    GPIOBankIntEnable(SOC_GPIO_0_REGS, 0);                  // USER0 KEY GPIO0
    GPIOBankIntEnable(SOC_GPIO_0_REGS, 3);


    IntEventMap(C674X_MASK_INT4,SYS_INT_GPIO_B0INT);//bank0对应中断号为65
    IntEventMap(C674X_MASK_INT5,SYS_INT_GPIO_B3INT);//bank3对应中断号为52

    // 使能中断
    IntEnable(C674X_MASK_INT4);
    IntEnable(C674X_MASK_INT5);
        
    // 注册中断服务函数
    IntRegister(C674X_MASK_INT4, Irq04_compute_freq_word);
    IntRegister(C674X_MASK_INT5, Irq05_navdata_gen);
}


中断服务程序如下:

void Irq05_navdata_gen(void)
{   



       // 禁用 GPIO BANK 3 中断
     GPIOBankIntDisable(SOC_GPIO_0_REGS, 3);
     IntEventClear(SYS_INT_GPIO_B3INT);


if(GPIOPinIntStatus(SOC_GPIO_0_REGS, 61))
{
        // 清除 GPIO3[12] 中断状态
        GPIOPinIntClear(SOC_GPIO_0_REGS, 61);

     /*中断服务程序*/

}
   

        // 使能 GPIO BANK 3中断
     GPIOBankIntEnable(SOC_GPIO_0_REGS, 3);

   
    return;
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
推荐
发表于 2015-7-22 09:36:37 | 只看该作者
return; 这句去掉
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-5-16 06:25 , Processed in 0.036145 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表