目录
实验过程
硬件设计见博主上篇博客
软件部分设计
下面使用 Nios II Software Build Tools for Eclipse 来完成当前项目的软件开发。
启动 Nios II SBT
按照下图所示点击 Nios II Software Build Tools for Eclipse 打开 Nios II SBT for Eclipse
(2)启动 Workspace 选择当前的项目目录,点 OK。
II SBT for Eclipse 主界面
创建工程
(1)建立新的软件应用,如下图所示:
(2)点击后出现下图,在"SOPC Information File name"窗口中选择 kernel.sopcinfo 文件,以便将生成硬件配置信息和软件应用关联,CPU 栏会自动选择"CPU"。在"Project name"输入"hello_world,"Project template"选择 Hello_World。点击 Finish。
修改程序
在 hell_word.c 里修改流水灯控制程序。
#include "system.h"
#include "altera_avalon_pio_regs.h"
#include "alt_types.h"
const alt_u8
led_data[8]={0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xFF};
int main (void)
{
int count=0;
alt_u8 led;
volatile int i;
while (1)
{ if (count==7)
{count=0;}
else
{count++;}
led=led_data[count];
IOWR_ALTERA_AVALON_PIO_DATA(PIO_LED_BASE, led);
i = 0;
while (i<500000)
i++;
}
return 0;
}
编译工程
右键单击项目名称,在弹出的菜单中选择 Build Project,如下图所示
编译无误即可
运行项目
1)配置 FPGA
(1) 连接 JTAG 到开发板,确定 A.已正确安装驱动。B. 防火墙不会影响到 JTAG
的正常工作。最后给开发板上电。
(2) 如下图所示,启动 Quartus Prime Programmer。
(3) 如下图所示,添加下载文件。然后点击 Start 开始下载,下载成过后关闭,回到 Eclipse 主机面。
2)运行/调式程序
(1) 用户将运行程序来观察编译代码的执行。用户可以在目标硬件上或 Nios II 指
令集仿真器(ISS)上运行程序。本节实验只讲述在目标硬件上调试和运行程序。在 C/C++ Projects 视图中右击 hello_led_0 工程文件夹,然后在弹出的快捷菜单中选择 Run As→Nios II Hardware 运行程序,也可以在菜单栏中选择 Run →Run Configurations,如下图所示。
注意,在目标板上运行程序前,要确保 USB Blaster 下载电缆已经连接好,要保证已经使用硬件系统对 FPGA 完成配置,即完成第(1)步。
配置 Run Configurations,转到"Target Connection"标签栏,点击右侧的 Refresh Connections 将 USB-Blaster 加入,如下图所示。
效果实现
Apply 后,Run。下载完成后,可以看见 Console 里打印信息"hello from Nios
II!",如下图所示:
总结
本次实验通过实践收获了以下几个要点:
了解掌握了nios基本原理及作用
了解掌握了nios的简单使用方法及流程
掌握了eclips进行nios的编程
解决了编译NIOS2出现错误:make:[.mk] Error 1 或者 make: *** [*.elf] Error 1 解决方法见参考
学习 Quartus Prime 、Platform Designer、Nios II SBT 的基本操作;
初步了解 SOPC 的开发流程,基本掌握 Nios II 软核的定制方法;
掌握 Nios II 软件的开发流程,软件的基本调式方法
参考
Nios实验入门实践------用Nios软件编程方式完成LED流水灯显示并使用串口输出"Hello Nios-II"字符到笔记本电脑_de2-115开发板nios实现-CSDN博客