f28035的HRCAP按如下代码写好怎么只能进一次中断,为什么?

[复制链接]
2389|5
 楼主| Alisa_song 发表于 2014-1-20 22:48 | 显示全部楼层 |阅读模式
初始化函数:
void sInitHRcap(void)         //add at 16:40 of 2014.1.16
{
        EALLOW;
        HRCap1Regs.HCCTL.bit.SOFTRESET = 1;
        HRCap1Regs.HCCTL.bit.HCCAPCLKSEL = 1;  //HCCAPCLK = PLLCLK = SYSCLK * 2
        HRCap1Regs.HCCTL.bit.FALLINTE = 1;     //Enable falling edge capture event interrupt
        HRCap1Regs.HCCTL.bit.RISEINTE = 0;     //Disable Rising Edge Capture Event Interrupt
        HRCap1Regs.HCCTL.bit.OVFINTE = 0;      //Disable interrupt on 16-bit Counter Overflow Event
        EDIS;
}
中断函数:
interrupt void HRCAP1_INT_ISR(void)
{
        GpioDataRegs.GPATOGGLE.bit.GPIO6 = 1;  //add at 22:30 of 2014.1.16
        EALLOW;
        HRCap1Regs.HCICLR.bit.FALL=1;  // Clear RISE/FALL flags
        //        HRCap1Regs.HCICLR.bit.RISE=1;
    HRCap1Regs.HCICLR.bit.INT=1;   // Clear HRCAP interrupt flag
        PieCtrlRegs.PIEACK.bit.ACK4=1; // Acknowledge PIE Group 4 interrupts.
    EDIS;
        // Acknowledge this interrupt to receive more interrupts from group 2
        PieCtrlRegs.PIEACK.all = PIEACK_GROUP4;
}
运行仿真只能进入一次中断,而且不易进入,求高手指点,谢谢!
smilingangel 发表于 2014-1-21 21:40 | 显示全部楼层
进入一次中断后需要清楚相关的中断标志位的呀
smilingangel 发表于 2014-1-21 21:41 | 显示全部楼层
软件清除,清除一次为下次做好准备得

评分

参与人数 1威望 +1 收起 理由
Alisa_song + 1 很给力!

查看全部评分

angerbird 发表于 2014-1-25 14:44 | 显示全部楼层
查看下你的中断标志的是否清除及时的吧
 楼主| Alisa_song 发表于 2014-2-6 20:26 | 显示全部楼层
好的,谢谢!
jxlgxtutianya 发表于 2020-5-11 14:00 | 显示全部楼层
F28035的中断里面,怎么没有发现HRCAP的中断号,哪位知道的,求指教
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

94

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部