打印

NIOS IO口边沿中断的问题

[复制链接]
2253|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangjun403|  楼主 | 2011-10-15 16:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SOPC里已经正确设置
 
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
#include <stdio.h>
#include <sys/alt_irq.h>
#define mLED_OUT_BASE           LED_OUT_BASE
#define mINPUTSIGNAL_BASE       INPUTSIGNAL_BASE

int main (void) __attribute__ ((weak, alias ("alt_main")));
void        Initialize();
void        Ext_interrupts(void* context, alt_u32 id);

volatile alt_u32    flag = 0;
void alt_main (void)
{
//   void        *context;
   
//   alt_irq_register(INPUTSIGNAL_IRQ,context,Ext_interrupts);               //注册中断函数
   
    Initialize();
   
    while(1)
    {
        
        if(flag == 1)
        {
              ……;
        }
    }
   
}
void Initialize()
{
    IOWR_ALTERA_AVALON_PIO_IRQ_MASK(mINPUTSIGNAL_BASE, 0x01);               //允许IO中断
    IOWR_ALTERA_AVALON_PIO_EDGE_CAP(mINPUTSIGNAL_BASE, 0x00);               //清中断捕获寄存器
    alt_irq_register(INPUTSIGNAL_IRQ,NULL,Ext_interrupts);               //注册中断函数
}


void       Ext_interrupts(void* context, alt_u32 id)
{
    IOWR_ALTERA_AVALON_PIO_EDGE_CAP(mINPUTSIGNAL_BASE, 0x00);               //清中断捕获寄存器   
    flag = 1;
}


请帮我看下上面的代码有上面问题?为什么进不了中断函数?

非常急,麻烦各位了

相关帖子

沙发
lwq030736| | 2011-10-15 21:22 | 只看该作者
确定SOPC里的都配置对了吗

使用特权

评论回复
板凳
wangjun403|  楼主 | 2011-10-16 17:01 | 只看该作者
肯定对的

使用特权

评论回复
地板
shuhao125| | 2011-11-2 16:33 | 只看该作者
头文件是不是要包含这个:#include "altera_avalon_timer_regs.h"

使用特权

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

本版积分规则

个人签名:数学才不是浮云

0

主题

629

帖子

1

粉丝