第一范文网 - 专业文章范例文档资料分享平台

nios - ii - 入门手册 - 图文

来源:用户分享 时间:2025/7/24 2:12:49 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

选择input ports only,点击next出现如下界面。

图中Generate IRQ为产生中断,即该端口具有中断的功能。Level 为中断的类型,电平中断Edge为边沿中断,选择电平中断,注意:电平中断默认是高电平有效,点击Finish。

接着再配置一个只输出的引脚来验证是否进入中断,配置方法和实验一的是相同的。接着自动分配基地址,中断优先级可手动修改。然后点击Generate生成软核。

接着在Quartus ii 中调用软核进行如下连接。

接着编译工程,并将未用到的端口设置为三态输入。设置方法见图3-1所示。分配引脚,再次编译工程,结束后将程序下载到fpga中。 打开Nios ii软件,按照实验1的步骤进行设置,打开软件以后将出现3-2所示的界面。首先编译工程,接着将在System.h中可以看见如下程序

#define INTRERR_NAME \ #define INTRERR_TYPE \ #define INTRERR_BASE 0x01001000 #define INTRERR_SPAN 16 #define INTRERR_IRQ 1

#define INTRERR_IRQ_INTERRUPT_CONTROLLER_ID 0 #define INTRERR_DO_TEST_BENCH_WIRING 0 #define INTRERR_DRIVEN_SIM_VALUE 0 #define INTRERR_HAS_TRI 0 #define INTRERR_HAS_OUT 0 #define INTRERR_HAS_IN 1 #define INTRERR_CAPTURE 0 #define INTRERR_DATA_WIDTH 1 #define INTRERR_RESET_VALUE 0 #define INTRERR_EDGE_TYPE \ #define INTRERR_IRQ_TYPE \

#define INTRERR_BIT_CLEARING_EDGE_REGISTER 0

可以看见INTRERR_IRQ 1与图4-1中所示的INTRERR的中断优先级一

样的,都为1。接下来讲解一下Nios ii的硬件中断,首先介绍一下与硬件中断相关的内容,让用户对 Nios ii 的硬件中断有一个概括性的了解。

ISR(Interrupt Service Routine)中断服务函数是为硬件中断服务的子程序。Nios ii处理器支持32 个硬件中断,每一个使能了的硬件中断都应该有一个ISR与之对应。

中断产生时,硬件中断处理器会根据检测到的有效中断级别,调用相应的 ISR为其中断服务。

要完成硬件中断工作,需要做两件事:

第一,注册中断函数ISR,它的原函数型如下所示: Int

alt_irq_register(alt_u32

id,

void*

context,

void(*handler)

(void*,alt_u32));

id:中断优先级,即所注册的ISR是为哪个中断优先级的中断服务的。中断优先级在 SOPC Builder 中分配的,如下图所示红圈标示。 中断的优先级可人为修改,0的优先级最高。

搜索更多关于: nios - ii - 入门手册 - 图文 的文档
nios - ii - 入门手册 - 图文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c8u3303acz628mwx144xa_11.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top