打印

在ucos中,定义中断的问题

[复制链接]
2395|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jubufangdian|  楼主 | 2010-10-23 13:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
你好,在ucos中,怎么定义中断啊
我想在例程uCOS_for_LandTiger(IAR)中
添加个外部中断EINT0(用按键激发),
但程序进入不了中断处理函数。
在工程目录bsp(板载资源)下有bsp_int.c
在bsp/  bsp_int.c中,好像定义了中断处理函数
void  BSP_IntHandlerRTC           (void)  { BSP_IntHandler(BSP_INT_SRC_NBR_RTC);           }
void  BSP_IntHandlerEINT0         (void)  { BSP_IntHandler(BSP_INT_SRC_NBR_EINT0);         }
static  void  BSP_IntHandler (CPU_DATA  int_id)
{
    CPU_FNCT_VOID  isr;
    CPU_SR_ALLOC();
    CPU_CRITICAL_ENTER();                                       /* Tell the OS that we are starting an ISR            */
    OSIntEnter();
    CPU_CRITICAL_EXIT();
      if (int_id < BSP_INT_SRC_NBR_MAX) {
        isr = BSP_IntVectTbl[int_id];
        if (isr != (CPU_FNCT_VOID)0) {
            isr();
        }
    }
    OSIntExit();                                                /* Tell the OS that we are leaving the ISR            */
}

但BSP_IntHandlerEINT0,仍然无法激发
请问,怎么才能进入中断处理啊!!
谢谢!!!
转自Tony嵌入式论坛,地址:http://www.cevx.com/bbs/thread-32047-1-1.html

相关帖子

沙发
qhuang| | 2010-10-24 09:27 | 只看该作者
你需要在你的NVIC_Configuration()函数中,配置好EINT0对应的IO口,同时需要使能EINT0中断,才可以啊。

使用特权

评论回复
板凳
ji_dan| | 2010-11-12 12:30 | 只看该作者
要在你的UC/OS任务中调用中断函数啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

22

帖子

1

粉丝