教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 资料大全 >

quartus2 8.1和nios2 学习调试过程入门

来源:网络收集 时间:2026-09-13
导读: quartus2 8.1和nios2 学习调试过程入门 一、Quartus II学习初步 1、新建工程 选怎file—New project Wizard… 如下图,输入文件夹名,工程名字,选择所用器件的名字,其他采用默认设置,建立一个名为paobiao的工程。 2、新建verilog文件 选择file—New—veri

quartus2 8.1和nios2 学习调试过程入门

一、Quartus II学习初步

1、新建工程

选怎file—New project Wizard…

如下图,输入文件夹名,工程名字,选择所用器件的名字,其他采用默认设置,建立一个名为paobiao的工程。

2、新建verilog文件

选择file—New—verilog HDL file,输入代码如下,并保存名字为paobiao.v,注意:文件的名字一定要和工程同名。

quartus2 8.1和nios2 学习调试过程入门

点击,上方分析综合按钮,检查有无语法错误,如果没有语法错误,点击pin planer,进行引脚分配。如下图,注意,引脚分配时,入CLK引脚,在location处点击并出入A16,将自动出现PIN_A16,选择变色即可。

quartus2 8.1和nios2 学习调试过程入门

3、编译,编译完成后,选择tools—progarma,连接上开发板,软件会自动搜索器件, 选择,paobiao.sof,并点击start,程序会下载到目标板上。下载完成后,就会看到数码管显示跑表了。

quartus2 8.1和nios2 学习调试过程入门

二、NIOS2入门

可以把NIOS2内核嵌入FPGA中,并且可以任意选择其他资源,如串口、SPI、I2c……这里只设计最小系统和串口。

建好一个工程,nios_ex2,新建一个方块/电路图文件,点击tools—SOPC Builder,输入nios的名字,这里取为nios2.

双击左侧栏中Nios2 processer,选择不同的NIOS2处理器。选择经济性(e) 然后选择JATG Debug MODES 选择Leave 1,这样选择可以进行调试。

然后选择onchip memory 如图示,大小设为40960字节

quartus2 8.1和nios2 学习调试过程入门

设置串口,名为uart_0,采取默认设置,115200,8位,1结束位,无奇偶校验。

设置GPIO,取名PIO_0,8位,输出。

然后在CPU处设置复位向量表和异常向量表位置为onchip memory 最后状态栏输出

Info: No errors or warnings.表示没有错误,然后点击“生成”,一段时间后,将IP核生成方块图。

在新建的BDF文件(方块图/电路图)处,点击查找器件

将生成的NIOS2添加到工程图中,并添加输入输出管脚

quartus2 8.1和nios2 学习调试过程入门

点击分析综合后,选择PIN Planer,按照电路分配管脚,然后编译,下载。

然后在SOPC Builder中点击NIOS 2 –nios2 IDE,启动nios2. 选择新建工程,选择NIos2 C/c++ 应用。

点击 NEXT,取工程名字,注意,页面中间选项PTF文件和CPU,一定是QUartus中生成的文件和CPU。

写代码如下

quartus2 8.1和nios2 学习调试过程入门

在hello_world_0处,右键,选择属性,C/C++ Builder,genral处选择优化级别Os。

在hello_world_0_syslib[]处,右键,选择属性,选择system libray,进行如下设置:stdin,stdout,stderr选择uart_0,即标准输入输出通过串口0.所有存储空间都选择为onchip memory。

quartus2 8.1和nios2 学习调试过程入门

目标板在下载到硬件配置文件sof文件后,编译,run即可在开发板上跑程序。

quartus2 8.1和nios2 学习调试过程入门

程序说明:system.h 中是对硬件资源的一些定义,如名字,基地址,

alt_types.h 是定义typedef uchar之类的关键字

#include <stdio.h> #include <string.h> #include "system.h"

#include "altera_avalon_pio_regs.h" #include "alt_types.h"

int main (void) {

alt_u8 led = 0x2; alt_u8 dir = 0; volatile int i; while (1) {

printf("hello world.\n"); if (led & 0x81) {

dir = (dir ^ 0x1); } if (dir) {

led = led >> 1; } else {

led = led << 1; }

IOWR_ALTERA_AVALON_PIO_DATA(PIO_0_BASE, led); i = 0;

while (i<1000000) i++; }

return 0; }

quartus2 8.1和nios2 学习调试过程入门

…… 此处隐藏:170字,全部文档内容请下载后查看。喜欢就下载吧 ……
quartus2 8.1和nios2 学习调试过程入门.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/2191710.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)